Faculdade Politécnica de Campinas Lista de Exercícios – 09/04/2008 1.) Faça um programa em “C” que permita o usuário digitar 2 números quaisquer e exiba uma tabela contendo o número, o quadrado do número, o cubo do numero, a raiz quadrado do número. Ex: 1o. Número: 5 2o. Número: 9 Saída: 5 6 7 8 9 25 36 49 64 81 125 216 343 512 729 2.23 2.44 2.64 2.82 3.00 2.) Faça um programa em “C” que calcule a seguinte expressão: (não há necessidade de testar se n ou p são negativos e muito menos se p é maior que n) Cn, p n! (n p)!* p! Lembrando que n! (fatorial) 5! = 5*4*3*2*1 = 120 3.) Faça um programa em “C” que realize a soma dos 200 primeiros números desta seqüência lógica abaixo: S 1 1 1 1 1 1 1 ...... 2 4 8 16 32 64 4.) Faça um programa em “C” que permita o usuário digitar dois números inteiros positivos e determine no final quantas vezes o segundo divide exatamente o primeiro. No final exiba o resto também. Se o primeiro não divide o segundo o número de vezes é zero. Não é permita a divisão através da “/ “ e do “Mod”. Realize no final deste exercício dois testes de mesa, com os seguintes valores: 1º.) N1 = 8; N2 = 2 2º.) N1 = 5; N2 = 3 5.) Converta o algoritmo abaixo para um programa em “C” (deixe 2 casas decimais): início declare km,hect,dam,m,dec,cm,mm: reais leia(km) hect km * 10 dam hect * 10 m dam * 10 dec m * 10 cm dec * 10 mm cm * 10 escreva hect, dam, m,dec, cm, mm fim 6.) Faça um programa em “C” que permita o usuário digitar 2 números quaisquer e exiba uma tabela contendo o número, o quadrado do número, o cubo do numero, a raiz quadrado do número. Ex: 1o. Número: 5 2o. Número: 9 Saída: 5 6 7 8 9 25 36 49 64 81 125 216 343 512 729 2.23 2.44 2.64 2.82 3.00 7.) Faça um programa em “C” que permita o usuário digitar um número inteiro qualquer de até 3 algarismos e exiba este número invertido: Entrada: 345 Saída: 543 8.) Converta o algoritmo abaixo para um programa em “C”(deixe 2 casas decimais): início declare idade,mes,dias,horas,min,seg: reais leia(idade) mes idade * 12 dias mes * 30 horas dias * 24 min horas * 60 seg min * 60 escreva mes, dias, horas, min, seg fim 9.) Sabe-se que uma arroba equivale a 14,687 kg. Monte uma tabela de 1 a 20 exibindo a quantidade de arrobas, o equivalente em kilos e o equivalente em gramas. Ex: 1 arroba(s) 14,687 kilos 14687 gramas 2 arroba(s) 29,374 kilos 29374 gramas 3 arroba(s) 44,061 kilos 44061 gramas ... .... 20 arroba(s) 293,74 kilos 293740 gramas 10.) Faça um programa em “C” que permita o usuário digitar dois números inteiros em duas variáveis distintas. Feito isso realize a soma do número da dezena do primeiro número com a unidade do segundo número. Para ficar simples, determine que o número digitado tem no máximo 3 algarismos. Ex: A 234 B 678 Soma = 3 + 8 11 11.) Implementar um programa em “C” para calcular o valor de ex. O valor de X deverá ser digitado. O valor “Ex” será calculado pela soma dos 100 primeiros termos da série a seguir: x2 Ex 1 + x + x3 + 2! x4 + 3! + ..... 4! 12.) Converta o algoritmo abaixo para um programa em “C”(deixe 2 casas decimais): início declare nota1,nota2,media: reais leia(nota1) leia(nota2) media (nota1 * 2 + nota2 * 3)/5 escreva media se (media >= 5) então início escreva “Aprovado” fim senão início escreva “Exame Final” fim fim 13.) Sabendo que 1 alqueire mineiro é igual a 48.400 m2; 1 alqueire do norte é igual a 27.255 m2 e um alqueire paulista é igual a 6.000 m2; monte uma tabela de conversão de alqueire para metros quadrados de 10 a 30(inclusive); mostrando o equivalente em alqueires mineiros, do norte e paulista.(adote 3 casas após a vírgula) Exemplo: ALQ. MINEIROS NORTE PAULISTA 10 484.000 272.550 60.000 11 532.400 299.805 66.000 e assim por diante.... 14.) Faça um programa em “C” que permita o usuário digitar dois números inteiros em duas variáveis distintas. Feito isso realize a subtração do número da centena do primeiro número com a dezena do segundo número. Para ficar simples, determine que o número digitado tem no máximo 3 algarismos. Ex: A 812 B 327 Subtração = 8 - 2 6 15.) Faça um programa em “C” que solicite as variáveis hora,minuto e segundo atuais e ainda um tempo qualquer em segundos. Após todas as informações disponíveis,calcular e mostrar o novo horário que será após a passagem dos segundos informados. Exemplo: 12:50:35 + 10 segundos 12:50:45 10:20:50 + 5000 segundos 11:44:10 16.) Faça um programa em “C” que permita o usuário digitar dois números inteiros, realize a soma e exiba a resposta em decimal, hexadecimal, octal e binário 17.) Uma construtora recebe barras de ferro de 20 metros, 35 metros e 45 metros. Em sua linha de montagem, elas devem ser cortadas da seguinte forma: Barras de 20 metros: de 3 em 3 até 15 metros, e de 5 em 5 metros o restante Barras de 35 metros: de 3 em 3 até 15 metros, e de 5 em 5 metros o restante Barras de 45 metros: de 3 em 3 até 15 metros, e o restante de 10 em 10 metros Faça um programa em “C”, para automatizar esta rotina da construtora, que tenha como entrada o comprimento da barra, e que mostre o resultado final deste processo. Exemplo: Vamos supor a digitação de 20 metros: (no monitor sairia) corte 1 (corte de 3 metros) corte 2 (corte de 3 metros) corte 3 (corte de 3 metros) corte 4 (corte de 3 metros) corte 5 (corte de 3 metros) corte 6 (corte de 5 metros) 18.) Faça um algoritmo que exiba os 30 primeiros números desta seqüência de “Bergamash”: (para/enquanto) 1 1 1 3 5 9 17 ..... 19.) Determinar o máximo divisor comum entre dois números inteiros positivos. quociente resto 126 6 6 20 2 3 6 0 3 2 dividendo/divisor mdc (126,20) = 2 Na primeira divisão um dos dividendos é um dos números dados e o divisor é o outro. Nas divisões sucessivas o dividendo é substituído pelo divisor e o divisor pelo resto. A última divisão ocorre quando o respectivo resto for zero. O valor do mdc é o valor do último divisor. Cuidado: sempre que aparecer uma mensagem “...missing ; “ você deve ter esquecido de colocar “;” na linha anterior Cuidado com os tipos de variáveis: %d int %f float No scanf não coloque espaços em branco dentro das aspas: scanf(“ % d”, &A); isto está errado Na frente da linha do if não coloque ; if (a > 10); isto está errado Na frente da linha do for não coloque ; for (i=1;i<=10;i++) ; isto está errado Menu Principal 1 – Prova Algoritmos 2 – Prova A 3 – Prova B 4 – Exercícios Extra 5 – Temperatura 6 – Sair Opção: Prova Algoritmos 1 – Exercício 1 2 – Exercício 2 3 – Exercício 3 4 – Exercício 4 5 – Voltar Opção: Prova A 1 – Exercício 5 2 – Exercício 6 3 – Exercício 7 4 – Voltar Opção: Prova B 1 – Exercício 8 2 – Exercício 9 3 – Exercício 10 4 – Exercício 11 5 – Voltar Opção: Exercícios Extra 1 – Exercício 12 2 – Exercício 13 3 – Exercício 14 4 – Exercício 15 5 – Exercício 16 6 – Exercício 17 7 – Exercício 18 8 – Exercício 19 9 – Voltar Opção: Temperatura 1 – TC TF 2 – TC TK 3 – TF TC 4 – TF TK 5 – TK TC 6 – TK TF 7 – Voltar Opção: