Exercícios - Questões Objetivas

Documentos relacionados
MC-102 Aula 06 Comandos Repetitivos

ESTRUTURAS CONDICIONAIS. Baseado nos slides de autoria de Rosely Sanches e Simone Senger de Souza

ESTRUTURAS CONDICIONAIS. Introdução à Ciência da ComputaçãoI Simone Senger de Souza

Linguagem C (estruturas condicionais)

Faculdade Anglo-Americano Curso de Ciência da Computação Linguagem de Programação. Lista de Exercícios 1

Estruturas de repetição. Objetivos: - Compreender diversos tipos de comandos de repetições disponíveis na linguagem C.

Modulo 4: while do while (limites de variáveis)

Linguagem C Estruturas de Repetição

Linguagem C estruturas de repetição

Aula 05: Condicionais (if / else)

Computação 2. Diego Addan Aula 3. Funções

Linguagem C (repetição)

Aula 03 -Introdução àlinguagc Programação: Estrutura-Repetição. OPL e IC1 Prof: Anilton Joaquim da Silva

Programação: Vetores

Exercícios Repetição

Aula 8 Oficina de Programação Vetores. Profa. Elaine Faria UFU

PROGRAMAÇÃO INSTRUÇÕES DA LINGUAGEM C

Solucionário de. Programação

MC102 Algoritmos e Programação de Computadores

1) Operadores de auto incremento ++ e auto decremento --

Algoritmos e Programação

Aula 12- Variáveis e valores reais

controle de fluxo - condicionais

Aula 5 ESTRUTURAS DE REPETIÇÃO (WHILE)

12 - Dados Estruturados Vetores, Matrizes e Strings

Estruturas de Repetição

imprimir seus quadrados.

Estruturas de Decisão. Adaptado de Deise Saccol

1) Dado o trecho de código a seguir, qual será as saídas se as entradas forem, respectivamente:

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO PRÉ AULA PRÉ AULA 31/08/2015

Algoritmos e Lógica de Programação 80 horas // 4 h/semana. Exercício... Para começar... Resolução... Para começar... Para começar...

NOME DO ALUNO: AVALIAÇÃO SIMULADA

Aula 16: Laços aninhados e desvios

Linguagem C ESTRUTURA DE CONTROLE

Lógica de Programação I

MAC 2166 Introdução à Computação para Engenharia

Vetores são estruturas indexadas utilizadas para armazenar dados de um mesmo tipo: int, char, float ou double. Oexemploaseguirédeumvetordeinteiros:

Lógica de Programação I

Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Terceira Aula Prática - 10 de setembro de 2010

Linguagem C Controle de Fluxo

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO. Prof. Esp. Fabiano Taguchi

Vetores. e o programa deverá ler os valores separadamente:

Aula 14: Repetição (Parte 2)

AVALIAÇÃO SIMULADA. 2ª Questão: (0,75 pontos): O que vai aparecer na tela ao se executar o trecho de código abaixo?

ALGORITMOS E LÓGICA DE PROGRAMAÇÃO

Estrutura do programa

Estruturas de Repetição

Aula 15 Variáveis Indexadas (vetores)

Decisão. Prof. Dr. Silvio do Lago Pereira. Departamento de Tecnologia da Informação Faculdade de Tecnologia de São Paulo

Introdução à Programação. Expressões Booleanas e Comandos Condicionais

Programação Estruturada

Aula 15: Repetição (Parte 3)

SSC300- Linguagens de Programação e Aplicações Profa Vânia de Oliveira Neves. ICMC/USP São Carlos

Universidade Federal de Goiás Instituto de Informática Introdução à Computação Professor: Julliano Rosa Nascimento

ALGORITMOS E TÉCNICAS DE PROGRAMAÇÃO

Introdução à Computação

Aula 4. Comandos de Repetição. Prof. Filipe Mutz.

Linguagem C Controle do Fluxo de Execução. Lógica de Programação

Aula 4 Introdução ao C

Programação Estruturada

Transcrição:

