Baixe o app para aproveitar ainda mais
Prévia do material em texto
Sobre o FLUXOGRAMA abaixo podemos afirmar que : Apresenta na sua lógica a estrutura básica DECISÃO Apresenta na sua lógica as estruturas básicas de SEQUÊNCIA e REPETIÇÃO Apresenta na sua lógica a estrutura básica REPETIÇÃO Apresenta na sua lógica as estruturas de DECISÃO e REPETIÇÃO Apresenta na sua lógica as três estruturas básicas de programação Respondido em 02/04/2020 10:49:05 Explicação: Justificativas das opções : >> Apresenta na sua lógica as três estruturas básicas de programação . Falso. Não apresenta repetição >> Apresenta na sua lógica a estrutura básica REPETIÇÃO Falso. Apresenta apenas entrada de dados, saída de dados, atribuição, condicional composto. >> Apresenta na sua lógica as estruturas básicas de SEQUÊNCIA e REPETIÇÃO Falso. Não apresenta repetição. >> Apresenta na sua lógica a estrutura básica DECISÃO. Verdadeiro. Veja o uso do losango. >> Apresenta na sua lógica as estruturas de DECISÃO e REPETIÇÃO Falso. Não apresenta repetição. 2a Questão Assinale a alternativa correta relacionada à característica de um algoritmo: Variáveis do tipo real e inteiro aceitam, respectivamente, letras e números. Para cada variável pode ser definido mais de um tipo de dado. Valores de entrada são recebidos através do monitor. A execução de um algoritmo é feita sequencialmente. Teste de Mesa serve para receber os comandos de entrada. Respondido em 02/04/2020 10:49:14 Explicação: Verdadeira A execução de um algoritmo é feita sequencialmente. Falso. Entrada é via teclado ou via arquivo, o que aqui não é o caso. Valores de entrada são recebidos através do monitor. Falso. Apenas um tipo de dado. Para cada variável pode ser definido mais de um tipo de dado. Falso. Teste de mesa serve para fazer um passo a passo. Teste de Mesa serve para receber os comandos de entrada. Falso. Tipo real aceita número com casas decimais ou inteiros. Tipo inteiro aceita apenas valores inteiros. Variáveis do tipo real e inteiro aceitam, respectivamente, letras e números. 3a Questão Analise as afirmativas a seguir em relação a representação de algoritmos: I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo; II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representar graficamente o algoritmo; III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos. Podemos afirmar que: Apenas as alternativas I e III são CORRETAS Apenas as alternativas I e II são CORRETAS Apenas as alternativas II e III são INCORRETAS Apenas a alternativa I é CORRETA Todas as alternativas são CORRETAS Respondido em 02/04/2020 10:49:12 Explicação: Analisando cada afirmativa : I - O fluxograma utiliza diagramas para representar e facilitar o entendimento de um algoritmo; Verdadeira. O fluxograma usa símbolos para E/S, atribuição e outros comandos. II - O pseudocódigo é um recurso muito utilizado para desenvolver programas complexos e representar graficamente o algoritmo; Falsa. Pseudocódigo não tem nada de representação gráfica. III - A linguagem de programação é a maneira utilizada de formalizar a solução de um problema do mundo real a partir dos algoritmos. VErdadeira. Através de alguma linguagem de programação, escrevemos programas. 4a Questão Sobre Português Estruturado, assinale a opção correta : É igual à linguagem de programação na língua portuguesa É igual a uma carta para um encarregado É igual à linguagem natural ou narrativa O português estruturado é uma simplificação da nossa linguagem natural, na qual usamos frases simples e estruturas que possuem um significado muito bem definido. É igual ao fluxograma Respondido em 02/04/2020 10:49:29 Explicação: Definição direta e objetiva dada na aula 1. 5a Questão Algoritmo pode ser definido como a descrição dos passos para a execução de uma tarefa. Existem algumas formas distintas de representação de algoritmos, onde as principais são: Linguagem Natural, Linguagem Gráfica e Pseudocódigos. Se usarmos N para representar linguagem Natural, G para representar linguagem Gráfica e P para representar pseudocódigos, pode-se relacionar estas formas de representação de algoritmos com as seguintes afirmações: ( ) Sua simbologia é amplamente conhecida, por isto sua aplicação não se restringe apenas a algoritmos computacionais. ( ) Sua simbologia e sintaxe aproxima-se muito a simbologia e a sintaxe da maioria das linguagens de programação. ( ) A grande ambiguidade existente nos significados de seus termos é uma restrição a representação aos algoritmos computacionais. Marque a alternativa que representa a o relacionamento existente entre as afirmações e as formas de representação de algoritmos. G, N, P N, P, G N, G, P P, N, G G, P, N Respondido em 02/04/2020 10:49:37 Explicação: Analisando as afirmativas : ( ) Sua simbologia é amplamente conhecida, por isto sua aplicação não se restringe apenas a algoritmos computacionais. <<< Fluxograma, por exemplo, que é uma linguagem gráfica >>> ( ) Sua simbologia e sintaxe aproxima-se muito a simbologia e a sintaxe da maioria das linguagens de programação. <<< Pseudocódigo >>> ( ) A grande ambiguidade existente nos significados de seus termos é uma restrição a representação aos algoritmos computacionais. <<< Linguagem natural >>> 6a Questão Assinale a opção que, corretamente, mostra exemplos de linguagens de programação. C++, Java, portugol C++, C# e fluxograma C++, Java, C# português estruturado, C++, Java fluxograma, português estruturado, C Respondido em 02/04/2020 10:49:41 Explicação: Exemplos dados na aula 1. 7a Questão A representação gráfica dos algoritmos, em que cada símbolo apresentado representa uma operação a ser realizada é chamada de: Pseudocódigo Linguagem de Programação Diagrama Fluxograma Algoritmo Respondido em 02/04/2020 10:49:47 Explicação: Falso. Não usa representação gráfica Pseudocódigo Falso. Algoritmo não é representação de algoritmo Algoritmo FAlso. Linguagem de programação é usada para escrever programa. Linguagem de Programação Fluxograma FAlso. Que diagrama ? Diagrama 8a Questão Assinale a opção que mostra as formas possíveis e mais adequadas de se representar um algoritmo : Apenas pseudolinguagem Linguagem natural e linguagem gráfica Linguagem gráfica e pseudolinguagem Linguagem natural, fluxograma e pseudolinguagem Linguagem natural e pseudolinguagem Respondido em 02/04/2020 10:49:54 Explicação: Por definição e aula de introdução e formas de representação de algoritmo. Selecione, entre as alternativas, a opção correta, tendo em vista a frase: Necessita de espaço na memória e define o tipo de dado a ser armazenado. Comando Enquanto-Faça Variável atribuição Comando PARA Estrutura de Seleção Assinale a opção correta: Programas em C++ são interpretados e não compilados Um programa escrito em C++ que executa no Linux não vai executar no Windows. É o linker que traduz o todo programa feito em C++. Os programas em C++ precisam ser traduzidos para uma linguagem que o computador entenda. Não se pode escrever programa em C++ que execute no Mac. Quanto à linguagem de programação, marque a opção que determina o processo que efetua integralmente a tradução de um programa fonte para o código de máquina, podendo assim ser executado diretamente. Determinação Compilação Evolução LinkediçãoOrientação Faz parte do desenvolvimento de uma algoritmo declarar as variáveis que armazenarão dados a ser manipulados pelo algoritmo. De acordo com as regras para criação dos nomes para as variáveis, assinale a alternativa que possui um exemplo de nome INCORRETO: nota2 salariofinal nome_aluno cad1- id num1 Assinale a opção correta. O C++ é uma linguagem de alto nível na qual o uso de variáveis é opcional. O C++ não é uma linguagem de alto nível, pois usa palavras em Inglês que nem todos entendem. Para programar em alto nível é preciso dominar a linguagem binária. Dizemos que uma linguagem é de alto nível quando conseguimos ler e escrever usando palavras conhecidas por nós. Dizemos que uma linguagem é de alto nível quando usa linguagem binária. Assinale a opção correta: São palavras reservadas no C++ : int, real, inteiro, float Os programas em C++ não possuem palavras reservadas. Para terminar um programa em C++ devemos usar retorne 0; Não são palavras reservadas em C++ : for, while e do Os programas em C++ possuem palavras reservadas tais como main e int. Uma variável pode ser entendida como sendo: Um dispositivo de memória auxiliar. Um elemento da unidade lógica de controle. Um dispositivo de saída de dados. Um endereço na memória principal. Um dispositivo de entrada de dados. Um menino resolveu abrir o cofrinho de economias que contém o que guardou durante um ano. São moedas de R$ 0,25, R$ 0,50 e R$ 1,00. Imaginando que você precisa escrever um programa em C++ que, a partir da quantidade de cada moeda, mostre a quantia total economizada, como seria a declaração de variáveis necessárias a este programa? string qtde25, qtde50, qtde1, quantiaTotal; char qtde25, qtde50, qtde1, quantiaTotal; float qtde25, qtde50, qtde1, quantiaTotal; int qtde25, qtde50, qtde1, quantiaTotal; bool qtde25, qtde50, qtde1, quantiaTotal; No C++, é possível declarar variáveis e constantes. Uma constante é um espaço da memória reservado a um valor que não se altera ao longo da execução de um programa. Imaginando que você precise de uma constante para armazenar o valor de PI (3,14), como seria feita sua declaração em C++? const real PI=3.14; const float PI=3.14; float PI=3.14; const int PI=3.14; const integer PI=3.14; Um restaurante self-service vende comida por peso e cobra R$ 34,90 por quilo consumido. Sabendo que o preço a ser pago pelo cliente é calculado a partir do peso de seu prato multiplicado pelo valor do quilo, o trecho de declaração de variáveis em C++ que seria necessário em um programa capaz de informar ao cliente o valor a pagar é: char quilo = 34.90; char prato = 0; char valor_pagar = 0; float quilo = 34.90; float prato = 0; float valor_pagar = 0; real quilo = 34.90; real prato = 0; real valor_pagar = 0; bool quilo = 34.90; bool prato = 0; bool valor_pagar = 0; int quilo = 34.90; int prato = 0; int valor_pagar = 0; Assinale a opção correta. O que quer dizer main ? portugol algoritmo principal estruturado, de português estruturado programa As palavras que fazem parte de um conjunto próprio da linguagem C++ são chamadas: palavras código palavras próprias palavras especiais palavras reservadas palavras únicas O linha de programa que representa a ação "processamento" em um algoritmo em pseudolinguagem é: programa enquanto valor <- valor + 1; leia se Sobre a linguagem de programação C++, é correto afirmar que a mesma: I. Não permite a criação de variáveis do tipo lógico; II. É case sentive, ou seja, faz distinção entre letras maiúsculas e minúsculas; III. Permite que os identificadores de variáveis iniciem pelo caractere sublinhado ("_"); IV. É fracamente tipada; o que permite que uma variável seja declarada sem que seu tipo seja definido. II, III e IV são verdadeiras. II e III são verdadeiras. I, II e III são verdadeiras. I e II são verdadeiras. I e IV são verdadeiras. Assinale a opção correta. Uma possível declaração de uma variável booleana em C++ : boolean x; Declarando e atribuindo um valor à uma variável booleana em C++ : bool x = "true"; Uma possível declaração de uma variável inteira em C++ : x int; Declarando e atribuindo um valor à uma variável booleana em C++ : boolean x = true ; As variáveis do tipo bool podem ser true ou false. Considerando a linguagem C++, assinale a opção correta : Nem toda variável precisa ser declarada. Se quisermos declarar uma variável que possa armazenar valores reais, com casas decimais, devemos usar o tipo real na declaração da variável. A linguagem C++ diferencia maiúsculas de minúsculas Se declararmos uma variável inteira nota, podemos escrever NOTA, Nota, ou qualquer outra variação, pois é a mesma coisa. Alguns programas em C++ começam com float main e outros com int main 1. Indique qual alternativa calcula corretamente a média aritmética das notas AV1 e AV2 de uma determinada disciplina MEDIA = (AV1 ** AV2) / 2; MEDIA = (AV1 + AV2) / 2; MEDIA = (AV1 - AV2) / 2; MEDIA = AV1 + AV2 / 2; MEDIA = (AV1 * AV2) / 2; Indique qual o tercho em C++ que calcula corretamente a média das notas AV1 e AV2 de uma determinada disciplina. MEDIA = (AV1 * AV2) / 2; MEDIA = (AV1 + AV2) / 2; MEDIA = (AV1 - AV2) / 2; MEDIA = (AV1 ** AV2) / 2; MEDIA = AV1 + AV2 / 2; Monte a tabela da verdade para a expressão A || B && C && !A. A B C !A B && C B && C && !A A || B && C && !A V V V F V F V V F F F F V F V F F F V F F F F F F V V V V V F V F V F F F F V V F F F F F V F F A sequência de valores que preenche a última coluna, de cima para baixo, é: F, V, F, V, V, F, V, F F, F, F, F, F, V, V, V V, V, V, V, V, F, F, F V, V, F, F, V, V, F, F V, F, V, F, V, F, V, F Qual das alternativas apresenta a expressão que seja capaz de avaliar se uma variável do tipo inteiro, denominada NUMERO ,é ímpar e negativa. (NUMERO<0) && (NUMERO%2!=0) (NUMERO>0) !! (NUMERO%2==0) (NUMERO>0) && (NUMERO%2==0) (NUMERO>0) || (NUMERO%2==0) (NUMERO<0) || (NUMERO%2!=0) Sendo X = 1, Y = 2 e Z = 5, assinale a alternativa correta, dentre as relacionadas abaixo, que corresponde aos questionamentos realizados em relação à expressão: X * X + Y > Z. Questionamentos: - Esta expressão é VERDADEIRA ou FALSA? - O valor do termo X * X + Y é igual a qual valor ? A expressão é FALSA, e o valor de X * X + Y = 3. A expressão é FALSA, e o valor de X * X + Y = 4. A expressão é FALSA, e o valor de X * X + Y = 6. A expressão é VERDADEIRA, e o valor de X * X + Y = 5. A expressão é VERDADEIRA, e o valor de X * X + Y = 3. Assinale a alternativa que apresenta APENAS os exemplos de operadores lógicos. +, - e * =, > e ? &&, >= e <= !, > e >= &&, || e ! Utilizando os operadores adequados, como pode ser reescrita a expressão abaixo? A ou B e C e não D A && B || C || !D A || B && C && !D A && B && C && !D A || B ! C ! &&D A !! B && C && ||D Considerando os seguintes conteúdos para as variáveis: a = 2, b = 5 e c = 4 Determine qual das sentenças retornará verdadeiro. (b + 2) > (a * c) pow(c,a) > b * c ((b = 2) == a) a == c (b % a) == 0 Observe o algoritmo a seguir: 1 programa 2 { 3 inclua biblioteca Matematica --> mat 4 funcao inicio() 5 {6 real qtdeDin, valComb, qtdeLitros 7 escreva("Quanto custa o litro do combustível? R$ ") 8 leia(valComb) 9 escreva("Quantos reais você tem? R$ ") 10 leia(qtdeDin) 11 qtdeLitros=qtdeDin/valComb 12 escreva("Com R$ ", qtdeDin, " você consegue abastecer ", mat.arredondar(qtdeLitros,2)," litros de combustível.") 13 } 14 } Sabendo que o valor do litro do combustível é R$ 3.90 e que você dispõe de R$ 200.00 para abastecer, qual mensagem seria exibida pelo computador na linha 12? "Com R$ 200.00 você consegue abastecer 51.28 litros de combustível." "Com R$ qtdeDin você consegue abastecer mat.arredondar(qtdeLitros,2) litros de combustível." "Você consegue abastecer 51.28 litros de combustível com R$ 200.00." "Com R$ 200.00 você consegue abastecer 51.287645 litros de combustível." "Você consegue abastecer 51.28 litros de combustível." Assinale a opção correta : Para entrada de dados usamos cout e para saída de dados usamos cin Para entrada de dados usamos cin com << e para saída de dados usamos cout com >> Para entrada de dados usamos read e para saída de dados usamos write Para entrada de dados usamos cout com << e para saída de dados usamos cin com >> Para entrada de dados usamos cin com >> e para saída de dados usamos cout com << Explicação: Basta seguir as descrições na aula 2. Considere um programa em C++ que recebe um número inteiro qualquer e informe se ele é par ou ímpar. a estrutura seletiva adequada para teste do número é: if (resto=0) {cout <<"Este número é par!";} if {cout <<"Este número é ímpar!";} if (resto==0) {cout <<"Este número é par!";} else {cout <<"Este número é ímpar!";} switch (resto==0) {cout <<"Este número é par!";} case {cout <<"Este número é ímpar!";} if (resto==0) then {cout <<"Este número é par!";} elseif not {cout <<"Este número é ímpar!";} if (resto!=0) {cout <<"Este número é par!";} else {cout <<"Este número é ímpar!";} 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 ; 9 8 10 9 8 10 40 9 6 10 9 9 40 9 8 10 40 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 ; 14 4 0 0.5 4 14 14 4 0.5 4 14 0.5 4 14 0 Considere o trecho de programa em C++. O que é impresso na tela ? int x = 10, y = 3, z, k; y = x + y - 1; z = x/y; k = y % x; if (k == 0) cout << "x = " << x << " y = " << y << " z = " << z << " k = " << k; else cout << x + 1 << " " << y - 1 << " " << z + 2 << " " << k - 2; 10 12 2 0 x = 10 y = 12 z = 0.833 k = 0 x= 11 y = 11 z = 2 k = 0 x = 10 y = 12 z = 0 k = 0 11 11 2 0 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 é: 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 ou num>0) { escreva("Este número é par e positivo!") } senao se (resto!=0 ou 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) { 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==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==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!")} Para satisfazer a regra de que para fazer AV3 o aluno deve ter nota maior ou igual a 4 em pelo menos uma das outras duas Avaliacoes, qual seria a sentença correta Se (AV1 > 4) ou (AV2 > 4) Nenhuma outra alternativa satisfaz Se (AV1 > 4) e (AV2 > 4) Se (AV1 >= 4) e (AV2 >= 4) Se (AV1 >= 4) ou (AV2 >= 4) Explicação: Verdadeira Se (AV1 >= 4) ou (AV2 >= 4) Falsa. Tinha que ser >= e não apenas > Se (AV1 > 4) ou (AV2 > 4) FAlsa. Nâo tem que ter 4 ou mais nas duas provas, mas apenas em uma das provas. Se (AV1 >= 4) e (AV2 >= 4) FAlsa. Tinha que ser >= e no lugar do e tinha que se ou. Se (AV1 > 4) e (AV2 > 4) Falsa. A 1a. alternativa é a correta. Ou seja : Se (AV1 >= 4) ou (AV2 >= 4) 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 é: switch ((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!"; } for ((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) while ((A+B)>C) { cout << "A soma de A e B é maior do que C!"; } Analise o programa abaixo e selecione a alternativa que contenha a condição correta para que o número 27 seja mostrado na tela. #include using namespace std; int main() { int N1, N2; N1= 27; N2= 54; if ( ______________ ) { cout<< N2; } else { cout<< N1; } return 0; } N2 == N1 || N2 > 20 N2 > N1 || N1 > 50 N1 < N2 && N1 > 20 N1 > N2 || N2 < 50 N1 < N2 && N1 < 50 Observe as assertivas a seguir acerca dos fluxogramas: I. Os mesmos são a representação gráfica dos algoritmos. II. Para desenhá-los, é preciso adotar uma simbologia padrão pré-determinada. III. Existem programas que permitem que os mesmos sejam desenhados no computador. Assinale a seguir a alternativa que indica as afirmações corretas: I, II e III. I e III II e III. I e II. Todas são falsas. Respondido em 13/04/2020 13:25:18 2a Questão (Ref.:201910063838) Acerto: 1,0 / 1,0 Considerando a linguagem C++, assinale a opção correta : Se quisermos declarar uma variável que possa armazenar valores reais, com casas decimais, devemos usar o tipo real na declaração da variável. Nem toda variável precisa ser declarada. Se declararmos uma variável inteira nota, podemos escrever NOTA, Nota, ou qualquer outra variação, pois é a mesma coisa. Alguns programas em C++ começam com float main e outros com int main A linguagem C++ diferencia maiúsculas de minúsculas Respondido em 13/04/2020 13:09:55 3a Questão (Ref.:201910371129) Acerto: 0,0 / 1,0 Se você desejar escrever a expressão A|| B && C && !D em um algoritmo no Portugol Studio, como a mesma ficaria? A ou B e C e D A ou nao B e nao C e nao D A e B ou C nao D A e B ou C ou nao D A ou B e C e nao D Respondido em 13/04/2020 13:44:32 4a Questão (Ref.:201910371135) Acerto: 1,0 / 1,0 Observe o algoritmo a seguir: 1 programa 2 { 3 inclua bibliotecaMatematica --> mat 4 funcao inicio() 5 { 6 real qtdeDin, valComb, qtdeLitros 7 escreva("Quanto custa o litro do combustível? R$ ") 8 leia(valComb) 9 escreva("Quantos reais você tem? R$ ") 10 leia(qtdeDin) 11 qtdeLitros=qtdeDin/valComb 12 escreva("Com R$ ", qtdeDin, " você consegue abastecer ", mat.arredondar(qtdeLitros,2)," litros de combustível.") 13 } 14 } Sabendo que o valor do litro do combustível é R$ 3.90 e que você dispõe de R$ 200.00 para abastecer, qual mensagem seria exibida pelo computador na linha 12? "Você consegue abastecer 51.28 litros de combustível." "Com R$ 200.00 você consegue abastecer 51.287645 litros de combustível." "Você consegue abastecer 51.28 litros de combustível com R$ 200.00." "Com R$ qtdeDin você consegue abastecer mat.arredondar(qtdeLitros,2) litros de combustível." "Com R$ 200.00 você consegue abastecer 51.28 litros de combustível." Respondido em 13/04/2020 13:13:23 5a Questão (Ref.:201909997477) Acerto: 1,0 / 1,0 Analise o código abaixo e marque as saídas corretas: #include < iostream > using namespace std; int main () { int x, i; x = 1; cout << x; i = 6; x = x + i; cout << x; if ( x <= 7) { cout << x; x = x + 10; } else { cout << x; } retun 0; } 1, 7 e 7 1, 7, 17 1, 6 e 16 0, 6 e 7 1, 6 e 7 Respondido em 13/04/2020 13:29:58 6a Questão (Ref.:201910371108) Acerto: 0,0 / 1,0 Com base na sintaxe do Portugol Studio, imagine que você precisa escrever um algoritmo que exiba o nome do dia semana a partir de seu código numérico equivalente, armazenado na variável codigo. Confira a codificação: 1 - domingo, 2 - segunda-feira, 3 - terça-feira, 4 - quarta-feira, 5 - quinta-feira, 6 - sexta-feira, 7 - sábado. Veja o trecho da estrutura de seleção que poderia ser utilizado na solução: _____A_____ (codigo) { _____B_____ 1: escreva("domingo") ____C______ _____B_____ 2: escreva("segunda-feira") ____C______ _____B_____ 3: escreva("terça-feira") ____C______ _____B_____ 4: escreva("quarta-feira") _____C_____ _____B_____ 5: escreva("quinta-feira") _____C_____ _____B_____ 6: escreva("sexta-feira") _____C_____ _____B_____ 7: escreva("sábado") __________ _____D_____: escreva("Código inválido!") } As instruções que completam adequadamente as lacunas são: A - switch, B - case, C - break, D - default A - caso, B - escolha, C - pare, D - outros casos A - escolha, B - caso, C - pare, D - outros casos A - se, B - caso, C - pare, D - default A - case, B - switch, C - default, D - break Respondido em 13/04/2020 13:17:01 7a Questão (Ref.:201907873468) Acerto: 1,0 / 1,0 A fim de possibilitar a implementação de algoritmos estudamos algumas estruturas básicas, como estrutura de desvio de fluxo, estrutura de repetição etc. Entre as estrutura de repetição há uma na qual uma ação será executada pelo menos uma vez, antes da avaliação da condição. Esta estrutura é implementada em C++ pelo comando básico: for/while do/while do/for while for Respondido em 13/04/2020 13:40:46 8a Questão (Ref.:201907873679) Acerto: 0,0 / 1,0 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 O menor de todos os elementos digitados O maior de todos os elementos digitados A média dos elementos digitados A quantidade de elementos digitados Respondido em 13/04/2020 13:39:36 9a Questão (Ref.:201907873550) Acerto: 0,0 / 1,0 Um médico precisa armazenar o peso, a altura e o IMC de seus 1000 pacientes. Contratou um programador que disse que o programa teria algumas matrizes unidimensionais para o armazenamento. Assinale a opção abaixo que representa a declaração das referidas matrizes pelo programador, conforme as informações acima: char peso[1000], altura [1000], imc[1000]; char peso[999], altura[999], imc [999]; float peso[1000] ; altura[1000] ; imc[1000]; float peso[1001], altura[1001], imc [1001]; float peso[1000], altura[1000], imc [1000]; Respondido em 13/04/2020 13:35:19 10a Questão (Ref.:201909988057) Acerto: 1,0 / 1,0 Analise a seguinte afirmação: "Um edifício tem 8 andares, cada andar tem 5 apartamentos." Como poderíamos escrever uma declaração de matriz na linguagem C++, seguindo a afirmação acima, sabendo que os dados seriam do tipo int ? int edificio[8][5]; int edificio[40][1]; int edificio[1][40]; int edificio[5][8]; int edificio[40][5]; Sobre fluxograma, assina a opção correta. É uma forma de se representar graficamente algoritmos e que não dá margem à ambiguidade . É uma representação gráfica de algoritmos que dá margem à dupla interpretação ou ambiguidades. É usado na escrita de pseudolinguagens, como o Portugol. É uma forma de se representar o uso de hardware no programa. É uma forma de se escrever programas em qualquer linguagem de programação. Quest.: 2 2. Assinale a opção correta: Os programas em C++ não possuem palavras reservadas. São palavras reservadas no C++ : int, real, inteiro, float Os programas em C++ possuem palavras reservadas tais como main e int. Não são palavras reservadas em C++ : for, while e do Para terminar um programa em C++ devemos usar retorne 0; Quest.: 3 3. Sendo X = 1, Y = 2 e Z = 5, assinale a alternativa correta, dentre as relacionadas abaixo, que corresponde aos questionamentos realizados em relação à expressão: X * X + Y > Z. Questionamentos: - Esta expressão é VERDADEIRA ou FALSA? - O valor do termo X * X + Y é igual a qual valor ? A expressão é FALSA, e o valor de X * X + Y = 3. A expressão é FALSA, e o valor de X * X + Y = 6. A expressão é VERDADEIRA, e o valor de X * X + Y = 5. A expressão é FALSA, e o valor de X * X + Y = 4. A expressão é VERDADEIRA, e o valor de X * X + Y = 3. Quest.: 4 4. Observe o algoritmo a seguir: 1 programa 2 { 3 inclua biblioteca Matematica --> mat 4 funcao inicio() 5 { 6 real qtdeDin, valComb, qtdeLitros 7 escreva("Quanto custa o litro do combustível? R$ ") 8 leia(valComb) 9 escreva("Quantos reais você tem? R$ ") 10 leia(qtdeDin) 11 qtdeLitros=qtdeDin/valComb 12 escreva("Com R$ ", qtdeDin, " você consegue abastecer ", mat.arredondar(qtdeLitros,2)," litros de combustível.") 13 } 14 } Sabendo que o valor do litro do combustível é R$ 3.90 e que você dispõe de R$ 200.00 para abastecer, qual mensagem seria exibida pelo computador na linha 12? "Você consegue abastecer 51.28 litros de combustível." "Com R$ 200.00 você consegue abastecer 51.287645 litros de combustível." "Com R$ qtdeDin você consegue abastecer mat.arredondar(qtdeLitros,2) litros de combustível." "Você consegue abastecer 51.28 litros de combustível com R$ 200.00." "Com R$ 200.00 você consegue abastecer 51.28 litros de combustível." Quest.: 5 5. Tendo em mente os conceitos dos comandos básicos de decisão do C++, analise o trecho de programa abaixo e assinale a alternativa que corresponda a saída na tela: 5 2 -1 11 22 Quest.: 6 6. 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 aalternativa 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; } Estrutura condicional de comando simples Operador ternário comando switch aninhamento de if Estrutura condicional de comando composto Quest.: 7 7. A linguagem de programação C++ dispõe de três estruturas de repetição: do..while, while e for. Pensando na maneira como cada uma delas funciona, observe o trecho de código a seguir: Qual das alternativas a seguir, escritas com a estrutura for, equivale à estrutura while anterior? for (cont++; cont <= 10; int cont=0) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=10; cont <= 200; cont+=2) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=0; cont <= 10; cont++) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=0; cont <= 10; cont+=2) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=10; cont <= 0; cont++) { cout << "Estamos na " << cont << "a. rodada..."; } Quest.: 8 8. Marque a opção correta. O que é impresso na tela ? int conta, x = 1, r = 1; for (conta = 2; conta >= 0; conta--) { r = r * x + 1; x += 2; cout << "r= " << r << " x = " << x << endl; } r = 3 x = 4 r = 8 x = 6 r = 37 x = 7 r = 2 x = 3 r = 7 x = 5 r = 2 x = 3 r = 7 x = 5 r = 36 x = 7 r = 3 x = 2 r = 5 x = 7 r = 36 x = 7 Quest.: 9 9. Considere que um casal de amigos está brincando de par ou ímpar. Você precisa escrever um algoritmo que, a cada uma das 10 jogadas que farão, armazene nos vetores jogadasA e jogadasB o número escolhido pelo jogador A (que é par) e o número escolhido pelo jogador B (que é ímpar), respectivamente. Precisa informar, também a cada jogada, o jogador vencedor. O trecho que avaliaria a soma dos números escolhidos por cada amigo e decidiria quem venceu a rodada seria: total=jogadasA+jogadasB se (total%2==0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total=jogadasA[ind]+jogadasB[ind] escolha (total%2==0) { escreva("Jogador A venceu!\n") } outros casos { escreva("Jogador B venceu!\n") } total=jogadasA[ind]+jogadasB[ind] se (total%2==0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total=[ind]+jogadasB se (total%2>=0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total++ se (total%2!=0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } Quest.: 10 10. Em uma aplicação em C/C++, a matriz ESTOQUE [3][4] armazena, em cada uma de suas linhas, a quantidade estocada de produtos no último quadrimestre (4 meses). Sabendo-se que a declaração de uma matriz em C/C++ se dá da forma: < tipo de dado> nome [nºde linhas][nºde colunas]; Para obter o total estocado no primeiro mês do quadrimestre, o programa deverá: Somar todas as colunas da linha índice 0. Somar todas as linhas de todas as colunas. Somar todas as colunas da linha índice 1 Somar todas as linhas da coluna índice 0. Somar todas as linhas da coluna índice 1. Sobre fluxograma, assina a opção correta. É uma forma de se representar graficamente algoritmos e que não dá margem à ambiguidade . É uma representação gráfica de algoritmos que dá margem à dupla interpretação ou ambiguidades. É usado na escrita de pseudolinguagens, como o Portugol. É uma forma de se representar o uso de hardware no programa. É uma forma de se escrever programas em qualquer linguagem de programação. Respondido em 13/04/2020 14:57:18 2a Questão (Ref.:201910063823) Acerto: 1,0 / 1,0 Assinale a opção correta: Os programas em C++ não possuem palavras reservadas. São palavras reservadas no C++ : int, real, inteiro, float Os programas em C++ possuem palavras reservadas tais como main e int. Não são palavras reservadas em C++ : for, while e do Para terminar um programa em C++ devemos usar retorne 0; Respondido em 13/04/2020 14:26:05 3a Questão (Ref.:201907873340) Acerto: 1,0 / 1,0 Sendo X = 1, Y = 2 e Z = 5, assinale a alternativa correta, dentre as relacionadas abaixo, que corresponde aos questionamentos realizados em relação à expressão: X * X + Y > Z. Questionamentos: - Esta expressão é VERDADEIRA ou FALSA? - O valor do termo X * X + Y é igual a qual valor ? A expressão é FALSA, e o valor de X * X + Y = 3. A expressão é FALSA, e o valor de X * X + Y = 6. A expressão é VERDADEIRA, e o valor de X * X + Y = 5. A expressão é FALSA, e o valor de X * X + Y = 4. A expressão é VERDADEIRA, e o valor de X * X + Y = 3. Respondido em 13/04/2020 14:27:12 4a Questão (Ref.:201910371135) Acerto: 1,0 / 1,0 Observe o algoritmo a seguir: 1 programa 2 { 3 inclua biblioteca Matematica --> mat 4 funcao inicio() 5 { 6 real qtdeDin, valComb, qtdeLitros 7 escreva("Quanto custa o litro do combustível? R$ ") 8 leia(valComb) 9 escreva("Quantos reais você tem? R$ ") 10 leia(qtdeDin) 11 qtdeLitros=qtdeDin/valComb 12 escreva("Com R$ ", qtdeDin, " você consegue abastecer ", mat.arredondar(qtdeLitros,2)," litros de combustível.") 13 } 14 } Sabendo que o valor do litro do combustível é R$ 3.90 e que você dispõe de R$ 200.00 para abastecer, qual mensagem seria exibida pelo computador na linha 12? "Você consegue abastecer 51.28 litros de combustível." "Com R$ 200.00 você consegue abastecer 51.287645 litros de combustível." "Com R$ qtdeDin você consegue abastecer mat.arredondar(qtdeLitros,2) litros de combustível." "Você consegue abastecer 51.28 litros de combustível com R$ 200.00." "Com R$ 200.00 você consegue abastecer 51.28 litros de combustível." Respondido em 13/04/2020 14:27:24 5a Questão (Ref.:201907906874) Acerto: 1,0 / 1,0 Tendo em mente os conceitos dos comandos básicos de decisão do C++, analise o trecho de programa abaixo e assinale a alternativa que corresponda a saída na tela: 5 2 -1 11 22 Respondido em 13/04/2020 14:35:10 6a Questão (Ref.:201907906883) Acerto: 0,0 / 1,0 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; } Estrutura condicional de comando simples Operador ternário comando switch aninhamento de if Estrutura condicional de comando composto Respondido em 13/04/2020 15:11:22 7a Questão (Ref.:201910371130) Acerto: 0,0 / 1,0 A linguagem de programação C++ dispõe de três estruturas de repetição: do..while, while e for. Pensando na maneira como cada uma delas funciona, observe o trecho de código a seguir: Qual das alternativas a seguir, escritas com a estrutura for, equivale à estrutura while anterior? for (cont++; cont <= 10; int cont=0) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=10; cont <= 200; cont+=2) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=0; cont <= 10; cont++) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=0; cont <= 10; cont+=2) { cout << "Estamos na " << cont << "a. rodada..."; } for (int cont=10; cont <= 0; cont++) { cout << "Estamos na " << cont << "a. rodada..."; } Respondido em 13/04/2020 15:09:20 8aQuestão (Ref.:201907873612) Acerto: 0,0 / 1,0 Marque a opção correta. O que é impresso na tela ? int conta, x = 1, r = 1; for (conta = 2; conta >= 0; conta--) { r = r * x + 1; x += 2; cout << "r= " << r << " x = " << x << endl; } r = 3 x = 4 r = 8 x = 6 r = 37 x = 7 r = 2 x = 3 r = 7 x = 5 r = 2 x = 3 r = 7 x = 5 r = 36 x = 7 r = 3 x = 2 r = 5 x = 7 r = 36 x = 7 Respondido em 13/04/2020 15:09:40 9a Questão (Ref.:201910371104) Acerto: 1,0 / 1,0 Considere que um casal de amigos está brincando de par ou ímpar. Você precisa escrever um algoritmo que, a cada uma das 10 jogadas que farão, armazene nos vetores jogadasA e jogadasB o número escolhido pelo jogador A (que é par) e o número escolhido pelo jogador B (que é ímpar), respectivamente. Precisa informar, também a cada jogada, o jogador vencedor. O trecho que avaliaria a soma dos números escolhidos por cada amigo e decidiria quem venceu a rodada seria: total=jogadasA+jogadasB se (total%2==0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total=jogadasA[ind]+jogadasB[ind] escolha (total%2==0) { escreva("Jogador A venceu!\n") } outros casos { escreva("Jogador B venceu!\n") } total=jogadasA[ind]+jogadasB[ind] se (total%2==0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total=[ind]+jogadasB se (total%2>=0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } total++ se (total%2!=0) { escreva("Jogador A venceu!\n") } senao { escreva("Jogador B venceu!\n") } Respondido em 13/04/2020 15:11:36 10a Questão (Ref.:201907873440) Acerto: 1,0 / 1,0 Em uma aplicação em C/C++, a matriz ESTOQUE [3][4] armazena, em cada uma de suas linhas, a quantidade estocada de produtos no último quadrimestre (4 meses). Sabendo-se que a declaração de uma matriz em C/C++ se dá da forma: < tipo de dado> nome [nºde linhas][nºde colunas]; Para obter o total estocado no primeiro mês do quadrimestre, o programa deverá: Somar todas as colunas da linha índice 0. Somar todas as linhas de todas as colunas. Somar todas as colunas da linha índice 1 Somar todas as linhas da coluna índice 0. Somar todas as linhas da coluna índice 1. 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 << " ### " ; Nada aparece, pois o trecho de programa possui erro. 7 é divisível por 3 e por 5. 7 ### 7 não é divisível por 2. Apenas 7 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### 2. Uma lanchonete está disponibilizando para seus clientes um terminal através do qual poderão fazer seu pedido. Para que isso aconteça, o terminal deve exibir o menu de itens disponíveis conforme se vê a seguir: *** Cardápio *** 100 - Hambúrguer - R$5,50 101 - Cachorro-quente - R$4,50 102 - Milkshake - R$7,00 103 - Pizza brotinho - R$8,00 104 - Cheeseburguer - R$8,50 Informe o código do seu pedido: Uma vez que o cliente informe o código do item desejado, o terminal deverá perguntar a quantidade de itens que ele deseja pedir. Ao final, o usuário deverá informar o pedido do cliente e o valor a pagar. Se você deseja escrever esse programa em C++ e optar pela estrutura SWITCH, como ficariam as linhas iniciais dessa seleção, até o caso de o item "hambúrguer" ser escolhido? switch (codigo) { case 100: item="Hambúrguer"; valor= qtde * 5.50; break; } case (codigo) { switch 100: item="Hambúrguer"; valor= qtde * 5.50; break; } switch (codigo) { if 100: item="Hambúrguer"; valor= qtde * 5.50; break; } while (codigo) { case 100: item="Hambúrguer"; valor= qtde * 5.50; break; } switch (codigo) { default 100: item="Hambúrguer"; valor= qtde * 5.50; break; } 3. Às vezes me perguntam se existe alguma razão para existirem tantas formas de decisão nas linguagens de programação. Eu sempre digo: Claro que sim! Analise as afirmativas abaixo e escolha a opção certa. I Se tivermos que fazer um teste e só executar um bloco, que pode ter uma instrução ou mais instruções, o if simples deverá ser escolhido. II Se tivermos duas possibilidades de respostas, não poderemos usar dois if(s) simples, onde o teste de um é o complementa o do outro, porque poderão sair duas respostas. III Se tivermos três possibilidades de respostas, podemos usar um if simples e um if composto que não teremos problemas com as respostas. IV Quando temos 10 possibilidades de respostas, poderemos usar 10 if(s) simples, embora usar ifs encadeados seria mais eficiente. As afirmativas I e IV são verdadeiras Somente a afirmativa II é verdadeira Somente a afirmativa I é verdadeira Somente a afirmativa III é falsa As afirmativas II, III e IV são verdadeiras Explicação: As respostas falsas são conclusivas 4. Que comando em C++ é mais indicado para ser usado em um programa que permita a escolha de uma opção do MENU ? Por exemplo : 1-Incluir, 2-Excluir, 3-Alterar e 9-Sair. while switch / case for do/while cout / cin Explicação: Por definição dada em aula de comando de seleção 5. 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; } 50 90 15 25 15 55 1 15 27.5 15 55 90 55 90 15 27.5 15 15 25 15 50 90 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. 6. 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 switch/case while do/while break 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 7. 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; } Operador ternáriocomando switch 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. 8. Considere o trecho de programa em C++ abaixo. O que é impresso na tela quando o número de entrada é 9 ? Assinale a opção correta. int x; cout << "Digite um numero: "; cin >> x; if (x % 2 == 0) cout << x << "é divisível por 2"; else if (x % 3 == 0 && x % 5 == 0) cout << x << " é divisível por 3 e por 5"; else cout << x << " ### " ; 9 não é divisível por 2. Nada aparece, pois o trecho de programa possui erro. 9 ### 9 é divisível por 3 e por 5. Apenas 9 Uma turma precisa escolher seu representante. Sabendo que existem apenas dois candidatos, identificados pelas letras A e B, imagine que você precisa escrever um programa em C++ que receba o número do aluno e o candidato por ele escolhido e contabilize os votos de cada um. A leitura de votos será finalizada quando o número do aluno informado for 0. Contabilize também os votos nulos, que são aqueles diferentes de A ou B. Ao final, é preciso exibir o candidato vencedor, os votos para o candidato A, os votos para o candidato B e os votos nulos. Qual das alternativas a seguir apresenta o trecho de código adequado à solução desse problema? cout<< "Digite o número do aluno: "; cin>> num; for (num!=0) { cout<< "Digite a letra de seu candidato: "; cin>> voto; if (voto == A) { contA++; } else if (voto == B) { contB++; } else { contN++; } cout<< "Digite o número do aluno: "; cin>> num; } cout<< "Digite o número do aluno: "; cin>> num; while (num!=0) { cout<< "Digite a letra de seu candidato: "; cin>> voto; case (voto == A) { contA++; } case (voto == B) { contB++; } case { contN++; } cout<< "Digite o número do aluno: "; cin>> num; } cin<< "Digite o número do aluno: "; cout>> num; do while (num!=0) { cin<< "Digite a letra de seu candidato: "; cout>> voto; if (voto == A) { contA++; } else if (voto == B) { contB++; } else { contN++; } cin<< "Digite o número do aluno: "; cout>> num; } cout<< "Digite o número do aluno: "; cin>> num; while (num!=0) { cout<< "Digite a letra de seu candidato: "; cin>> voto; if (voto == A) { contA++; } else if (voto == B) { contB++; } else { contN++; } cout<< "Digite o número do aluno: "; cin>> num; } cout<< "Digite o número do aluno: "; cin>> num; do (num!=0) { cout<< "Digite a letra de seu candidato: "; cin>> voto; if (voto == A) { contA++; } else if (voto == B) { contB++; } else { contN++; } cout<< "Digite o número do aluno: "; cin>> num; } 2. Imagine que você precisa escrever um programa em C++ que receba uma sequência de números e, para cada número informado, diga se ele é par ou ímpar. Essa sequência se encerra quando o usuário digitar 0 e você precisa utilizar uma estrutura repetitiva com pré-teste. Qual dos trechos a seguir atenderia essa solicitação? while (num!=0) { if (num%2==0) { cin <<"Este número é par.\n"; } else { cin <<"Este número é ímpar.\n"; } cin <<"Informe um número qualquer: "; cout >>num; } while (num!=0) { if (num%2==0) { cout <<"Este número é par.\n"; } else { cout <<"Este número é ímpar.\n"; } cout <<"Informe um número qualquer: "; cin >>num; } do { if (num%2==0) { cout <<"Este número é par.\n"; } else { cout <<"Este número é ímpar.\n"; } cout <<"Informe um número qualquer: "; cin >>num; } while (num!=0) for (num!=0) { switch (num%2==0) { cout <<"Este número é par.\n"; } switch { cout <<"Este número é ímpar.\n"; } cout <<"Informe um número qualquer: "; cin >>num; } for (num==0; num!=0; num--) { if (num%2==0) { cout <<"Este número é par.\n"; } else { cout <<"Este número é ímpar.\n"; } cout <<"Informe um número qualquer: "; cin >>num; } 3. 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 diferente de zero : "; cin >> x; while (x != 0){ i = i + 1; y = y + x; cout << "Digite um numero diferente de zero: "; cin >> x; } y = y / i; cout << "Numero: " << i << "\n"; return 0; } A quantidade de elementos digitados diferentes de zero. A média dos elementos digitados O menor de todos os elementos digitados O maior de todos os elementos digitados A quantidade de elementos pares Explicação: A condição para entrar no loop e contar é x ser diferente de zero. O que será exibido ao final do programa é a quantidade i calculada. Note que o primeiro valor de x digitado é testado, então entra-se no loop e logo depois, este valor é contado através do uso de i que é incrementado. Claro que x é manipulado, tendo seu valor somado com o valor de y, mas ao final do programa a quantidade i é impressa. Se o valor zero for digitado, ele não será contado. 4. Considerando a seguinte sequencia de instruções, marque a alternativa que indica o comando correspondente para preenchimento da lacuna. ... cin>>matricula; ______________ (matricula<99) { cin>>matricula; } while loop do case repeat for Explicação: Falso. Nâo tem repeat em C++. repeat Falso. Não se encaixa a sintaxe do comando for. for Verdadeiro while Falso. Não existe comando do... case. do case Falso. Nâo existe comando loop. loop 5. Comando de repetição é utilizado quando se deseja repetir determinados comandos. Marque a opção que representa o uso do comando while para implementar a estrutura de um contador corretamente. while (if cont =10){ } String cont = ""; { cont++; } while (cont!="") while (repita 10 vezes) { } int cont = 0; while (cont <=10){ cout << "exibindo o número " << cont; cont++; } while () { cout << "exibindo o número"; } Explicação: A estrutura geral do while quando se usa contador no teste do loop é a seguinte : while ( < condição... teste lógico ... com o contador > ) { < comandos> alteração do contador } Analisando ... Falsa. Faltou a condição ou teste lógico ou variável que pode ser true ou false. while () { cout << "exibindo o número"; } Verdadeira. Pode se r encaixada na explicação no início. int cont = 0; while (cont <=10){ cout << "exibindo o número " << cont; cont++; } FAlsa. Não tem String em C++. Existe string, mas não String. Sintaxe incorreta no uso do while. String cont = ""; { cont++; } while (cont!="") Falsa. Sintaxe incorreta. Uso de repita sem sentido. while (repita 10 vezes) { } Falsa. Uso incorreto do if na parte relativa à condição do while. while (if cont =10){ } 6. Imagine que , com base na sintaxe do Portugol Studio, você precisa escrever um algoritmo que receba uma sequência de números e, para cada número informado, diga se ele é par ou ímpar. A sequência se encerra quando o usuário digitar 0. Considerando que é necessário utilizar uma estrutura repetitiva com pré-teste, qual das alternativas a seguir ajuda a resolver o problema proposto? faca { se (num%2==0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } enquanto (num!=0) enquanto (num!=0) { se (num%2==0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } enquanto(num>0) { se (num%2!=0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } enquanto (num==0) { se (num/2==0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } faca { se (num%2!=0) { escreva("Este número é par!\n") } senao { escreva("Este número é ímpar!\n") } escreva("Informe um número qualquer: ") leia(num) } enquanto (num>0) 7. Na execução do comando while o teste da condição que controla a execução, ou não, dos comandos subordinados, é feito, sempre, antes de cada iteração. Desta forma, é correto afirmar que: A condição de teste deverá ser sempre verdadeira antes do início da execução. Os comandos subordinados serão executados no mínimo uma vez. Os comandos subordinados poderão não ser executados. Independentemente da condição de teste, os comandos subordinados sempre serão executados. A condição de teste deverá ser sempre falsa antes do início da execução. Explicação: No comando enquanto primeiro se testa a condição para depois se executar o corpo da repetição. Se a condição for falsa nada dentro do corpo da repetição será executado. 8. Considere que uma refeição saudável envolve o consumo máximo de 550 calorias. Sabendo disso, você deseja escrever um programa que, a partir da quantidade de calorias consumidas em uma refeição, informe se você ultrapassou esse valor ou permaneceu dentro do limite. Para fazer o cálculo do consumo total, você precisará que seja digitado o valor calórico de cada elemento. Como não se sabe exatamente quantos alimentos diferentes foram consumidos, considere que será digitado 0 quando não houver mais consumo a ser informado. Ao final do programa, é necessário exibir o consumo total de calorias e informar se foi ultrapassado o valor sugerido por refeição, se o usuário permaneceu dentro do limite ou se consumiu exatamente a quantidade de calorias sugerida. Qual das alternativas a seguir apresenta a estrutura repetitiva adequada para este problema? for (calAlimento!=0) { cont++; totCalorias+=calAlimento; cout<< "Informe as calorias do alimento " << cont <<": "; cin>> calAlimento; } do (calAlimento!=0) { cont++; totCalorias+=calAlimento; cout<< "Informe as calorias do alimento " << cont <<": "; cin>> calAlimento; } while (calAlimento!=0) { cont++; totCalorias+=calAlimento; cout<< "Informe as calorias do alimento " << cont <<": "; cin>> calAlimento; } while (cont!=0) { cont++; totCalorias+=0; cout<< "Informe as calorias do alimento " << cont <<": "; cin>> calAlimento; } while (calAlimento!=0) { cont++; totCalorias+=calAlimento; cin<< "Informe as calorias do alimento " << cont <<": "; cout>> calAlimento; } Considere a estrutura for ( ; ; ), e assinale a afirmação correta: Tem a sintaxe incorreta. É um laço infinito. Não é executada pois não tem incremento. Não é executada, pois não tem variável. Não é executada, pois não tem condição de teste. Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário: int main ( ) { int i; double x, y = 0; for (i = 0; i < 10; i++){ cout << "Digite um numero: "; cin >> x; if ((x % 2) == 1){ y = y + x; } } cout << "Numero: " << y << "\n"; system("PAUSE"); return 0; } A média dos elementos digitados A soma dos elementos ímpares O maior de todos os elementos digitados A quantidade de elementos digitados A soma de todos os elementos Ao fazer um programa de computador, algumas estruturas precisam ser utilizadas. Assinale a alternativa correta para que um programa repita 200 vezes um bloco de comandos através da estrutura de repetição FOR na linguagem C++. for (int i=0; i <= 200; i++) for ( i=0; i <= 200; i++) for (int i=0, i <= 200, i++) for (int i=0; i < 200; i++) for (int i=0; i =< 200; i++) Leia atentamente o trecho de código abaixo e diga o que ele retornaria ao usuário: int main ( ) { int i; double x, y; cout << "Digite um numero: "; cin >> x; for (i=0; i<5; i++){ cout << "Digite um numero: "; cin >> y; if (y > x){ x = y; } } cout << "Numero: " << x << "\n"; system("PAUSE"); return 0; } O maior de todos os elementos digitados A média dos elementos digitados O menor de todos os elementos digitados A quantidade de elementos pares A quantidade de elementos digitados O que o trecho de programa em C++ abaixo imprime na tela ? int x; for (x = 5; x > 0; x--) if (x % 3 == 0) cout << x - 1 << " "; else cout << x + 1 << " "; 5 6 3 2 1 5 4 3 2 1 6 5 2 3 1 6 5 3 2 1 6 5 2 3 2 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; } o valor de soma está indefinido e o valor de num é 10 22 e 13 22 e 10 22 e 20 12 e 10 Imagine que você precisa escrever um programa em C++ que receba o sexo de 100 pessoas (F para Feminino ou M para Masculino). Ao final da leitura dos sexos, o programa precisa exibir as seguintes informações: quantidade de mulheres, quantidade de homens, percentual de mulheres e percentual de homens. Observações: 1. O programa deve funcionar com "F" e "M" maiúsculos ou minúsculos; 2. A estrutura de repetição a ser utilizada deve ser FOR. Sabendo disso, qual seria o trecho de repetição adequado para esse programa? for (int cont=1;cont>=100;cont--) { cout <<"Qual o sexo? "; cin >>sexo; if (sexo==F && sexo==f) { qtdeF++; } else if (sexo==M || sexo==m) { qtdeM++; } } for (int cont=1;cont<=100;cont++) { cout <<"Qual o sexo? "; cin >>qtdeF; if (sexo==F && sexo==f) { qtdeF--; } else if (sexo==M || sexo==m) { qtdeM--; } } for (int cont=1;cont<=100;cont++) { cin <<"Qual o sexo? "; cout >>qtdeF; if (sexo==F && sexo==f) { qtdeF++; } else if (sexo==M || sexo==m) { qtdeM++; } } for (int cont=1;cont<=100;cont++) { cout <<"Qual o sexo? "; cin >>sexo; if (sexo==F || sexo==f) { qtdeF++; } else if (sexo==M || sexo==m) { qtdeM++; } } for (int cont=1;cont>=100;cont--) { cout <<"Qual o sexo? "; if (sexo==F && sexo==f) { qtdeF++; } else if (sexo==M &&| sexo==m) { qtdeM++; } Qual dos comandos abaixo está escrito de forma errada? for (X < 10 ; X=0 ; X++) for (X=0 ; X < 10 ; X++) for (X=10 ; X > 0 ; X--) for (X=0 , Y=0 ; X < 10 ; X++ , Y=Y+2) for (X=0 , Y=4 ; X < 10 ; X++ , Y--) Suponha que em um programa em C/C++ se deseje armazenar 15 valores decimais em um vetor LISTA. Assinale a declaração correta: int LISTA[16]; float lista[15]; float lista[16]; int lista[15]; float LISTA[15]; Um médico precisa armazenar o peso, a altura e o IMC de seus 1000 pacientes. Contratou um programador que disse que o programa teria algumas matrizes unidimensionais para o armazenamento. Assinale a opção abaixo que representa a declaração das referidas matrizes pelo programador, conforme as informações acima: float peso[1000] ; altura[1000] ; imc[1000]; float peso[1000], altura[1000], imc [1000]; char peso[1000], altura [1000], imc[1000]; float peso[1001], altura[1001], imc [1001]; char peso[999], altura[999], imc [999]; Um médico precisa armazenar o peso,a altura e o IMC de seus 1000 pacientes. Contratou um programador que disse que o programa teria algumas matrizes unidimensionais para o armazenamento. Assinale a opção abaixo que representa a declaração das referidas matrizes pelo programador, conforme as informações acima: float peso[1000] ; altura[1000] ; imc[1000]; float peso[1000], altura[1000], imc [1000]; char peso[1000], altura [1000], imc[1000]; float peso[1001], altura[1001], imc [1001]; char peso[999], altura[999], imc [999]; Analise o código abaixo e assinale o item que corresponde aos valores finais do vetor v. int a = 2; int v[] = {2, 3, 1}; v[0] = v[a]; v[1] = v[0] + v[0]; v[2] = v[0] + v[1]; 1, 2, 3 2, 3, 1 2, 1, 3 1, 3, 2 3, 2, 1 Em C++, se você precisasse escrever um programa que recebesse o sexo e a altura de 25 pessoas e armazenasse nos vetores Sexo e Altura, respectivamente, e, em seguida, calculasse e exibisse a média de altura das mulheres e a média de altura dos homens, que trecho utilizaria para recebimento de valores via teclado e para as somas necessárias na obtenção da média das alturas? Atenção às variáveis utilizadas: quantF - Quantidade de pessoas do sexo feminino; somaAF - Soma das alturas do sexo feminino; quantM - Quantidade de pessoas do sexo masculino; somaAM - Soma das alturas do sexo masculino. for (ind=0;ind<=24;ind++) { cout <<"Informe o sexo: "; cin >>Sexo; cout <<"Informe a altura: "; cin >>Altura; if (Sexo[ind]==F || Sexo[ind]==f) { quantF++; somaAF+=[ind]; } else if (Sexo[ind]==M || Sexo[ind]==m) { quantM++; somaAM+=[ind]; } } for (ind=0;ind<=24;ind++) { cout <<"Informe o sexo: "; cin >>Sexo[ind]; cout <<"Informe a altura: "; cin >>Altura[ind]; if (Sexo[ind]==F || Sexo[ind]==f) { quantF++; somaAF+=Altura[ind]; } else if (Sexo[ind]==M || Sexo[ind]==m) { quantM++; somaAM+=Altura[ind]; } } for (ind=0;ind<=24;ind+=2) { cout <<"Informe o sexo: "; cin >>Sexo[ind]; cout <<"Informe a altura: "; cin >>Altura[ind]; if (Sexo[ind]==F && Sexo[ind]==f) { quantF++; somaAF+=Altura[ind]; } else if (Sexo[ind]==M && Sexo[ind]==m) { quantM++; somaAM+=Altura[ind]; } } for (ind=0;ind>=24;ind--) { cout <<"Informe o sexo: "; cin >>Sexo[ind]; cout <<"Informe a altura: "; cin >>Altura[ind]; if (Sexo[ind]==F || Sexo[ind]==f) { quantF++; somaAF=Altura[ind]; } else if (Sexo[ind]==M || Sexo[ind]==m) { quantM++; somaAM=Altura[ind]; } } for (ind=24;ind<=24;ind++) { cout <<"Informe o sexo: "; cin >>Sexo[ind]; cout <<"Informe a altura: "; cin >>Altura[ind]; if (Sexo[ind]==F || Sexo[ind]==f) { quantF+=ind; somaAF+=Altura[ind]; } else if (Sexo[ind]==M || Sexo[ind]==m) { quantM+=ind; somaAM+=Altura[ind]; } } Você está escrevendo um programa no qual utiliza um vetor de 15 elementos do tipo caractere denominado LETRAS e precisa contar quantas posições do vetor armazenam a letra "A" ou a letra "E" e guardar o total na variável QuantAE. O trecho de código capaz de realizar essa contagem é: for (i=1;i<=15;i++) { if (LETRAS[i] == "A" && LETRAS[i] == "E") { QuantAE+=1; } } for (i=1;i<=14;i++) { if (LETRAS[i] == "A" || LETRAS[i] == "E") { QuantAE+=; } } for (i=0;i<=14;i++) { if (LETRAS[i] == "A" || LETRAS[i] == "E") { QuantAE+=1; } } for (i=0;i<=14;i++) { if (LETRAS[i] == "A" or LETRAS[i] == "E") { QuantAE=1; } } for (i=0;i=14;i++) { if (LETRAS[i] == ¿A¿ !! LETRAS[i] == ¿E¿) { QuantAE+=1; } } Um vetor é uma estrutura _____________ e _____________ para armazenamento de um _____________ que deve ser _____________. unidimensional - homogênea - único valor - de tipos variados unidimensional - heterogênea - único valor - de tipos variados bidimensional - heterogênea - conjunto de valores - do mesmo tipo unidimensional - homogênea - conjunto de valores - do mesmo tipo bidimensional - homogênea - único valor - do mesmo tipo Você deseja armazenar na variável SOMA a adição entre todos os elementos de um vetor com 10 número reais chamado NUM. O trecho de código que apresenta a estrutura repetitiva que permite que isso seja feito é: for (i=0;i<=9;i++) { SOMA+=NUM[i]; } for (i=0;i<=9) { SOMA=NUM[i]; } for (i=1;i<=10;i++) { SOMA+=NUM[i]; } for (i=0;i<=9;i++) { SOMA=SOMA[i]+NUM } for (i=0;i=9;i++) { SOMA=NUM[i] } Observe a matriz: A R E S E U Q E O T S I Qual será o resultado obtido após ser executado o trecho do algoritmo a seguir: for (i = 0; i < 4; i ++) for ( j = 0; j < 2; j++) { aux = mat[i][j]; mat[i][j] = mat[i][3-j]; mat[[i][3 - j] = aux; } S E R A Q U E E I S T O S E R A Q U E E I S T O S E R A Q U E E I S T O S E R A Q U E E I S T O S E R A Q U E E I S T O Um estudante do curso Sistemas de Informação precisa declarar uma matriz bidimensional para armazenar o valor dos 12 salários de 45 funcionários. Qual das opções abaixo o estudante deverá declarar? float funcionario[45][45]; int salario[45], funcionario[12]; float funcionario[45][12]; float funcionario[12],[12]; char funcionario[12][12]; Considere as regras do Portugol Studio e imagine que você precisa escrever um algoritmo que receba uma matriz 3x2 e exiba a quantidade de elementos ímpares armazenados nas linhas pares. A estrutura de repetição capaz de realizar o recebimento dos elementos da matriz M1 e a contagem descrita é: para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2==0){ se (M1[lin][col]%2!=0) { qtdeImpares++ } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2==0){ se (M1[lin][col]%2!=0) { qtdeImpares-- } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2!=0){ se (M1[lin][col]%2!=0) { qtdeImpares++ } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1) se (lin%2){ se (M1%2!=0) { qtdeImpares++ } } } } para (lin=0;lin<=2;lin++) { para (col=0;col<=1;col++) { escreva("Informe a posição [",lin+1,",",col+1,"]: ") leia(M1[lin][col]) se (lin%2==0){ se (M1[lin][col]%2==0) { qtdeImpares++ } } } } Analise a seguinte afirmação: "Um edifício tem 8 andares, cada andar tem 5 apartamentos." Como poderíamos escrever uma declaração de matriz na linguagem C++, seguindo a afirmação acima, sabendo que os dados seriam do tipo int ? int edificio[1][40]; int edificio[5][8]; int edificio[40][1]; int edificio[8][5]; int edificio[40][5]; Na codificação de um programa, na linguagem C++, é necessário a declaração de uma matriz bidimensional para armazenar as notas de 6 disciplinas de uma turma com 30 alunos. Tomando-se como base que o algoritmo considera que os dados estarão organizados na matriz de modo que cada linha represente as notas de um único aluno, marque a alternativa que apresenta de forma correta a declaração desta matriz, chamada notasAlunos. d) float notasAlunos[6,30]; a) float notasAlunos[30][6]; b) float notasAlunos[6][30]; c) float notasAlunos[30,6]; e) float notasAlunos[][]; Analise o código em C++ mostrado abaixo e assinale a alternativa que descreve corretamente a sua execução: #include < iostream > usingnamespace std; int main() { int p, num[50]; for (p = 0; p <= 49; p++) { cout << "Digite um valor : "; cin >> num[p]; } for (p = 0; p <= 49; p++) { if (num[p] % 2 == 0 && num[p] > 30) cout << num[p] << "\t"; } system("pause"); return 0; } O código armazenará em um vetor 50 números inteiros e imprimirá todos os números que sejam maiores que 30. O código armazenará em um vetor 50 números inteiros e imprimirá todos os 50 números. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números ímpares e que sejam maiores que 30. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam menores que 30. O código armazenará em um vetor 50 números inteiros e imprimirá somente os números pares e que sejam maiores que 30. Considere os seguintes valores de entrada: 1, 2, 3, 4, 5, 6, 7, 8 e 9 e ainda, o programa abaixo. Marque a resposta que mostra o que será exibido na tela. #include < iostream > using namespace std; int main() { int lin, col, mat[3][3]; for (lin=0; lin<3; lin++) for(col=0; col<3; col++) { cout<< "\nEntre com o elemento da matriz:"; cin>> mat[lin][col]; } for (lin=0; lin<3; lin++) cout << mat[lin][lin]<<"\n"; system("pause"); return 0; } 1 2 3 4 5 6 7 8 9 1 2 3 1 5 9 1 3 5 7 9 2 4 6 8 Em uma aplicação em C/C++, a matriz ESTOQUE [3][4] armazena, em cada uma de suas linhas, a quantidade estocada de produtos no último quadrimestre (4 meses). Sabendo-se que a declaração de uma matriz em C/C++ se dá da forma: < tipo de dado> nome [nºde linhas][nºde colunas]; Para obter o total estocado no primeiro mês do quadrimestre, o programa deverá: Somar todas as linhas de todas as colunas. Somar todas as colunas da linha índice 0. Somar todas as linhas da coluna índice 1. Somar todas as colunas da linha índice 1 Somar todas as linhas da coluna índice 0.
Compartilhar