Baixe o app para aproveitar ainda mais
Prévia do material em texto
LINGUAGEM DE PROGRAMAÇÃO I Lupa Fechar Exercício: CCE0242_EX_A4_201201410533 Matrícula: 201201410533 Aluno(a): MARYZE CORDEIRO RODRIGUES Data: 30/09/2015 23:19:08 (Finalizada) 1a Questão (Ref.: 201201682788) Fórum de Dúvidas (2) Saiba (2) A professora de Linguagem de Programação I pediu aos alunos que construíssem um código para que permitisse a entrada de um número inteiro e exibisse umas das mensagens: Positivo / Zero / Negativo Eles acharam esse pedido estranho, visto que era um programa clássico. Ao término do tempo que ela deu para o desenvolvimentos, pediu que eles comparassem as duas soluções que colocou no quadro. Leia as afirmativas abaixo e escolha a alternativa correta. I na solução A, se o número fosse positivo, era testado três vezes. II na solução B, se o número fosse positivo, era testado uma vez. III Se as duas soluções produzem a mesma saída podemos afirmar que, em termos de eficiência, não importa a quantidade de testes. IV A solução A poderia usar um if simples e um if composto ao invés de três ifs simples. V A solução B poderia testar se era zero no primeiro if e menor do que zero no outro desde que estivessem presentes as mensagens correspondentes aos testes e a mensagem Positivo no else. II, III e IV estão corretas I, II, IV e V estão corretas I, II e III estão corretas II e IV estão corretas I, II e V estão corretas Gabarito Comentado Página1 de5BDQ Prova 19/11/2015http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=6002496... 2a Questão (Ref.: 201201720174) Fórum de Dúvidas (2) Saiba (2) Um aluno de LPI gostaria de testar duas condições, usando somente uma estrutura if. Abaixo as duas condições a serem testadas: a) O ano de nascimento que precisa estar no intervalo fechado de 1989-2007. b) O sexo que precisa ser masculino. Sabe-se que o sexo se encontra em uma variável do tipo char de nome sexo e o ano em uma variável do tipo int de nome ano. Além disso, ele deseja que seja aceita tanto a letra M quanto a letra m. Assinale a opção que resolve o problema desse aluno. if(ano >=1989 && ano <=2007 && (sexo == 'M' || sexo == 'm' ) ) if(sexo == 'M' || sexo == 'm' && ano >= 1989 && ano <= 2007 ) if( sexo == 'M' || sexo == 'm' && (ano >= 1989 && ano <= 2007 ) ) if(ano >= 1989 && ano<= 2007 && sexo== 'M' || sexo == 'm' ) if( sexo == 'M' || (sexo == 'm' && ano >=1989 && ano<=2007 ) ) Gabarito Comentado Gabarito Comentado 3a Questão (Ref.: 201202068905) Fórum de Dúvidas (1 de 2) Saiba (1 de 2) Se precisarmos testar o conteúdo de uma variável e sabendo-se que só serão executados comandos se o teste retornar verdadeiro, qual estrutura você indicaria para esse caso? if else printf() switch() if if else if Gabarito Comentado 4a Questão (Ref.: 201201721693) Fórum de Dúvidas (2) Saiba (1 de 2) Uma empresa que presta serviços de pintura predial, desenvolveu um aplicativo destinado a calcular o número de latas necessárias para pintar uma parede. O programa lê o tipo de pintura(interna ou externa), a largura e a altura em metros(inteiros) da parede. Para calcular a quantidade de tinta e o número de latas, sabe-se que são necessários 3 litros de tinta para pintar cada metro quadrado interno ou 4 litros para cada metro quadrado externo. Sabe-se também que cada lata tem 2 litros de tinta. Dado o trecho de programa abaixo, identifique a opção correta que complemente o programa para realizar o cálculo do número de latas de tinta: void main(){ float altura, largura; char tipo; int total_latas, tot_metros, aux; puts("\nDigite E para Externo e I para Interno"); tipo = getchar(); puts("\nDigite a altura da parede: "); scanf("%f",&altura); Página2 de5BDQ Prova 19/11/2015http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=6002496... printf("\nDigite a largura da parede: "); scanf("%f",&largura); tot_metros = altura*largura; if(tot_metros%2) aux = 1; else aux = 0; switch(tipo){ case 'I': case 'i': printf("%d",(tot_metros*3)/2+aux); case 'E': case 'e': printf("%d",(tot_metros*4)/2+aux); default: printf("%s","Tipo invalido"); } system("PAUSE"); } if(tot_metros%2) aux = 1; else aux = 0; switch(tipo){ case 'I': break; case 'i': break; printf("%d",(tot_metros*3)/2+aux); case 'E': break; case 'e': break; printf("%d",(tot_metros*4)/2+aux); default: printf("%s","Tipo invalido"); } system("PAUSE"); } if(tot_metros%2) aux = 1; else aux = 0; switch(tipo){ case 'I': break; case 'i': break; printf("%d",(tot_metros*3)/2+aux); break; case 'E': break; case 'e': break; printf("%d",(tot_metros*4)/2+aux); break; default: printf("%s","Tipo invalido"); } system("PAUSE"); } switch(tipo){ case 'I': case 'i': printf("%d",(tot_metros*3)/2+aux); break; case 'E': case 'e': printf("%d",(tot_metros*4)/2+aux); break; default: printf("%s","Tipo invalido"); } system("PAUSE"); } if(tot_metros%2) aux = 1; else aux = 0; switch(tipo){ case 'I': case 'i': printf("%d",(tot_metros*3)/2+aux); Página3 de5BDQ Prova 19/11/2015http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=6002496... break; case 'E': case 'e': printf("%d",(tot_metros*4)/2+aux); break; default: printf("%s","Tipo invalido"); } system("PAUSE"); } 5a Questão (Ref.: 201202069080) Fórum de Dúvidas (1 de 2) Saiba (1 de 2) Existe sempre uma dúvida por parte do desenvolvedor se escolhe switch() ou if quando está usando a Linguagem C. Sabemos que existem algumas exigências para se usar o switch(). Analise as opções abaixo e assinale a opção correta. I Qualquer tipo pode ser usado. II Somente o tipo vetor de char que Não pode ser usado. III Não pode ser usado intervalo tipo: 1..3 em um case. IV Sempre será obrigatório usar o comando break; ao final de um case. V Quando o valor digitado não estiver presente em nenhum dos cases, irá para a opção default, caso exista. I, III, IV e V são verdadeiras II, III e IV são verdadeiras III e V são verdadeiras I, III e IV são verdadeiras II, IV e V são verdadeiras Gabarito Comentado Gabarito Comentado 6a Questão (Ref.: 201202069029) Fórum de Dúvidas (1 de 2) Saiba (1 de 2) Um desenvolvedor construiu um código onde estava presente o trecho abaixo. char resp; scanf("%c", &resp); switch(toupper(resp)) ; { case 'A': puts("Digitou a letra A" ); break; case 'E': puts("Digitou a letra E" ); break; case 'i': puts("Digitou a letra I" ); case 'O': puts("Digitou a letra O" ); case 'U': puts("Digitou a letra U" ); break; default: puts("Nao digitou vogal" ); } Analise as afirmativas abaixo e assinale a opção correta. I Se digitar I, aparece: Digitou a letra I / Digitou a letra O/ Digitou a letra U uma mensagem em cada linha. II Se digitar i, aparece: Nao digitou vogal. III Se digitar o, aparece:Digitou a letra O/ Digitou a letra U uma mensagem em cada linha. IV Se digitar a, aparece: Nao digitou vogal. V Se digitar A, aparece: Digitou a letra A. II, III e V são verdadeiras III e IV são verdadeiras II e, IV são verdadeiras I, III e IV são verdadeiras Só a a III é verdadeira Gabarito Comentado Página4 de5BDQ Prova 19/11/2015http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=6002496... Fechar Página5 de5BDQ Prova 19/11/2015http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=6002496...
Compartilhar