Baixe o app para aproveitar ainda mais
Prévia do material em texto
23/04/2020 EPS simulado.estacio.br/alunos/?user_cod=&matr_integracao=202003202673 1/6 Examine as afirmativas a seguir e marque a alternativa correta. I- A estrutura de decisão pode alterar ou desviar o fluxo natural de execução de um algoritmo. II- O uso de uma estrutura de decisão composta pode ser mais eficiente que o uso de duas estruturas de decisão simples, pois reduz o número de testes. III- Muitas vezes é possível combinar a condição de duas estruturas de decisão simples em apenas uma utilizando operadores lógicos. Considere um programa em C++ que leia os valores A, B, C e informe se a soma dos dois primeiros termos é maior do que o terceiro. A estrutura seletiva adequada para esse teste é: INTRODUÇÃO A PROGRAMAÇÃO ESTRUTURADA EM C EEX0006_A5_202003202673_V1 Lupa Calc. PPT MP3 Aluno: THIAGO HENRIQUE DE MELO Matr.: 202003202673 Disc.: INT PROG ESTD EM 2020.1 EAD (G) / EX Prezado (a) Aluno(a), Você fará agora seu TESTE DE CONHECIMENTO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha. Após responde cada questão, você terá acesso ao gabarito comentado e/ou à explicação da mesma. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS. 1. Apenas a alternativa i está correta. Apenas a alternativa ii está correta. Todas as alternativas estão corretas. Todas as alternativas estão erradas. Apenas a alternativa iii está correta. Explicação: As estruturas de decisão realmente alteram o fluxo de um programa, uma estrutura composta é mais eficiente que duas simples, já que há menos testes e podemos usar operadores lógicos para combinar condições e reduzir o número de estruturas de decisão simples. Portanto todas as afirmativas estão corretas. 2. while ((A+B)>C) { cout << "A soma de A e B é maior do que C!"; } do { cout << "A soma de A e B é maior do que C!"; } while ((A+B)>C) switch ((A+B)>C) { cout << "A soma de A e B é maior do que C!"; } javascript:voltar(); javascript:voltar(); javascript:duvidas('827613','793701','1','3548792','1'); javascript:duvidas('3291899','793701','2','3548792','2'); javascript:diminui(); javascript:aumenta(); javascript:calculadora_on(); javascript:abre_frame('2','5','','L1NHDLK262UGBRFWPF8A',''); javascript:abre_frame('3','5','','L1NHDLK262UGBRFWPF8A',''); 23/04/2020 EPS simulado.estacio.br/alunos/?user_cod=&matr_integracao=202003202673 2/6 Considere o trecho de programa em C++ e assinale a opção que mostra o que é impresso na tela. int x, y, z; x = 10; y = 6; z = x/y; cout << z << " "; if (z > 0) z = x % y; cout << z << " "; Você deseja analisar se um número inteiro qualquer fornecido pelo usuário é par e positivo ou par e negativo. Com base na sintaxe do Portugol Studio, o trecho que realiza corretamente o teste para descobrir as características do número é: for ((A+B)>C) { cout << "A soma de A e B é maior do que C!"; } if ((A+B)>C) { cout << "A soma de A e B é maior do que C!"; } 3. 4 4 Ocorrerá erro, pois o trecho não compila. 1 1 1 4 4 1 Explicação: Basta fazer teste de mesa. DEssa forma, atribuir os valores das variáveis, testar e ver o que é impresso. 4. escreva("Informe um número qualquer: ") leia(num) resto=num%2 se (resto==0 e num>0) { escreva("Este número é par e positivo!") } senao se (resto!=0 e num>0) { escreva("Este número é ímpar e positivo!")} escreva("Informe um número qualquer: ") leia(num) resto=num%2 se (resto==0 e num<0) javascript:duvidas('2984671','793701','3','3548792','3'); javascript:duvidas('3291926','793701','4','3548792','4'); 23/04/2020 EPS simulado.estacio.br/alunos/?user_cod=&matr_integracao=202003202673 3/6 Assinale a opção correta. O que será impresso na tela, respectivamente, após duas execuções seguidas, sendo que na 1ª. execução o valor de entrada é 10 e na 2ª. execução o valor de entrada é 0. Para isso, considere o seguinte trecho em C++. int num; cout << "Digite um numero: "; cin >> num; if (num > 0) { num++; cout << num << " "; } cout << num + 1 << " "; if (num < 0) { num--; cout << num << " "; } else cout << num * 10 ; { escreva("Este número é ímpar e positivo!") } senao se (resto!=0 e num>0) { escreva("Este número é par e positivo!")} escreva("Informe um número qualquer: ") leia(num) resto=num^2 se (resto==1 e num>1) { escreva("Este número é par e positivo!") } senao se (resto!=0 e num>0) { escreva("Este número é ímpar e positivo!")} escreva("Informe um número qualquer: ") leia(num) resto=num/2 se (resto==0 !! num>0) { escreva("Este número é par e positivo!") } senao se (resto!=0 !! num>0) { escreva("Este número é ímpar e positivo!")} escreva("Informe um número qualquer: ") leia(num) resto=num%2 se (resto==0 ou num>0) { escreva("Este número é par e positivo!") } senao se (resto!=0 ou num>0) { escreva("Este número é ímpar e positivo!")} 5. 11 110 1 0 11 110 1 0 11 12 110 1 0 javascript:duvidas('794409','793701','5','3548792','5'); 23/04/2020 EPS simulado.estacio.br/alunos/?user_cod=&matr_integracao=202003202673 4/6 Assinale a opção correta. O que será impresso na tela, respectivamente, após duas execuções seguidas, sendo que na 1ª. execução o valor de entrada é 7 e na 2ª. execução o valor de entrada é 8. Para isso, considere o seguinte trecho em C++. int num; cout << "Digite um numero: "; cin >> num; if (num != 2 || num != 4 || num != 6) { num = num + 2; cout << num << " "; } if (num != 8) { num--; cout << num << " "; } else cout << num * 5 ; 11 110 1 10 11 12 110 Explicação: Analisando ... 1a. execução : Valor de entrada é 10. Logo, num recebeu 10 na entrada. 1o. teste >>> 10 > 0 ? Sim . Então, entramos no bloco do 1o. if e fazemos num receber 11. Depois, exibimos 11 na tela. Seguindo... é exibido o valor de num + 1, ou seja, é exibido na tela o valor 12. 2o. teste >>> 11 < 0 ? Não. Então, entramos no último else que imprime o resultado de 11 * 10, que é 110 Concluindo a 1a. execução para a entrada 10 : 11 12 110 2a. execução : Valor de entrada é 0. Logo, num recebe 0 na entrada. 1o. teste >>> 0 > 0 ? Falso. Não entramos no 1o. if. SEguindo em frente temos que o valor de num+1 é exibido na tela. Ou seja, 1 é exibido na tela. 2o. teste >>> 1 < 0 ? Não. Então, entramos no último else, que imprime o valor de 1 * 10, que é 10. Concluindo a 2a. execução para a entrada 0 : 1 10 6. 8 10 40 9 6 10 9 9 8 10 40 9 8 10 9 9 40 javascript:duvidas('794422','793701','6','3548792','6'); 23/04/2020 EPS simulado.estacio.br/alunos/?user_cod=&matr_integracao=202003202673 5/6 Em linguagem de programação, existe uma estrutura que é empregada em situações em que é preciso tomar uma decisão a respeito de determinado resultado que será obtido em duas situações diversas. Marque a opção que determina a estrutura de controle citada: Analise o trecho abaixo que um aluno desenvolveu na linguagem C++ e escolha a opção onde estão os valores que aprecem na tela. int x = 4, y = 14, t; float z; if( x < y ) { t=x; x=y; y=t;} z = (x % y) / y; cout << x << " " << y << " " << z ; Explicação: Analisando o trecho de programa em C++ ... 1a. execução : num recebe 7. Daí, testamos o 1o. if. Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if. Então, num recebe 9 e é impresso o valor 9 na tela. Seguimos para o próximo if e testamos sua condição. É verdade que 9 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 9 para 8 e imprimimos o valor 8. Concluindo esta 1a. execução : Foram impressos 9 8 2a. execução : num recebe 8. Daí, testamos o 1o. if. Note que usamos o || lógico. A condição é verdadeira e entramos no bloco do 1o. if. Então, num recebe 10 e é impresso o valor 10. Seguimos para o próximo if e testamos suacondição. É verdade que 10 != 8 ? Sim. Entramos no bloco do 2o. if e então decrementamos 10 para 9, imprimindo o valor 9. Concluindo esta 2a. execução : Foram impressos 10 9 7. Matricial Decisão Vetorial Repetição Recursiva Explicação: A opção que determina a estrutura de controle citada é a Decisão 8. 14 4 0.5 14 4 0 0.5 4 14 4 14 0.5 4 14 0 Explicação: O operador / quando ambos são inteiros resulta em um quociente inteiro javascript:duvidas('3140907','793701','7','3548792','7'); javascript:duvidas('833356','793701','8','3548792','8'); 23/04/2020 EPS simulado.estacio.br/alunos/?user_cod=&matr_integracao=202003202673 6/6 Legenda: Questão não respondida Questão não gravada Questão gravada Exercício inciado em 23/04/2020 12:35:13. javascript:abre_colabore('35904','188062461','3750192126');
Compartilhar