Baixe o app para aproveitar ainda mais
Prévia do material em texto
SOLUÇÃO DE PROBLEMAS E PENSAMENTO COMPUTACIONAL 1. Para verificar o resto da divisão de um número inteiro por outro, utiliza-se no Portugol o operador %. Por exemplo: 5%2 tem como resultado 1. 14%3 tem como resultado 2. 12%6 tem como resultado 0. Observe a figura, a seguir, com um pequeno programa em Portugol: Assinale a alternativa que poderia conter a saída no console de uma execução válida deste programa: https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 Data Resp.: 29/04/2022 19:36:29 Explicação: A resposta correta é: 2. Observe a sequência a seguir: 3, 15, 35, 63, 99, ... O próximo termo é: 121 134 143 195 110 Data Resp.: 29/04/2022 19:44:08 Explicação: A resposta correta é: 143 TIPOS DE DADOS, EXPRESSÕES, OPERADORES E TABELA VERDADE 3. QUESTÃO (5298342) SEM ENUNCIADO. 4. Considerando a linguagem de programação C, para uma variável armazenar "números de ponto flutuante", deve ser declarada como: real numeric int https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 point float Data Resp.: 29/04/2022 19:44:25 Explicação: A resposta correta é: float. COMANDOS DE ENTRADA E SAÍDA 5. Observe o trecho do código em C a seguir. Não esqueça que o operador % significa resto da divisão inteira. #include void main(){ int n, i; i = 20; n = 2*(i%3); printf("n = %d", n); } Assinale a alternativa que representa o que será impresso na tela. n = 3 n = 1 n = 2 n = 4 n = 12 Data Resp.: 29/04/2022 19:45:46 Explicação: A resposta correta é: n = 4 6. Considere o seguinte programa escrito em C. https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 #include void main(){ int num; printf("Entre com um inteiro:\n"); scanf("%f", &num); printf("num = %f \n", num); } Embora o programa não apresente erro de compilação, assinale a alternativa que apresenta um possível motivo para o seu mau funcionamento. A função scanf deveria ter sido invocada com scanf("%f", num). A função scanf deveria ter sido invocada com scanf("%d", num). A função printf deveria ter sido invocada com printf("num = %d \n", num). As funções scanf e printf deveriam ter sido invocadas com "%d", e não "%f". As funções scanf e printf deveriam ter sido invocadas com "%c", e não "%f". Data Resp.: 29/04/2022 19:47:04 Explicação: A resposta correta é: As funções scanf e printf deveriam ter sido invocadas com "%d", e não "%f". ESTRUTURAS DE DECISÃO 7. (Baseado em CESPE - 2018 - ABIN - Oficial Técnico de Inteligência - Área de Tecnologia da Informação) Marque a opção que representa a seguinte lógica de programação, porém usando apenas estruturas do tipo if simples. A expressão a seguir especifica que: 1 será adicionado a x, se x for maior que 0; 1 será subtraído de x, se x for menor que 0; o valor de x será mantido, se x for igual a zero. if(x>0) x++; if(x<0) x--; https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 if(x>=0) x++; if(x<=0) x--; if(x>0) x++; if(x<0) x++; if(x>0) x--; if(x<0) x++; if(x>0) x--; if(x<0) x--; Data Resp.: 29/04/2022 19:48:38 Explicação: A resposta correta é: if(x>0) x++; if(x<0) x--; 8. (INMETRO - 200) #include int main(void){ int i; printf("F = "); scanf("%d",&i); switch (i) { case 0 : printf("Maca"); break; case 10 : printf("Abacate"); break; case 20 : printf("Banana"); break; case 30 : printf("Pera"); break; https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 case 40 : printf("Uva"); break; default : printf("Caju"); } } Considerando o código em linguagem C apresentado acima, assinale a opção correta. A instrução switch é utilizada como um laço de repetição com número definido de iterações. O termo printf especifica uma diretiva de compilação. O termo stdio.h especifica um arquivo de biblioteca dinâmica de funções. A função principal foi especificada para aceitar um argumento de entrada do tipo inteiro. A função scanf trabalha com um argumento de entrada, dado pelo endereço da variável a ser lida. Data Resp.: 29/04/2022 19:52:23 Explicação: A resposta correta é: A função scanf trabalha com um argumento de entrada, dado pelo endereço da variável a ser lida. ESTRUTURAS DE REPETIÇÃO 9. Considere o seguinte código escrito em linguagem C: int num,ind,soma=0; for (ind=1;ind<=5;ind++) { scanf ("%d",&num); if (num%2 == 0) https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 soma=soma+num; } printf("%d",soma); Assinale a opção que apresenta corretamente a saída do programa para os seguintes dados de entrada: 2 4 8 5 7: 26 14 15 27 12 Data Resp.: 29/04/2022 19:54:33 Explicação: A resposta correta é: 14 VETORES E MATRIZES 10. Assinale a alternativa que apresenta a declaração de um vetor (100 posições de inteiros) e uma matriz (4x5 de caracteres): int vet[100]; char mat[4,5] int vet[100]; char mat[4][5] int vet[1,100]; mat[10,20] int vet; char mat; real mat[10]; char vet[4][5] Data Resp.: 29/04/2022 20:07:34 Explicação: A resposta correta é: int vet[100]; char mat[4][5] https://simulado.estacio.br/bdq_simulados_exercicio_ensineme.asp?num_seq_aluno_turma=160023707&cod_hist_prova=282332035&num_seq_turma=7014122&cod_disc=EEX0006 Questão Acerto: 1,0 / 1,0 Considere o seguinte programa escrito em C. Lembre-se que o operador % significa resto da divisão inteira. #include void main(){ int num; printf("Entre com um inteiro:\n"); scanf("%d", &num); num = num + num%3; printf("num = %d \n", num); } Após a execução desse trecho, suponha que o usuário tenha entrado com o valor 5. Assinale a alternativa que contém, corretamente, o que será exibido na tela. num = 2 num = 8 num = 5 num = 7 num = 6 Respondido em 29/04/2022 20:12:27 Explicação: A respsota correta é: num = 7 2a Questão Acerto: 1,0 / 1,0 Considere o seguinte programa escrito em C. #include void main(){ int num; printf("Entre com um inteiro:\n"); scanf("%f", &num); printf("num = %f \n", num); } Embora o programa não apresente erro de compilação, assinale a alternativa que apresenta um possível motivo para o seu mau funcionamento. As funções scanf e printf deveriam ter sido invocadas com "%c", e não "%f".A função scanf deveria ter sido invocada com scanf("%f", num). A função scanf deveria ter sido invocada com scanf("%d", num). A função printf deveria ter sido invocada com printf("num = %d \n", num). As funções scanf e printf deveriam ter sido invocadas com "%d", e não "%f". Respondido em 29/04/2022 20:18:09 Explicação: A resposta correta é: As funções scanf e printf deveriam ter sido invocadas com "%d", e não "%f". 3a Questão Acerto: 1,0 / 1,0 (INMETRO - 200) #include int main(void){ int i; printf("F = "); scanf("%d",&i); switch (i) { case 0 : printf("Maca"); break; case 10 : printf("Abacate"); break; case 20 : printf("Banana"); break; case 30 : printf("Pera"); break; case 40 : printf("Uva"); break; default : printf("Caju"); } } Considerando o código em linguagem C apresentado acima, assinale a opção correta. A instrução switch é utilizada como um laço de repetição com número definido de iterações. A função principal foi especificada para aceitar um argumento de entrada do tipo inteiro. A função scanf trabalha com um argumento de entrada, dado pelo endereço da variável a ser lida. O termo stdio.h especifica um arquivo de biblioteca dinâmica de funções. O termo printf especifica uma diretiva de compilação. Respondido em 29/04/2022 20:18:38 Explicação: A resposta correta é: A função scanf trabalha com um argumento de entrada, dado pelo endereço da variável a ser lida. 4a Questão Acerto: 1,0 / 1,0 (Procuradoria Geral do Estado - RO (PGE/RO) 2015) No contexto do comando switch e do uso do comando break em seu interior, na linguagem de programação C, é correto afirmar que: quando um comando break é executado, o comando switch é encerrado e o fluxo de controle passa para o próximo comando após o fim do comando switch; comandos na cláusula case default de um comando switch são executados apenas se nenhuma das cláusulas case anteriores possuir um comando break; toda cláusula case de um comando switch, incluindo a cláusula case default, deve conter um comando break; não é possível executar comandos de uma das cláusulas case de um comando switch na mesma execução desse comando. os comandos na cláusula case default de um comando switch são executados apenas se nenhuma das cláusulas case anteriores possuir um comando break; Respondido em 29/04/2022 20:20:27 Explicação: A resposta correta é: quando um comando break é executado, o comando switch é encerrado e o fluxo de controle passa para o próximo comando após o fim do comando switch; 5a Questão Acerto: 1,0 / 1,0 Considere o seguinte código escrito em linguagem C: int num,ind,soma=0; for (ind=1;ind<=5;ind++) { scanf ("%d",&num); if (num%2 == 0) soma=soma+num; } printf("%d",soma); Assinale a opção que apresenta corretamente a saída do programa para os seguintes dados de entrada: 2 4 8 5 7: 27 26 12 15 14 Respondido em 29/04/2022 20:20:44 Explicação: A resposta correta é: 14 6a Questão Acerto: 1,0 / 1,0 Assinale a alternativa que apresenta a declaração de um vetor (100 posições de inteiros) e uma matriz (4x5 de caracteres): int vet; char mat; int vet[100]; char mat[4,5] real mat[10]; char vet[4][5] int vet[1,100]; mat[10,20] int vet[100]; char mat[4][5] Respondido em 29/04/2022 20:21:00 Explicação: A resposta correta é: int vet[100]; char mat[4][5] 7a Questão Acerto: 1,0 / 1,0 Observe a sequência a seguir: 3, 15, 35, 63, 99, ... O próximo termo é: 143 121 134 110 195 Respondido em 29/04/2022 20:21:09 Explicação: A resposta correta é: 143 8a Questão Acerto: 0,0 / 1,0 Observe a sequência a seguir: 11021, 11032, 11053, 11074, 11115... O próximo termo é: 11106 11051 11156 11116 11136 Respondido em 29/04/2022 20:23:31 Explicação: Devemos analisar pelos pares. Do primeiro par (11032) até o segundo da sequência (11074) seria como se somasse 21+21 totalizando 42. Do segundo ao quarto somaria 41 mais 21 que seria 62. Somando 62 + 11074 temos a resposta 11136. 9a Questão Acerto: 1,0 / 1,0 Em relação a tipos de dados, atribua V (verdadeiro) ou F (falso) às afirmativas a seguir: ( ) char é um tipo simples. ( ) double é um tipo estruturado. ( ) float é um tipo simples. ( ) int é um tipo simples. ( ) void é um tipo estruturado. Assinale a alternativa que apresenta a sequência correta: V, V, F, F, F F, F, V, F, V F, F, F, V, V F, V, V, F, V V, F, V, V, F Respondido em 29/04/2022 20:25:11 Explicação: A resposta correta é: V, F, V, V, F 10a Questão Acerto: 1,0 / 1,0 Analise a tabela a seguir: p q Valor lógico 1 1 1 1 0 1 0 1 1 0 0 0 A operação lógica realizada foi: Negação Interjeição Disrupção Disjunção Conjunção Respondido em 29/04/2022 20:26:38 Explicação: A resposta correta é: Disjunção. 1a Questão Acerto: 1,0 / 1,0 Considere o seguinte programa escrito em C. Lembre-se que o operador % significa resto da divisão inteira. #include void main(){ int num; printf("Entre com um inteiro:\n"); scanf("%d", &num); num = num + num%3; printf("num = %d \n", num); } Após a execução desse trecho, suponha que o usuário tenha entrado com o valor 5. Assinale a alternativa que contém, corretamente, o que será exibido na tela. num = 2 num = 8 num = 5 num = 7 num = 6 Respondido em 31/05/2022 11:28:33 Explicação: A respsota correta é: num = 7 2a Questão Acerto: 1,0 / 1,0 Observe o trecho do código em C a seguir. Não esqueça que o operador % significa resto da divisão inteira. #include void main(){ int n, i; i = 20; n = 2*(i%3); printf("n = %d", n); } Assinale a alternativa que representa o que será impresso na tela. n = 12 n = 3 n = 1 n = 4 n = 2 Respondido em 31/05/2022 11:29:10 Explicação: A resposta correta é: n = 4 3a Questão Acerto: 1,0 / 1,0 (INMETRO - 200) #include int main(void){ int i; printf("F = "); scanf("%d",&i); switch (i) { case 0 : printf("Maca"); break; case 10 : printf("Abacate"); break; case 20 : printf("Banana"); break; case 30 : printf("Pera"); break; case 40 : printf("Uva"); break; default : printf("Caju"); } } Considerando o código em linguagem C apresentado acima, assinale a opção correta. A função scanf trabalha com um argumento de entrada, dado pelo endereço da variável a ser lida. A instrução switch é utilizada como um laço de repetição com número definido de iterações. A função principal foi especificada para aceitar um argumento de entrada do tipo inteiro. O termo stdio.h especifica um arquivo de biblioteca dinâmica de funções. O termo printf especifica uma diretiva de compilação. Respondido em 31/05/2022 11:30:00 Explicação: A resposta correta é: A função scanf trabalha com um argumento de entrada, dado pelo endereço da variável a ser lida. 4a Questão Acerto: 1,0 / 1,0 (Procuradoria Geral do Estado - RO (PGE/RO) 2015) No contexto do comando switch e do uso do comando break em seu interior, na linguagem de programação C, é correto afirmar que: os comandos na cláusula case default de um comando switch são executados apenas se nenhuma das cláusulas case anteriores possuir um comando break; toda cláusula case de um comando switch, incluindo a cláusula case default, deve conter um comando break; quando um comando break é executado, o comando switch é encerrado e ofluxo de controle passa para o próximo comando após o fim do comando switch; não é possível executar comandos de uma das cláusulas case de um comando switch na mesma execução desse comando. comandos na cláusula case default de um comando switch são executados apenas se nenhuma das cláusulas case anteriores possuir um comando break; Respondido em 31/05/2022 11:30:19 Explicação: A resposta correta é: quando um comando break é executado, o comando switch é encerrado e o fluxo de controle passa para o próximo comando após o fim do comando switch; 5a Questão Acerto: 0,0 / 1,0 Assinale a alternativa que corresponde ao enunciado: Faça um programa que leia vinte números inteiros e positivos e mostre o menor número. controle=1; for (cont=1;cont<=20;cont++) { scanf ("%d",&num); if (controle==1) menor=num; else if (num<menor)< span=""></menor)<> menor=num; } controle=0; for (cont=1;cont<=20;cont++) { scanf ("%d",&num); if (controle==1) menor=num; else if (num<menor)< span=""></menor)<> menor=num; controle++; } controle=1; while (cont<=20) { scanf ("%d",&num); if (controle==1) menor=num; else if (num<menor)< span=""></menor)<> menor=num; controle++; } controle=1; for (cont=1;cont<=20;cont++) { scanf ("%d",&num); if (controle==1) menor=num; else if (num<menor)< span=""></menor)<> menor=num; controle++; } controle=1; for (cont=1;cont<=10) { scanf ("%d",&num); if (controle==1) menor=num; else if (num<menor)< span=""></menor)<> menor=num; controle++; } Respondido em 31/05/2022 11:32:59 Explicação: A resposta correta é: controle=1; for (cont=1;cont<=20;cont++) { scanf ("%d",&num); if (controle==1) menor=num; else if (num menor=num; controle++; } 6a Questão Acerto: 0,0 / 1,0 É preciso verificar se o conteúdo da variável NUM existe ou não em um vetor de 10 posições de inteiros, de nome VET. Assinale a alternativa que apresenta o correto código em linguagem C para tal: ind=1; achou=false; while (ind<10 && achou=false) { If (num==vet[ind]) achou=true else ind++; } ind=10; achou=false; while (ind<1 && achou=true) { If (num==vet[ind]) achou=true else ind++; } ind=0; achou=false; while (ind<10 && achou=true) { If (num==vet[ind]) achou=true else ind++; } ind=0; achou=false; while (ind<10 && achou=false) { If (num==vet[ind]) achou=true else ind++; } ind=10; achou=false; while (ind<1 && achou=true) { If (num==vet[ind]) achou=true else ind--; } Respondido em 31/05/2022 11:35:16 Explicação: A resposta correta é: ind=0; achou=false; while (ind<10 && achou=false) { If (num==vet[ind]) achou=true else ind++; } 7a Questão Acerto: 1,0 / 1,0 Observe a sequência a seguir: 3, 15, 35, 63, 99, ... O próximo termo é: 195 121 143 134 110 Respondido em 31/05/2022 11:36:19 Explicação: A resposta correta é: 143 8a Questão Acerto: 0,0 / 1,0 Para verificar o resto da divisão de um número inteiro por outro, utiliza-se no Portugol o operador %. Por exemplo: 5%2 tem como resultado 1. 14%3 tem como resultado 2. 12%6 tem como resultado 0. Observe a figura, a seguir, com um pequeno programa em Portugol: Assinale a alternativa que poderia conter a saída no console de uma execução válida deste programa: Digite um número: 21 O número 21 não é multiplo de5\n Digite um número: 25 O número numero é multiplo de 5 Digite um número: 25 O número 25 não é multiplo de 5 Digite um número: 25 leia(numero) O número 25 é multiplo de 5 Digite um número: 21 O número 21 não é multiplo de 5 Respondido em 31/05/2022 11:35:58 Explicação: A resposta correta é: Digite um número: 21 O número 21 não é multiplo de 5 9a Questão Acerto: 1,0 / 1,0 Considerando a linguagem de programação C, para uma variável armazenar "números de ponto flutuante", deve ser declarada como: numeric float real point int Respondido em 31/05/2022 11:36:42 Explicação: A resposta correta é: float. 10a Questão Acerto: 1,0 / 1,0 Considere o seguinte segmento de código na linguagem C: int a=3, b=2, c; c=a!=b; Assinale a alternativa que apresenta os valores das variáveis término da execução: 3, 2, 3 2, 2, 1 3, 2, 1 3, 3, 1 3, 3, 3 Respondido em 31/05/2022 11:37:33 Explicação: A resposta correta é: 3, 2, 1.
Compartilhar