Exercícios - Questões Objetivas Apresentação 02 - Tipos de Dados 1. O nome de uma variável é criado por um programador devendo seguir algumas regras, são listas de nomes válidos, EXCETO: a) Nota1, Nota2, Nota3 b) Aluno, aluno, alunos c) tres, treze, 3_tres d) Tipo_camisa, T_tenis, tamanho e) Media, aprovado, reprovado 2. Sendo A=5, B=3 e C=7, análise as operações a seguir e marque a opção correta. (V é verdadeiro e F é falso) 1. A+B = C 2. B+C < A 3. C < A*B 4. B+C = 2*A 5. C div B > A a) F F V V F b) V F V V F c) F F V V V d) F V V V F e) F V F V F 3. Observe as operações e assinale qual será o valor do real X e do inteiro Y. X 3*2 + 5/2 potencia(3, 2) + raiz(4); Y raiz(9) (5 div 2) + (3 mod 1); a) X = 2.5 e Y = 5 b) X = 1.5 e Y = 3 c) X = 2 e Y = 1.5 d) X = 1.5 e Y = 1 e) X = 1 e Y = 3

4. Selecione a opção que mostre quais são os conectivos lógicos que devem ser colocados nas expressões a seguir para que TODAS sejam verdadeiras. Considere A=2, B=3, C=6 e D=10. 1. ( A+C < D-A)F _ V(D-A = A+C) 2. (B*A = C)V _ V((D div A) < C) 3. ((D mod A) = (C mod B)) V _V ((B mod A) (C mod A)) 4. ((C div A) = B)V _ F(B*C D+A*B) 5. ((D div A)+B) > C+A) _ ((D mod C) (A*A)) a) ou e xou ou xou b) ou xou ou xou e c) e e ou xou ou d) xou e ou xou ou e) ou xou e xou ou 5. Análise a expressão e marque qual será o valor de D. A 6; B 4; C 12; D (C div A) + B (A mod B)*(A div B); a) D = 7 b) D = 13 c) D = 4 d) D = 22 e) D = 3 6. Qual será o valor de D na expressão a seguir. A 5; B 3; C 15; D (C mod A) + potencia((a-b), 2) raiz(c + 2*A) + B; a) D = 12 b) D = 17 c) D = 6 d) D = 13 e) D = 2

7. Como serão as saídas do algoritmo em C, respectivamente? printf( Valor: %f,13.75649); printf( Valor: %.3f,12.34598); printf( Valor: %.1f,13.75649); a) 13.75649, 12.34598 e 13.75649 b) 13.75, 12.348 e 13 c) 13.7564, 12.348 e 13.75649 d) 13.75649, 12.345 e 13.7 e) 13.75649, 12.346 e 13.8 8. Selecione o fragmento de código CORRETO para a leitura de um valor. a) b) c) d) e) int num; printf ( Digite o valor do numero: ); scanf ( %c, &num); int num; printf ( Digite o valor do numero: ); scanf ( %d, num); float num; printf ( Digite o valor do numero: ); scanf ( %d, &num); int num; printf ( Digite o valor do numero: ); scanf ( %d, & int num); int num; printf ( Digite o valor do numero: ); scanf ( %d, &num); 9. Observe o algoritmo a seguir e indique qual será a saída: printf( Nome: Joao Paulo Silva\n ); printf( Idade: 23 anos\n );

printf( \ndias em que trabalhou em Janeiro:\n ); printf( 1\t2\t5\t7\t13\t22\t27 ); a) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1 2 5 7 13 22 27 b) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1 2 5 7 13 22 27 c) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1 2 5 7 13 22 27 d) Nome: Joao Paulo Silva Idade: 23 anos Dias em que trabalhou em Janeiro: 1-2 - 5-7 - 13-22 - 27 e) Nome: Joao Paulo Silva - Idade: 23 anos Dias em que trabalhou em Janeiro: 1, 2, 5, 7, 13, 22, 27 10. Observe o algoritmo em C a seguir e marque a alternativa que representa a resposta da seguinte pergunta: O que será impresso?. #include <stdlib.h> float num; num = 8.456; //printf("valor de num e: %f\n", num);

