Roteiro 2 – Estrutura Sequencial em C/C++ A estrutura sequencial na linguagem C/C++ #include <nome da biblioteca> int main(){ Bloco de comandos; } Bibliotecas são arquivos contendo várias funções que podem ser incorporadas aos programas escritos em C/C++. A diretiva # include faz com que o texto contido dentro da biblioteca especificada seja inserido no programa. As bibliotecas iostream e cstdlib permitem a utilização de diversos comandos de entrada e saída e funções básicas. A linguagem C/C++ é sensível a letras maiúsculas e minúsculas, ou seja, considera que letras maiúsculas são diferentes de minúsculas (por exemplo, a é diferente de A). Todos os comandos devem, obrigatoriamente, ser escritos com letras minúsculas. Declaração de variáveis int main(){ // declaração de variáveis int idade; float salario; char sexo; char nome[40]; } As variáveis são declaradas após a especificação de seus tipos (int, float ou char). C/C++ não possui tipo especial para armazenar cadeias de caracteres (strings). Comando de atribuição int main(){ int y, x, soma; // atribuição de valores y = 2; x = 3; soma = y + x; } Utilizado para atribuir valores ou operações a variáveis, sendo representado por = (sinal de igualdade). Comando de Entrada e Saída int main(){ // declaração de variáveis int num, x, soma; // comando de entrada (cin) Cout << "Digite um numero: "; //saída cin >> num; //entrada // atribuição de valores x = 3; soma = num + x; // comando de saída (cout) cout << "A soma dos numeros e: " << soma << "\n"; } Para entrada de dados em C/C++, o comando que será utilizado é o cin >>. Assim, com o comando (cin >> num; ) o valor digitado pelo usuário será armazenado na variável num. Para saída de dados em C/C++, o comando que será utilizado é o cout <<. Assim, com o comando (cout << "Digite um numero: ";)o texto Digite um número aparecerá na tela do computador para o usuário. Operadores e funções predefinidas A linguagem C/C++ possui alguns operadores e funções predefinidas destinadas a cálculos matemáticos e à manipulação de caracteres. Operadores matemáticos + Exemplo x+y - x–y * x*y / x/y % x%y ++ x ++ -- x-- Operadores de atribuição += -= *= /= %= Exemplo x+=y x–=y x*=y x/=y x%=y Comentário Soma o conteúdo de X e de Y. Subtrai o conteúdo de Y do conteúdo de X Multiplica o conteúdo de X pelo conteúdo de Y Obtém o quociente da divisão de X por Y Obtém o resto da divisão de X por Y Aumenta o conteúdo de X em uma unidade (é o mesmo que x = x + 1) Diminui o conteúdo de X em uma unidade (é o mesmo que x = x - 1) Comentário Equivale a X = X + Y. Equivale a X = X - Y. Equivale a X = X * Y. Equivale a X = X / Y. Equivale a X = X % Y. Expressões aritméticas A linguagem C/C++ possui algumas funções matemáticas prontas para serem usadas. Todas elas podem ser observadas detalhadamente na documentação da biblioteca math.h. Para se utilizar as funções dessa biblioteca deve-se adicionar a cláusula: #include <math.h>. Algumas das funções disponíveis nessa biblioteca são: Função abs(i) ceil(d) cos(d) floor(d) log(d) pow(d1, d2) rand() sin(d) sqrt(d) tan(d) Finalidade Retorna o valor absoluto de i. Arredonda para cima, para o próximo valor inteiro maior que d. Retorna o cosseno de d. Arredonda para baixo, para o próximo valor inteiro menor que d. Calcula o logaritmo neperiano log(d). Retorna d1 elevado a d2. Retorna um inteiro positivo aleatório. Retorna o seno de d. Retorna a raiz quadrada de d. Retorna a tangente de d. As funções acima que possuem retorno, devem ser usadas com cuidado, e precisam de uma variável para receber esse retorno conforme exemplo: potencia = pow b,2); No exemplo a variável potencia vai receber o retorno da função pow. Essa função vai retorna o resultado de b2. O programa abaixo calcula a hipotenusa de um triângulo retângulo, dados os seus catetos, pelo Teorema de Pitágoras. /* Programador:<Nome> Descricao: Calcula a hipotenusa de um triangulo retângulo dados os seus catetos. Entrada: Catetos b e c de um triângulo retângulo. Saida: Hipotenusa a de um triângulo retângulo. */ #include <iostream.h> #include <math.h> int main(){ float a , b , c; cout<<"\n Digite o valor de b: "; cin>>b; cout<<"\n Digite o valor de c: "; cin>>c; a = sqrt ( pow(b,2) + pow(c,2) ) ; cout << "\n O valor da hipotenusa e: "<< a; cout<< "\n"; system("PAUSE"); } Digite e compile o código fonte do exemplo acima. Observe o uso das funções matemáticas usadas no exemplo. Use para o exemplo os seguintes valores b = 4 e c = 3. Exercícios 1) Considere a equação do segundo grau. Escreva um algoritmo (fluxograma), em seguida, um programa em C/C++ que encontre as raízes de uma equação do segundo grau dados os coeficientes a, b e c. O usuário deverá obrigatoriamente entrar com os coeficientes a, b e c. Mostre na tela para o usuário as raízes da equação. Os valores de x1 e x2 deverão ser exibidos alinhados, um embaixo do outro. Por exemplo: x1: 1 x2: 0 2) Escreva um programa em C/C++ para ler três números inteiros do teclado. A saída na tela deve ser o primeiro número ao cubo, o triplo do segundo número e a raiz quadrada do terceiro número. 3) Escreva um programa em C/C++ para calcular a área de um trapézio. O programa deve ler do teclado o valor da base menor, base maior e a altura. Em seguida imprimir na tela o valor da área do trapézio. 4) Escreva um programa em C/C++ que receba o preço de um produto, calcule e mostre os novos preços de acordo com as duas situações abaixo: o preço do produto com um desconto de 10% o preço do produto com um aumento de 20%