Buscar

P1 2009 gabarito

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

INF01202 – ALGORITMOS E PROGRAMAÇÃO 1a PROVA 2009/1 
Para todos os programas, omita os cabeçalhos de bibliotecas. 
Coloque comentários que mostrem o funcionamento dos comandos ou dos 
trechos de programa. OBS: As soluções abaixo devem ser consideradas sugestões, 
apenas, ou seja, sua solução pode ser diferente e mesmo assim estar correta! 
NOME: 
 
Seja o programa a seguir: 
 
#include <stdio.h> 
 
int main () 
{ 
int x, i, j; 
 
x = 8; 
for (i = 2; i < 5; i++) 
{ 
j= 3; 
while (j > 0) 
{ 
x = x+1; 
j = j-1; 
} 
printf( "X : %5d\n", x ); 
} 
printf("- Fim - \n"); 
return 0; 
} 
 
 
SAIDA: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1ª questão – Interpretação de programas (2 pontos) 
Dado o programa acima, não identado, apresente os valores e formato apresentados 
como saída. Reescreva o programa acima de forma identada, ao lado do código, 
substituindo o FOR pelo comando WHILE e o WHILE por um comando DOWHILE, 
gerando as mesmas saídas. 
 
 
2ª questão – Da lista de exercício sobre comandos iterativos. (2 pontos) 
 
Faça um programa que identifica se um número inteiro qualquer é um número 
perfeito. Número perfeito é aquele cuja soma de seus divisores, exceto ele próprio, é igual 
ao número. O programa recebe um inteiro como entrada e fornece como saída uma 
mensagem dizendo se é perfeito ou não. Para identificar se é divisor use o resto da 
divisao: numero % divisor = = 0 
 
 Ex.: 6 = 1 + 2 + 3 28 = 1 + 2 + 4 + 7 + 14 
 
 
3ª questão – Arranjos (3 pontos) 
 
Faça um programa completo para o seguinte algoritmo : 
1. Preencher matriz 6 x 4 com os seguintes valores inteiros: 
0 - sempre que o índice da linha for igual ao da coluna; 
1 - sempre que o índice da linha for menor que o da coluna; e 
2 - nos demais casos. 
2. Copie para um vetor de 20 posições, os elementos não zero desta matriz. 
 
4ª questão – Seleção múltipla e estruturação de programa. (3 pontos) 
Uma sorveteria vende 3 produtos diferentes, cada um com um preço. Considere os 
dados da tabela abaixo já armazenados em 3 vetores, um deles vetor de strings (ou seja, 
uma matriz de caracteres). Ofereça ao cliente as opções de compra através de um menu 
com apenas 2 opções: 1 – Compra e 2 – Sai do Programa. 
Apresente as opções de compra ao usuário num menu, leia o código referente a 
escolha e o número de unidades compradas do produto e imprima o preço total a pagar. A 
cada passagem do laço de interação com o usuário, somente um produto é comprado e 
apresentado o valor da compra ao usuário. Os cálculos para o preço final e as informações 
apresentadas no menu devem usar as informações armazenadas nos arranjos. 
 
Cod Produto Preço (R$) 
A refrigerante 1.80 
B suco de laranja 2.50 
C casquinha simples 1.00

Outros materiais