printf("valor de num e: %d\n", num); //printf("valor de num e: %c\n", num); a) Valor de num e: -583756237 (apenas lixo de memória, um número aleatório qualquer) b) Valor de num e: 8.456000 Valor de num e: 8 Valor de num e: W c) Valor de num e: 8.456 Valor de num e: 8.4 Valor de num e: x d) Valor de num e: 8.456 e) Valor de num e: 8

Apresentação 03 - Estruturas Condicionais 1. Analise o algoritmo e marque qual a sua saída se as entradas forem 62 e 32, respectivamente. principal inteiro A, B; leia(b, A); se (A > B) B A + B; se (A < B) A (B div 2); imprima (A); a) 62 b) 32 c) 31 d) 34 e) 93 2. Escolha a condição que gera a saída 13. principal inteiro num1, num2; num1 13; num2 22; se (????????) imprima (num2); senão imprima (num1); a) (num1 > num2) ou (num2 < 20) b) (num2 > num1) e (num2 < 25) c) (num1 > num2) ou (num1 < 20) d) (num1 = num2) ou (num2 < 25) e) (num1 < num2) e (num2 < 20) 3. Quais serão as saídas do algoritmo a seguir se primeiro as entradas forem, respectivamente, 2, 3 e 5, e então o algoritmo será executado novamente, mas com as entradas 10, 2 e 3. principal

inteiro X, Y, Z; leia(x, Y, Z); se ((X>Y) e (Y*Z < X) ) imprima (Z*Y); senão imprima (X + Z*Y); a) Primeira saída é 25 e a segunda é 22. b) Primeira saída é 17 e a segunda é 6. c) Primeira saída é 13 e a segunda é 18. d) Primeira saída é 17 e a segunda é 16. e) Primeira saída é 6 e a segunda é 17. 4. Quais serão as entradas do algoritmo a seguir se a saída for 2. principal inteiro A, B, C; leia (C, B, A); se ((C>B) ou (A*B > C)) imprima (A); senão imprima (B+C); a) A=3, B=2, C=13 b) A=1, B=11, C=1 c) A=5, B=4, C=17 d) A=7, B=2, C=9 e) A=2, B=3, C=5 5. Qual será a saída do algoritmo se as entradas forem, respectivamente, 4, 7 e 4. principal inteiro A, B, C; leia (A, B, C); se ((A 0) e (B 0) e (C 0)) se ((A = B) e (B = C)) imprima (A + C); senão se ((A = B) ou (A = C) ou (C = B)) imprima (A + B); senão imprima (B - C);

senão imprima (A + B + C); a) 3 b) 4 c) 7 d) 11 e) 15 6. O algoritmo a seguir representa algumas operações de uma calculadora. Primeiro, considerando como entrada 3, o que seria impresso e quantas entradas a mais seriam necessárias se, ao invés de imprimir fosse executado o que está escrito; segundo, considere 5 como entrada. principal inteiro x; imprima( Digite o número: ); leia(x); escolha (x) caso 1: imprima ( Operação de Soma ); caso 2: imprima ( Operação de Multiplicação ); caso 3: imprima ( Operação de Raiz Quadrada ); caso 4: imprima ( Operação de Elevar ao Quadrado ); senão: imprima( Nenhuma Operação ); a) Operação de Raiz Quadrada, uma entrada a mais. Nenhuma Operação, nenhuma entrada a mais. b) Operação de Raiz Quadrada, duas entradas a mais. Nenhuma Operação, nenhuma entrada a mais. c) Operação de Raiz Quadrada, nenhuma entrada a mais. Nenhuma Operação, uma entrada a mais. d) Nenhuma Operação, uma entrada a mais. Operação de Elevar ao Quadrado, nenhuma entrada a mais. e) Operação de Multiplicar, duas entradas a mais. Nenhuma Operação, duas entradas a mais.

