Universidade Federal do Rio de Janeiro Centro de Ciências Matemáticas e da Natureza Núcleo de Computação Eletrônica Curso de Formação de Programadores Disciplina: Técnicas de Programação – 2002-1 Prof. Adriano Joaquim de O Cruz Gabarito 2a Lista de exercícios – 19/03/2002 1) a) Dispõe-se de duas vasilhas com capacidades marcadas de 9 e 4 litros. Mostre a seqüência de passos necessários para colocar em uma terceira vasilha de capacidade desconhecida (maior que 6 litros) um volume de 6 litros. Início Encha a vasilha de 9 litros Encha a vasilha de 4 litros com a de 9 litros (ficam 5 na de 9) Coloque os 5 litros que estão na vasilha de 9 na vasilha de 6 (falta 1 litro) Encha a vasilha de 9 litros Encha a vasilha de 4 litros com a de 9 litros (ficam 5 na de 9) Esvazie a vasilha de 4 litros Encha a vasilha de 4 litros com o que sobrou na de 9 (fica 1 na de 9) Coloque o 1 litro da vasilha de 9 na de 6 (completa 6 litros) Fim b) Como multiplicar dois números inteiros pousando somente somas e/ou subtrações. Início Imprima ‘multiplicador?’ ler multiplicador imprima ‘multiplicando?’ ler multiplicando produto <- 0 se multiplicador < 0 então vezes <- multiplicador * (-1) fim se para i <- 1 até vezes produto <- produto + multiplicando próximo i se multiplicador < 0 então produto <- produto * (-1) fim se imprima multiplicador, ‘*’, multiplicando, ‘ = ‘, resultado Fim 1 de 3 2) Endereço 1000 1001 1002 1003 1004 1005 Conteúdo 0100 0100 0101 0101 0101 0110 0100 1001 0100 0100 0100 0101 Conversão 26+22=64+4=68 26+24+22+20=64+16+4+1=85 26+24+22+21=64+16+4+2=86 26+23+20=64+8+1=73 26+22=64+4=68 26+22+20=64+4+1=69 Caracter ‘D’ ‘U’ ‘V’ ‘I’ ‘D’ ‘E’ 3) a) 3578 b) 8000000000 c) – 456 d) 5.0 e) 12345 válido válido (mas não pode ser armazenado) inválido (não pode ter espaço em branco) inválido (não pode ter ponto) válido 4) a) b) c) d) e) f) g) 1.0 1,0 345 .35 345 567 1,000.00 –12.5 válido inválido inválido inválido inválido inválido válido (não pode vírgula) (deve ter algarismo antes do ponto) (não pode ter espaço em branco) (não pode ter vírgula) 5) Considere um computador de 16 Mbytes. Quantos bits você precisa para poder endereçar cada um dos bytes. 16 Mbytes significam 16 Mega endereços de byte. Portanto 16 = 24 e Mega = 220, significando 20+4=24 bits de endereço. 6) Que tipo você indicaria para armazenar os seguintes dados: a) b) c) d) e) f) g) Número de pacientes atendidos por dia em um hospital. (inteiro) Quantidade de alunos da UFRJ. (inteiro) Se um cliente da empresa é aposentado ou não. (lógico) Preços de produtos alimentícios vendidos em um supermercado. (real) Lista de clientes de uma loja de móveis. (char) Área dos escritórios de sua empresa. (real) Se funcionário tem diploma de segundo grau. (lógico) 7) Quais os nomes de variáveis válidos da lista abaixo. Indique os erros. a) b) c) d) maior area populacao estado_civil (válido) (válido) (válido) (válido) 2 de 3 e) 1preco (inválido, não pode começar com algarismo) f) saldo total (inválido, não pode espaço em branco no meio) 3 de 3