INF 1004 • Programação I • 2012.1 • turma 3WA • lista 06 Repetições iterativas 1. Escreva um programa que imprima os números inteiros de 1 a 100. 2. Escreva um programa que imprima os números inteiros de 100 a 1, em ordem decrescente. 3. Escreva um programa que imprima os números pares no intervalo de 1 a 300. 4. Escreva um programa que imprima os números ímpares no intervalo de 531 a 750. 5. Escreva um programa que leia dois números e imprima os números inteiros pares entre esses números, inclusive. Considere que o primeiro número lido será sempre menor que o segundo. 6. Escreva um programa que leia dois números e imprima os números inteiros pares entre esses números, inclusive. Considere que o primeiro número lido poderá ser maior que o segundo. 7. Escreva um programa que leia um número inteiro não negativo representando um limite, um incremento inteiro não negativo e imprima os números inteiros de 0 até o limite, com o incremento lido. Por exemplo: Digite o limite: 10 Digite o incremento: 3 0 3 6 9 8. Escreva um programa que leia um número inteiro não negativo e imprima os números ímpares menores do que este número. Por exemplo: Digite um numero inteiro nao negativo: 7 1 3 5 9. Escreva um programa que leia um número inteiro (num) e imprima os num primeiros números pares. Digite um numero inteiro nao negativo: 6 Os 6 primeiros numeros pares sao: 2 4 6 8 10 12 10. Escreva um programa que leia um algorismo e imprima a sua tabuada no seguinte formato (observe atentamente o alinhamento): Digite um algarismo de 0 a 9: 5 5 x 1 = 5 x 2 = 10 5 ... 5 x 10 = 50 11. Escreva um programa que imprima as tabuadas dos números inteiros de 0 a 9, no formato acima. 12. Escreva um programa que imprima o somatório e o produtório de 1 a 100. 13. Escreva um programa que leia um número inteiro não negativo e imprima o somatório e o produtório de 1 a esse número. Simone Diniz Junqueira Barbosa [email protected] Departamento de Informática Rua Marquês de São Vicente, 225 • Gávea • 22451-900 Rio de Janeiro • RJ • Tel. (21) 3527-1500 r.4353 • Fax (21) 3527-1530 INF 1004 • Programação I • 2012.1 • turma 3WA • lista 06 • Repetições iterativas 14. [tarefa 5] Escreva uma função (e um programa para testá-la) que retorne a soma dos n primeiros números naturais ímpares (onde n é passado como parâmetro para a função). Essa função deve obedecer o protótipo: int soma_impares (int n); 15. Escreva um programa que leia dois números inteiros, representando e imprima os múltiplos de 5 entre eles. Por exemplo: Digite dois numeros inteiros nao negativos: 3 17 5 10 15 Perguntas: o que acontece se fim for menor que início? Seu programa continua funcionando? 16. Escreva um programa que leia um número inteiro positivo e imprima o seu fatorial. Lembre-se que: n! = n x (n -1) x (n - 2) x ... x 1 0! = 1! = 1 17. Implemente uma função (e um programa para testá-la) que teste se um número inteiro é primo ou não. Essa função deve obedecer o seguinte protótipo: int primo (int n); Onde o parâmetro n é o número a ser testado e a função retorna 1 se n for primo e 0 caso contrário. Obs. Por definição, 0 e 1 não são primos. 18. [tarefa 3] Escreva um programa que leia o número de alunos de uma turma, depois leia as notas de cada aluno, e imprima a média aritmética dos números lidos. Por exemplo: Digite o numero de alunos: 7 Digite as notas dos alunos: 4 6 5 0 3.2 10 9 -1 A media da turma e’: 5.31 19. [tarefa 84] Escreva um programa que leia várias notas de alunos, até que seja lido um valor negativo, e imprima a média aritmética dos números lidos (exceto o número negativo). Por exemplo: Digite as notas: 4 6 5 0 3.2 10 9 -1 A media das 7 notas e’: 5.31 20. Modifique o programa anterior para imprimir o resultado no seguinte formato: (4.0 + 6.0 + 5.0 + 0.0 + 3.2 + 10.0 + 9.0)/7 = 5.31 21. Escreva um programa que leia várias notas de alunos, até que seja lido um valor negativo, e imprima a média aritmética ( ̅ ) e o desvio padrão (√ ∑ ̅̅̅ ) dos n números lidos. Utilize a função double sqrt(double); da biblioteca math.h para calcular a raiz quadrada de um número. Por exemplo: Digite as notas: 4 6 5 0 3.2 10 9 -1 A media e’: 5.31 O desvio padrao e’: 3.429 22. [tarefa 7] Escreva uma função que retorne uma aproximação do valor de , de acordo com a fórmula de Leibniz: ( ) Página 2 de 4 INF 1004 • Programação I • 2012.1 • turma 3WA • lista 06 • Repetições iterativas Isto é: ∑ Essa função deve obedecer o seguinte protótipo: double pi (int n); Onde o parâmetro n indica o número de termos da série que devem ser utilizados no cálculo de . 23. Escreva um programa que leia 5 números inteiros positivos e imprima o maior deles. 24. Escreva um programa que leia 5 números inteiros (positivos e/ou negativos) e imprima o maior deles. 25. Escreva um programa que leia um número inteiro (num), e a seguir leia num números inteiros positivos e imprima o maior deles. 26. Escreva um programa que leia um número inteiro (num) e a seguir leia num números inteiros (positivos e/ou negativos) e imprima o maior deles. Pergunta: qual é a diferença para o exercício anterior? 27. Escreva um programa que leia uma seqüência de números inteiros terminada por -9999 e imprima o maior, o menor e a média aritmética dos números. O número -9999 não faz parte da seqüência. Por exemplo: Digite uma sequencia de numeros inteiros terminada por -9999: 20 -3 4 -7 1-9999 Maior = 20 Menor = -7 Média = 3 28. Escreva um programa que leia dois números inteiros positivos (X e Y) e calcule XY. 29. Escreva um programa que leia um número inteiro não negativo (num) da entrada e imprima os num primeiros termos da série de Fibonacci. primeiro termo a0 = 1 segundo termo a1 = 1 n-ésimo termo an = an - 1 + an – 2 (o n-ésimo termo é formado pela soma dos 2 termos anteriores) 30. [tarefa 4] Escreva uma função que retorna o n-ésimo termo da série de Fibonacci (e um programa para testá-la): int n_fibonacci (int n); Onde: fibonacci(0) = 1 fibonacci(1) = 1 fibonacci(n) = fibonacci(n-1) + fibonacci(n-2) 31. Escreva um programa que leia um número da entrada e imprima os termos da série de Fibonacci menores que esse valor. 32. [tarefa 47] Você tem um automóvel bicombustível e sabe que é financeiramente mais vantajoso abastecê-lo com álcool, mas que com gasolina sua autonomia é maior. Na prática, você já meidu o Página 3 de 4 INF 1004 • Programação I • 2012.1 • turma 3WA • lista 06 • Repetições iterativas consumo do seu carro e sabe que ele faz 13 km por litro de gasolina e 9 km por litro de álcool. Sua autonomia então pode ser calculada pela fórmula a seguir, onde G é a quantidade (em litros) de gasolina e A de álcool no tanque. Autonomia = 13*G + 9*A Implemente um programa que calcule e imprima a autonomia e custo em função dos combustíveis utilizados, considerando um tanque cheio de 50 litros, com variação de 10 em 10 litros na proporção de gasolina e álcool. Por exemplo: Digite o preço do litro de gasolina: 2.50 Digite o preço do litro de álcool: 1.60 Gasolina Alcool Custo Autonomia 50 0 R$ 125,00 650 km 40 10 R$ 116,00 610 km 30 20 R$ 107,00 570 km ... 33. [tarefa 88 modificada] Uma empresa de transporte de objetos valiosos possui 4 tipos de embalagens básicas com as seguintes dimensões internas (altura, largura e comprimento, respectivamente): caixa 1: 180mm X 135mm X 90mm – para pequenos objetos; caixa 2: 270mm X 225mm X 135mm – para objetos médios; caixa 3: 540mm X 360mm X 270mm – para objetos grandes cujo peso é menor que 10kg; caixa 4: 540mm X 360mm X 270mm – para objetos grandes cujo peso é igual ou superior a 10kg. A embalagem escolhida para um determinado objeto é sempre a mais próxima de suas medidas. Caso nenhuma das embalagens básicas envolva o objeto, este é separado e uma embalagem especial é construída. a) Implemente e teste uma função que receba como parâmetros as medidas de um objeto e retorne o número da embalagem escolhida, ou 0 quando for uma embalagem especial. Esta função deve capturar o peso quando necessário. O protótipo da função deve ser: int tamanho_da_caixa (int alt, int larg, int compr); b) Implemente e teste um programa que leia as medidas de diversos objetos a serem transportados. Para os objetos que podem ser transportados em uma das embalagens básicas, o seu programa deve exibir o número correspondente desta embalagem. Quando o usuário digitar uma altura negativa, o programa deve imprimir a quantidade de embalagens especiais que deverão ser construídas e as dimensões do objeto com maior volume transportado em embalagem especial. Observação: o seu programa deve, obrigatoriamente, utilizar a função do item a). Página 4 de 4