7. Observe o algoritmo em C a seguir, qual deve ser sua condição de teste do if e qual deve ser a variável (ou expressão) do printf, para ocorrer a saída Aprovado com 60.00, para as entradas 60 e 60, e o algoritmo continue funcionando para quaisquer valores das variáveis de entrada. #include <stdlib.h> float nota1, nota2; printf ("Digite a primeira nota: "); scanf ("%f", &nota1); printf ("Digite a segunda nota: "); scanf ("%f", &nota2); if (????????????????) printf ("Aprovado com %.2f",??????????????); printf ("Reprovado com %.2f", (?????????????); a) (nota1+nota2 >= 60) (nota1+nota2) b) ((nota1+nota2)/2 >= 60) nota1 c) ((nota1+nota2)/2 > 60) ((nota1+nota2)/2) d) ((nota1+nota2)/2 >= 60) ((nota1+nota2)/2) e) ((nota1+nota2)/2 >= 60) nota2 8. O algoritmo em C a seguir contém um problema, para quais entradas, respectivamente, esse problema ocorrerá? #include <stdlib.h> float num1, num2; printf("digite dois numeros: "); scanf("%f %f", &num2, &num1); printf("\nsoma = %f", num01 + num02); printf("\nsubtracao = %f", num01 - num02); printf("\nmultiplicacao = %f", num01*num02); if(num02 == 0)

printf("\ndivisao = %f", num01/num02); printf("\nnao e possivel divisao por zero!"); a) 13 e 22 b) 7.34 e 29.4456 c) 0 e 14.3 d) 23.999 e 0 e) 2 e 13 9. Você é o gerente de uma loja, um cliente pergunta qual a origem de um determinado produto, por uma tabela seu código é 56, qual é sua resposta ao cliente? #include <stdlib.h> int cod; printf ("Digite o codigo do produto: "); scanf ("%d", &cod); if (cod < 1) printf ("Nao existe esse codigo!"); if (cod >= 1 && cod <= 20) printf ("Europa"); if (cod >= 21 && cod <= 40) printf ("Asia"); if (cod >= 41 && cod <= 60) printf ("America"); if (cod >= 61 && cod <= 80) printf ("Africa"); printf ("Paraguai");

a) Este produto é do Paraguai. b) Este produto é da África. c) Este produto é da Ásia. d) Este produto é da Europa. e) Este produto é do America 10. Em uma determinada escola, a notas dos alunos é data como conceito. Qual a saída do algoritmo em C a seguir se a nota de um aluno for 100? E se for 8.7? #include <stdlib.h> float nota; printf ("Informe o valor da nota\n"); scanf ("%f", &nota); if (nota<0 nota>10) printf ("Nota invalida\n"); if (nota>=9 && nota<=10) printf ("Conceito A\n"); if (nota<9 nota>=7) printf ("Conceito B\n"); if (nota<7 nota>=5) printf ("Conceito C\n"); printf ("Conceito D\n"); a) Nota 100: Conceito A Nota 8.7: Conceito B b) Nota 100: Nota invalida Nota 8.7: Conceito B c) Nota 100: Conceito A Nota 8.7: Conceito C d) Nota 100: Nota invalida Nota 8.7: Conceito C

e) Nota 100: Nota invalida Nota 8.7: Nota invalida

Apresentação 04 - Comandos de Repetição 1. Considere a lista de entradas. Entradas: 2, 9, 47, -7, -11, -49, 47, 30, 100, -100, -120, -47, 14, 114, 13. Quantos números serão impressos? principal inteiro A; leia(a); enquanto (A 100) faça se (A > -10) imprima (A); leia(a); a) 8 números b) 9 números c) 7 números d) 15 números e) 6 números (Observe que nem todos os números precisam ser lidos.) 2. Considere a lista de entradas. Entradas: 2, 9, 47, -7, -11, -49, 47, 30, 100, -100, -120, -47, 14, 114, 13. Quantos números serão impressos? principal inteiro A; faça leia(a); se (A > -10) imprima (A); enquanto (A 100); a) 8 números b) 9 números c) 7 números d) 15 números e) 6 números

