Baixe o app para aproveitar ainda mais
Prévia do material em texto
ALGORITMOS 6a aula Lupa Vídeo PPT MP3 Exercício: CCT0749_EX_A6_201801039844_V1 27/10/2018 17:53:33 (Finalizada) Aluno(a): MAIKON CARDOSO LEMOS 2018.3 EAD Disciplina: CCT0749 - ALGORITMOS 201801039844 1a Questão Um aluno de Introdução a Programação precisa escrever um programa que leia um caracter equivalente a uma estação do ano imprima o nome equivalente considerando que P- Primavera, V - Verão, O - Outono e I - Inverno. Qual a estrutura básica em C++ que deve ser utilizada para fazer esta seleção múltipla? for while break switch/case do/while Explicação: Falso. Comando de repetição do/while Falso. Comando de repetição. for Verdadeiro. switch/case Falso. Comando de repetição. while Falso. Comando de interrupção. break 2a Questão A linguagem C++ possui estruturas de decisão, as quais podem mudar a sequência de execução dos comandos. Analise o trecho de programa abaixo e assinale a alternativa que corresponda a estrutura de decisão utilizada. int main() { int num; cout<<"Digite um número: "; cin>> num; (num > 0)?cout<< num : cout<<" Número negativo "; return 0; } comando switch Operador ternário Estrutura condicional de comando simples aninhamento de if Estrutura condicional de comando composto Explicação: Como dito no gabarito. O operador ? : equivale ao comando if ... else. 3a Questão Quero escrever um programa que leia o número equivalente a um dia da semana e retorne o nome equivalente considerando que 1- Domingo, 2 - Segunda etc. Qual a estrutura básica em C++ que deve ser utilizada para fazer esta seleção múltipla? for do/while while switch/case cout Explicação: switch/case É para repetição do/while É para repetição for É para impressão na tela cout É para repetição while 4a Questão Considere o trecho de programa em C++ abaixo. O que é impresso na tela quando o número de entrada é 7 ? Assinale a opção correta. int num; cout << "Digite um numero: "; cin >> num; if (num % 2 == 0) cout << num << "é divisível por 2"; else if (num % 3 == 0 && num % 5 == 0) cout << num << " é divisível por 3 e por 5"; else cout << num << " ### " ; 7 é divisível por 3 e por 5. Apenas 7 7 não é divisível por 2. 7 ### Nada aparece, pois o trecho de programa possui erro. Explicação: Analisando o trecho em C++ e considerando a entrada 7 temos : num recebeu 7 na entrada. 1o. teste : 7 % 2 é zero ? Falso. Então, entramos no else do 1o. if e testamos a condição do 2o. if 2o. teste : 7 % 3 é zero ? Falso. Nem adianta testar a outra condição deste if, pois existe o &&. DAí, entramos no else do 2o. if, imprimindo na tela 7### Logo, a resposta correta é 7### 5a Questão Considere que o trecho de código em C++ foi executado 2 vezes, sendo que na 1ª. execução o valor de entrada foi 10 e na 2ª. execução, o valor de entrada foi 5. Ao final das duas execuções, respectivamente, o que foi impresso na tela ? cout << "Digite um valor : "; cin >> z; switch(z) { case 5 : cout << 3 * z << " "; case 10 : cout << 11 /2 * z << " "; case 20 : cout << z * z - 10 << endl; break; default : cout << "Entrada invalida. " << endl; } 15 27.5 15 55 90 55 1 50 90 15 25 15 15 25 15 50 90 55 90 15 27.5 15 Explicação: O aluno deverá fazer um teste de mesa ou chinês para poder escolher a resposta certa. Tal questão envolve conhecimento de switch ... case com e sem break e de operadores aritméticos, como a divisão entre inteiros ocorrida no 2o. case. 6a Questão Analise o trecho do algoritmo abaixo e indique a alternativa que apresenta as saídas obtidas para os valores: A=17, B=21 e C=13. SE (A > (B+C)) ENTÃO ESCREVA("+++++") SENÃO SE (B<=C) ENTÃO ESCREVA("%%%%%") SENÃO ESCREVA("^^^^^") FIM SE ESCREVA("=====") FIM SE +++++ ===== ===== %%%%% ^^^^^ ^^^^^ ===== Explicação: Analise o trecho do algoritmo abaixo e indique a alternativa que apresenta as saídas obtidas para os valores: A=17, B=21 e C=13. SE (A > (B+C)) ENTÃO //1o. teste : 17 > (34) ? FAlso. Entraremos no 1o. senão. ESCREVA("+++++") //não entra aqui SENÃO //Entra aqui devido à falha do 1o. teste SE (B<=C) ENTÃO //2o. teste : 21 <= 12 ? Falso. Então, entraremos no bloco do 2o. senão ESCREVA("%%%%%") //não entra aqui SENÃO ESCREVA("^^^^^") //SErá executada esta linha e depois seguiremos em frente. FIM SE ESCREVA("=====") //Após terminar o bloco do comando condicional, executamos esta linha FIM SE DA análise feita acima dois "escreva" são executados : ESCREVA("^^^^^") ESCREVA("=====") O que dará o seguinte resultado : ^^^^^ ===== 7a Questão Caso o valor inserido pelo usuário seja igual a 5, qual a mensagem exibida pelo código: int a; cin >> a; if (a<5) cout << "valor esperado"; else if (a>=5 && a<=10) cout << "valor ainda aceitável"; else if (a>10 && a<20) cout << "valor acima do esperado"; else if (a>=20) cout << "valor fora de faixa"; valor acima do esperado nenhuma mensagem será exibida valor ainda aceitável valor fora de faixa valor esperado Explicação: Se a variável a assume o valor 5 a única condição verdadeira é a>=5 && a<=10, portanto a saída será "valor ainda aceitável " 8a Questão Qual o comando utilizado pelo C++ para implementação de algoritmos onde seja necessário que o usuário entre com um valor referente a uma opção a ser escolhida, quando é necessário consulta em uma tabela ou a um menu exibido na tela. cout cin table switch/case break Explicação: a estrutura de escolha é implementada no C++ pelo comando switch/case
Compartilhar