Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNIVERSIDADE FEDERAL DO RECÔNCAVO DA BAHIA CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS BACHARELADO EM CIÊNCIAS EXATAS E TECNOLÓGICAS DISCIPLINA: Processamento de Dados 2 DOCENTE: Frederico Jr. G. da Silveira Lista de Exercícios 1. Determine se cada uma das sentenças é verdadeira ou falsa. Se falsa, explique por quê. Suponha que a instrução using std::cout; é utilizada. a) Os comentários fazem com que o computador imprima o texto depois das // na tela quando o programa é executado. b) A seqüência de escape \n, quando tem sua saída gerada com cout e com o operador de inserção de fluxo, faz com que o cursor se posicione no começo da próxima linha na tela. c) Todas as variáveis devem ser declaradas antes de ser utilizadas. d) Todas as variáveis devem ser atribuídas a um tipo quando são declaradas. e) O C++ considera as variáveis number e NuMbEr idênticas. f) As declarações podem aparecer em quase qualquer lugar no corpo de uma função C++. g) O operador módulo (%) pode ser utilizado apenas com operandos inteiros. h) Os operadores aritméticos *, /, %, + e – têm o mesmo nível de precedência. i) Um programa C++ que imprime três linhas de saída deve conter três instruções que utilizam cout e o operador de inserção de fluxo. 2. Escreva uma única instrução C++ para realizar cada uma das seguintes tarefas (suponha que as declarações using não foram utilizadas): a) Solicite que o usuário insira um inteiro. Termine sua mensagem de solicitação com dois-pontos (:) seguido por um espaço e deixe o cursor posicionado depois do espaço. b) Leia um inteiro do usuário no teclado e armazene o valor inserido na variável do tipo inteiro age. c) Se a variável number não for igual a 7, imprima “A variável número é diferente de 7”. d) Imprima a mensagem “Este é um programa em C++” em uma linha. e) Imprima a mensagem “Este é um programa em C++” em duas linhas. Termine a primeira linha com C++. f) Imprima a mensagem “Este é um programa em C++” com cada palavra em uma linha separada. 3. Escreva uma instrução (ou comentário) para realizar cada uma das seguintes sentenças (assuma que as declarações using foram utilizadas): a) Determine se um programa calcula o produto de três inteiros. b) Declare as variáveis x, y, z e result como tipo int (em instruções separadas). c) Peça para o usuário inserir três inteiros. d) Leia três inteiros a partir do teclado e armazene-os nas variáveis x, y e z. e) Compute o produto dos três inteiros contidos nas variáveis x, y e z e atribua o resultado à variável result. f) Imprima “The product is: “ seguido pelo valor da variável result. g) Retorne um valor de main para indicar que o programa terminou com sucesso. 4. Utilizando as instruções que você escreveu no Exercício 3, escreva um programa completo que calcula e exibe o produto de três inteiros. Onde apropriado, adicionar comentários ao código. [Nota: Você precisará escrever as declarações using necessárias.] 5. Identifique e corrija os erros em cada uma das seguintes instruções (suponha que a instrução using std::cout; é utilizada): a) if ( c < 7 ); cout << “c is less than 7\n”; b) if ( c => 7 ) cout << “c is equal to or greater than 7\n”; 6. Escreva quatro instruções C++ diferentes que adicionam 1 à variável do tipo inteiro x. 7. Escreva instruções C++ para realizar cada uma das seguintes tarefas: a) Em uma instrução, atribua a soma do valor atual de x e y a z e pós-incremente o valor de x. b) Determine se o valor da variável count é maior que 10. Se for, imprima “Count é maior que 10”. c) Pré-decremente a variável x por 1, então subtraia o resultado da variável total. d) Calcule o resto após q ser dividido pelo divisor e atribua o resultado a q. Escreva essa instrução de duas maneiras diferentes. 8. Escreva instruções C++ para realizar cada uma das seguintes tarefas. a) Declare variáveis sum e x que serão de tipo int. b) Configure a variável x como 1. c) Configure a variável sum como 0. d) Adicione variável x à variável sum e atribua o resultado à variável sum. e) Imprima “A Soma é ” seguido pelo valor da variável sum. 9. Combine as instruções escritas no Exercício 8 em um programa em C++ que calcula e imprime a soma dos inteiros de 1 a 10. Utilize a estrutura while para fazer loop pelas instruções de cálculo e incremento. O loop deve terminar quando o valor de x se tornar 11. 10. Mostre os valores de cada variável depois que o cálculo é realizado. Assuma que quando cada instrução começa a executar, todas as variáveis têm o valor inteiro 5. a) product *= x++; b) quotient /= ++x; 11. Escreva instruções C++ únicas que realizem o seguinte: a) Insiram a variável de inteiro x com cin e >>. b) Insiram a variável de inteiro y com cin e >>. c) Configurem variável de inteiro i como 1. d) Configurem variável de inteiro power como 1. e) Multipliquem a variável power por x e atribuam o resultado a power. f) Pós-incrementem variável i por 1. g) Determinem se i é menor que ou igual a y. h) Realizem saída da variável de inteiro power com cout e <<. 12. Escreva um programa C++ que utiliza as instruções do Exercício 11 para calcular x elevado a y potência. O programa deve ter uma instrução de repetição while. 13. Identifique e corrija os erros em cada uma das seguintes: a) while ( c <= 5 ) { product *= c; c++; b) cin << value; c) if ( gender == 1 ) cout << “Woman” << endl; else; cout << “Man” << endl; 14. O que há de errado com a instrução de repetição while a seguir? while ( z >= 0 ) sum += z; 15. Determine se as seguintes afirmações são verdadeiras ou falsas. Se a resposta for falsa, explicar por quê. a) O caso default é requerido na instrução de seleção switch. b) A instrução break é requerida no caso-padrão de uma instrução de seleção switch para sair do switch adequadamente. c) A expressão ( x > y && a < b ) é true se a expressão x > y for true ou a expressão a < b for true. d) Uma expressão contendo o operador || é true se qualquer um ou ambos de seus operandos forem true. 16. Escreva uma instrução C++ ou um conjunto de instruções C++ para realizar cada uma das seguintes tarefas: a) Somar os inteiros ímpares entre 1 e 99 utilizando uma instrução for. Assumir que as variáveis de inteiro sum e count foram declaradas. b) Imprimir o valor 333.546372 em uma largura de campo de 15 caracteres com precisões de 1, 2 e 3. Imprimir cada número na mesma linha. Alinhar à esquerda cada número em seu campo. O que os três valores imprimem? c) Calcular o valor de 2,5 elevado à potência de 3 utilizando a função pow. Imprimir o resultado com uma precisão de 2. O que é impresso? d) Imprimir os inteiros de 1 a 20 utilizando um loop while e a variável de contador x. Assumir que a variável x foi declarada mas não foi inicializada. Imprimir somente 5 inteiros por linha. [Dica: Utilizar o cálculo x % 5. Quando o valor disso for 0, imprimir um caractere de nova linha; caso contrário, imprimir um caractere de tabulação.] e) Repetir o Exercício 16 (d) utilizando uma instrução for. 17. Localize o(s) erro(s) em cada um dos seguintes segmentos de código e explique como corrigi-lo(s). a) x = 1; while ( x <= 10 ); x++; } b) for ( y = .1; y != 1.0; y += .1 ) cout << y << endl; c) switch ( n ) { case 1: cout << “The number is 1” << endl; case 2: cout << “The number is 2” << endl; break; default: cout << “The number is not 1 or 2” << endl; break; } d) O seguinte código deve imprimir os valores 1 a 10. n = 1; while ( n < 10 ) cout << n++ << endl; 18. Localize o(s) erro(s) em cada um dos seguintes: a) For ( x = 100, x >= 1, x++ ) cout << x << endl; b) O seguinte código deve imprimir se o inteiro value for par ou ímpar: switch ( value % 2 ) { case 0:cout << “Even integer” << endl; case 1: cout << “Odd integer” << endl; } c) O código a seguir deve dar saída dos inteiros ímpares de 19 a 1: for ( x = 19; x >= 1; x += 2 ) cout << x << endl; d) O código seguinte deve dar saída dos inteiros pares de 2 a 100: counter = 2; do { cout << counter << endl; counter += 2; } While ( counter < 100 ); 19. Escreva um programa que utiliza uma instrução for para localizar o menor de vários inteiros. Assuma que o primeiro valor lido especifica o número de valores restantes e que o primeiro número não é um dos inteiros a ser comparado. 20. Escreva um programa que utiliza uma instrução for para calcular e imprimir o produto dos inteiros ímpares de 1 a 15. 21. Uma empresa de pedidos pelo correio vende cinco produtos diferentes cujos preços de varejo são: produto 1 — $ 2,98, produto 2 — $ 4,50, produto 3 — $ 9,98, produto 4 — $ 4,49 e produto 5 — $ 6,87. Escreva um programa que lê uma série de pares de números como mostrado a seguir: a) número de produto b) quantidade vendida Seu programa deve utilizar uma instrução switch para determinar o preço de varejo de cada produto. Seu programa deve calcular e exibir o valor de varejo total de todos os produtos vendidos. Utilize um loop controlado por sentinela para determinar quando o programa deve parar o loop e exibir os resultados finais. 22. Assuma i = 1, j = 2, k = 3 e m = 2. O que cada uma das seguintes instruções imprime? Os parênteses são necessários em cada caso? a) cout << ( i == 1 ) << endl; b) cout << ( j == 3 ) << endl; c) cout << ( i >= 1 && j < 4 ) << endl; d) cout << ( m <= 99 && k < m ) << endl; e) cout << ( j >= i || k == m ) << endl; f) cout << ( k + m < j || 3 - j >= k ) << endl; g) cout << ( !m ) << endl; h) cout << ( !( j - m ) ) << endl; i) cout << ( !( k > m ) ) << endl; 23. Identifique e corrija o(s) erro(s) em cada um dos seguintes: a) if ( age >= 65 ); cout << “Age is greater than or equal to 65” << endl; else cout << “Age is less than 65 << endl”; b) if ( age >= 65 ) cout << “Age is greater than or equal to 65” << endl; else; cout << “Age is less than 65 << endl”; c) int x = 1, total; while ( x <= 10 ) { total += x; x++; } d) While ( x <= 100 ) total += x; x++; e) while ( y > 0 ) { cout << y << endl; y++; } 24. O que o programa a seguir imprime? 25. O que o programa a seguir imprime? 26. Escreva um programa que lê o raio de um círculo (como um valor double) e calcula e imprime o diâmetro, a circunferência e a área. Utilize o valor 3,14159 para ℼ. 27. O que há de errado com a seguinte instrução? Forneça a instrução correta para realizar o que o programador provavelmente estava tentando fazer. cout << ++( x + y ); 28. O que o seguinte segmento de programa faz?
Compartilhar