(Observe que nem todos os números precisam ser lidos.) 3. Considerando as entradas 3 e 8, marque a alternativa que representa a saída do algoritmo a seguir. principal inteiro i, n1, n2, s; leia (n1, n2); s 0; para ( i n1; i n2; i i + 1) faça s s + 2; imprima ( Resultado: i); a) Resultado: 7 b) Resultado: 8 c) Resultado: 6 d) Resultado: 9 e) Resultado: 12 4. Marque a opção com o fragmento de algoritmo que representa CORRETAMENTE um comando de repetição com variável de controle. a) b) c) d) e) se (a > b) imprima (a); senão imprima (b); enquanto (a 0) faça imprima (a); leia (a); para (i = 1; i < 100; i++) faça imprima (i); faça leia (a); imprima (a); enquanto (a 0);

para (i 1; i < 100; i i + 1) faça imprima (i); 5. Todos os fragmentos de código a seguir imprimem a sequencia de números inteiros PARES de 0 a 100, EXCETO: a) b) c) d) e) for (i=0; i <= 100; i++) if (i%2 == 0) printf ("%d ", i); a = 0; i = 0; while (i <= 100) a = i; if (a%2 == 0) printf ("%d ", a); i++; a = 0; do a = a+2; printf ("%d ", a); while (a <= 100); for (i=0; i <= 100; i=i+2) printf ("%d ", i); a = 0; printf ("Primeiro:\n"); while (a <= 100) if (a%2 == 0) printf ("%d ", a); a++; 6. O algoritmo a seguir tem como objetivo calcular a média dos números lidos, porém, isso não acontece corretamente. Indique a linha em que se encontra o ERRO do código: 1. 2. #include <stdlib.h>

3. 4. 5. 6. float media, soma, num; 7. int i; 8. soma = 0; 9. for (i=0; i < 10; i++) 10. 11. scanf ("%f", &num); 12. soma = soma + num; 13. 14. media = soma/2; 15. printf ("Media dos numeros lidos e': %.2f", media); 16. 17. a) Linha 2 b) Linha 14 c) Linha 15 d) Linha 9 e) Linha 6 7. Qual será a saída do algoritmo a seguir se suas entradas forem, num primeiro momento, 1 e 9, e num segundo, 5 e 3: int i, val1, val2; scanf("%d %d", &val1, &val2); if(val1 > val2) printf ("Primeiro valor deve ser menor que o segundo."); for(i = val1; i <= val2; i++) if(i%2) printf ("%d, ", i); a) 1, 3, 5, 7, 9, Primeiro valor deve ser menor que o segundo. b) 1, 3, 5, 7, 9 Primeiro valor deve ser menor que o segundo.

c) 1, 3, 5, 7, 9, 3, 5, d) 2, 4, 6, 8, Primeiro valor deve ser menor que o segundo. e) 1, 3, 5, 7, 9, 4, 8. Analise o algoritmo em C a seguir e indique qual será a saída, considerando 5 como entrada. #include <stdlib.h> int n,i; float S=1.0; do printf("informe n positivo: "); scanf("%d",&n); while(n<=0); if(n==1) printf("\ns = 1 \n"); for(i=2; i<=n; i++) S+=(float)1/i; printf("\ns = %.2f \n",s); a) S = 3.14 b) S = 12 c) S = 2 d) S = 2.28 e) S = 3 9. Quais as saídas do algoritmo a seguir se a entrada for 3, e depois 5? #include <stdlib.h>

int N, cont, aux=1; float E=1; do printf ("Digite um numero inteiro positivo :"); scanf ("%d",&n); while(n<=0); for(cont=1;cont<=n;cont++) aux *= cont; E += aux; printf ("E = %.2f",E); a) 3.00 e 5.00 b) 10.00 e 154.00 c) 9.00 e 153.00 d) 11.00 e 155.00 e) 14.00 e 41.00 10. Observe atentamente o algoritmo a seguir e responda: qual a quantidade de números que serão lidos? #include <stdlib.h> int Num = 0; while (Num!= 0) printf ("Digite um numero inteiro: "); scanf ("%d", &Num); a) A quantidade de números que forem digitados. b) A quantidade de números que forem digitados até ser digitado 0 (zero). c) A quantidade de números que forem digitados até ser digitado um número negativo. d) A quantidade de números que forem digitados até ser digitado um número que não é inteiro. e) Nenhum número.