Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Questão Marque a opção correta. Considere o trecho de programa feito abaixo em C++. O que é impresso na tela ? int conta, num = 1, prod = 1; for (conta = 4; conta > 0; conta--) { prod = prod *num; num++; } cout << "Prod = " << prod << " num = " << num << endl; Prod = 6 num = 5 Prod não pode ser calculado e num assumirá o valor final 5. Prod = 24 num = 5 Prod = 1 num = 2 Prod = 2 num = 3 Prod = 6 num = 4 Prod = 24 num = 5 Prod = 6 num = 4 Respondido em 13/04/2021 21:55:23 Explicação: Analisando o trecho e fazendo em seguida um teste de mesa : int conta, num = 1, prod = 1; for (conta = 4; conta > 0; conta--) { prod = prod *num; num++; } cout << "Prod = " << prod << " num = " << num << endl; TESTE de mesa : conta conta > 0 num prod 4 4 > 0 ? sim 1 1 3 3 > 0 ? sim 2 1 2 2 > 0 ? sim 3 2 1 1 > 0 ? sim 4 6 0 0 > 0 ? FAlso 5 24 Terminando o for, será impresso : Prod = 24 num = 5 2 Questão Marque a opção correta. Considere o trecho de programa feito em C++. O valor final de s e o valor final de num, são respectivamente: int conta, num=1, s=0; for(conta = 10; conta < = 40; conta= conta+10){ s= s+num; num= num +2; } 50 e 9 9 e 9 50 e 16 16 e 9 o valor de s está indefinido e o valor de num é 7 Respondido em 13/04/2021 21:55:39 Explicação: Acompanhe o teste de mesa : num s conta conta <= 10 ? 1 0 10 sim 3 1 20 sim 5 4 30 sim 7 9 40 sim 9 16 50 não Logo, s vale 16 e num vale 9 3 Questão Se você desejasse escrever um programa em C++ que recebesse um número qualquer e exibisse a sua tabuada, precisaria da seguinte repetição: para (cont=0;cont<=10;cont++) { escreva(num," x ",cont," = ",cont*cont,"\n")} para (cont=0;cont<=10;num++) { escreva(num," x ",cont," = ",num*num,"\n")} para (cont=0;cont<=10;cont++) { escreva(num," x ",cont," = ",num*cont,"\n")} para (cont=10;cont<=0;cont++) { escreva(num," x ",cont," = ",num*5,"\n")} para (cont=10;cont<=0;cont--) { escreva(num," x ",cont," = ",num*cont,"\n")} Respondido em 13/04/2021 21:55:45 4 Questão O que o trecho de programa em C++ abaixo imprime na tela ? int y; for (y = 5; y > 0; y--) if (y % 2 == 0) cout << y - 1 << " "; else cout << y + 1 << " "; 6 3 4 1 1 6 3 4 1 2 6 5 3 2 1 5 6 3 2 1 5 4 3 2 1 Respondido em 13/04/2021 21:55:50 Explicação: FAzer teste de mesa. A cada rodada do loop atribuir um valor a y e testar se o valor de y é par. Se for par, deverá ser impresso o valor do antecessor de y. Caso contrário, deverá ser impresso o valor do sucessor de y. 5 Questão Qual dos comandos abaixo está escrito de forma errada? for (X < 10 ; X=0 ; X++) for (X=0 ; X < 10 ; X++) for (X=0 , Y=4 ; X < 10 ; X++ , Y--) for (X=0 , Y=0 ; X < 10 ; X++ , Y=Y+2) for (X=10 ; X > 0 ; X--) Respondido em 13/04/2021 21:55:56 Explicação: Está correto. Temos a inicialização, o teste e a parte do incremento for (X=0 ; X < 10 ; X++) Está correto. Temos duas inicializações separadas por vírgula e incremento e decremento separados por vírgula. E ainda o teste corretamente. for (X=0 , Y=4 ; X < 10 ; X++ , Y--) Está correto. Temos a inicialização, o teste e a parte dodecremento. for (X=10 ; X > 0 ; X--) Está correto. Temos duas inicializações separadas por vírgula e incremento e decremento separados por vírgula. E ainda o teste corretamente. for (X=0 , Y=0 ; X < 10 ; X++ , Y=Y+2) A sintaxe desta opção está incorreta e portanto, deve ser marcada. O teste lógico e a inicialização estão trocados de lugar. for (X < 10 ; X=0 ; X++) 6 Questão 9 e 9 50 e 9 o valor de s está indefinido e o valor de num é 7 16 e 9 50 e 16 Respondido em 13/04/2021 21:56:01 Explicação: conta num s conta <= 40 ? 10 1 0 sim 20 3 0 + 1 , que dá 1 sim 30 5 1 + 3, que dá 4 sim 40 7 4 + 5, que é 9 sim 50 9 9 + 7, que é 16 Falso ! Valor final de s é 16 e o valor final de num é 9 7 Questão Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário: int main ( ) { int i = 0; double x, y = 0; cout << "Digite um numero: "; cin >> x; while (x != 0){ i = i + 1; y = y + x; cout << "Digite um numero: "; cin >> x; } y = y / i; cout << "Numero: " << y << "\n"; system("PAUSE"); return 0; } A quantidade de elementos pares A média dos elementos digitados O menor de todos os elementos digitados A quantidade de elementos digitados O maior de todos os elementos digitados Respondido em 13/04/2021 21:56:09 Explicação: int i = 0; //inicializa a quantidade de elementos digitados diferentes de zero double x, y = 0; // y inicializa o somatorio dos valores de entrada cout << "Digite um numero: "; cin >> x; //Lê o primeiro valor while (x != 0){ //Enquanto o valor de entrada não for zero i = i + 1; //conta mais um número lido y = y + x; //acumula o valor de x em y, gerando o somatório dos números lidos e armazenados em x cout << "Digite um numero: "; cin >> x; //Lê o proóximo número } y = y / i; //Divide a soma dos números lidos não nulos por i ( i é o total de números lidos não nulos) cout << "Numero: " << y << "\n"; //Imprime a média armazenada em y Logo : O programa calcula a média dos números digitados (diferente de zero) 8 Questão Marque a opção correta. Considere o trecho de programa feito abaixo em C++. O valor final de soma e o valor final de num, são respectivamente int contador, num = 1, soma = 0; for (contador = 1; contador <= 20; contador += 5) { soma = soma + num; num = num + 3; } 12 e 10 22 e 20 22 e 10 22 e 13 o valor de soma está indefinido e o valor de num é 10 Respondido em 13/04/2021 21:56:16 Explicação: Analisando o trecho : int contador, num = 1, soma = 0; for (contador = 1; contador <= 20; contador += 5) { soma = soma + num; num = num + 3; } Fazendo teste de mesa : contador num soma contador <= 20 1 1 0 sim 6 4 1 sim 11 7 5 sim 16 10 12 sim 21 13 22 21 <= 20 ? Falso. Os valores finais das variáveis estão em vermelho. Logo, a resposta é 22 e 13
Compartilhar