Estruturas iterativas
-
Uma pergunta fundamental é um expressão aritmética com dois operandos inteiros não negativos, cujas operações permitidas são soma (+), subtração(-), multiplicação (*) e divisão (/) e que cujo resultado é 42. Escreva um programa que só termine quando o usuário digitar uma pergunta fundamental (um operando, um operador aritmético e outro operando).
Exemplo de execução:
Digite uma pergunta fundamental: 2 + 2 Essa não é uma pergunta fundamental, tente de novo: 1 * 44 Essa não é uma pergunta fundamental, tente de novo: 0 - 42 Essa não é uma pergunta fundamental, tente de novo: 84 / 2 Obrigado!
-
Coelhos:
a) Um homem quer começar a criar coelhos e quer saber quantos coelhos ele terá depois de
meses. Suponha que no primeiro mês ele compra uma parelha de coelhos jovens, que as parelhas amadurecem e reproduzem-se apenas após o segundo mês de vida sem problemas de cruzamento consanguíneo e em todos os meses. Também supunha que cada parelha fértil dá a luz a uma nova parelha e que os coelhos nunca morrem.Assim, no primeiro mês ele terá uma parelha, no segundo ainda 1, no terceiro 2, no quarto 3 e assim por diante. Essa é a sequência de Fibonacci.
Escreva um programa que leia um número
e devolva o número de parelhas após meses.b) Essa sequência é chamada de sequência de Fibonacci, que tem a seguinte lei de formação:
Assim,
Faça um algoritmo que imprima os 20 primeiros termos da sequência de Fibonacci.
-
Você possui um vergalhão de ferro de
centímetros e deseja construir a estrutura de uma caixa. A estrutura conterá um pedaço de vergalhão em cada aresta da caixa. Para evitar desperdício, a caixa deverá usar todo o vergalhão, mas ficará em um recinto de volume no máximo . Faça um programa que imprima todas as dimensões inteiras em centímetros possíveis para essa caixa. -
Relembre que capicuas são números que lidos da esquerda para a direita é o mesmo que quando lido da direita para a esquerda. Exemplos:
- 10201
- 2002
- 565
- 99
- 7
Faça agora um algoritmo que verifique se um número é capicua independente do número de dígitos.
-
Faça um algoritmo que, para cada número inteiro de 1 até 100, imprima "tic" se esse número for múltiplo de 3 e imprima "toc" se for múltiplo de "5".
-
Faça um programa que imprima um menu de 4 pratos na tela e uma quinta opção para sair do programa. O programa deve imprimir o prato solicitado. O programa deve terminar quando for escolhido a quinta opção.
-
Faça um programa que lê dois números inteiros positivos a e b. Utilizando laços, o seu programa deve calcular e imprimir o valor
. -
Séries:
a) Faça um programa que lê um número n e que compute e imprima o valor
Não use formúlas como a da soma de uma P.A. Depois faça uma versão que usa uma fórmula fechada para a soma acima. Qual versão executa mais rapidamente? Por quê?
b) Agora, faça um programa que lê um número
e imprima os valores da somapara
de 1 até . Você usaria uma fórmula fechada para imprimir cada elemento da série? -
Faça um programa que lê um número n e imprima os valores entre 2 e n, que são divisores de n.
-
No exemplo dos números primos visto em aula, não precisamos testar todos os números entre
, para verificar se dividem ou não n. Basta testarmos até n/2. Por quê? Qual o maior divisor possível de ? Na verdade basta testarmos os números . Por quê? -
Considere um programa para determinar se uma sequência de n números digitados pelo usuário está ordenada ou não. Implemente um programa usando uma variável contadora.
-
Escreva um programa que lê um número n, e então imprime o menor número primo que é maior ou igual n, e imprime o maior primo que é menor ou igual a n. 1
-
O que será impresso pelo programa abaixo? Assuma que o valor de D na declaração de x é o valor do último dígito do seu RA. Faça um teste de mesa, isso é, execute usando lápis e papel. Depois verifique sua resposta usando um computador. Finalmente, simule o algoritmo passo a passo utilizando um debugger e configurando breakpoints no início de cada iteração. Se não souber como utilizar um debugger, procure ajuda de um monitor.
x = 5 + D y = 0 while x != 0: y = (x % 2) + 10 * y x = x // 2 print(f'x = {x}, y = {y}') while y != 0: x = y % 100 y = y // 10 print(f'x = {x}, y = {y}')
-
Escreva um programa para ler n números do tipo float e imprimir quantos deles estão nos seguintes intervalos: [0 . . . 25], [26 . . . 50], [51 . . . 75] e [76 . . . 100]. Por exemplo, para n = 10 e os seguintes dez números 2.0, 61.5, −1.0, 0.0, 88.7, 94.5, 55.0, 3.1415, 25.5, 75.0, seu programa deve imprimir:
Intervalo [0..25]: 3 Intervalo [26..50]: 0 Intervalo [51..75]: 3 Intervalo [76..100]: 2
-
Elabore um programa para calcular a raiz quadrada de um número positivo, usando o roteiro abaixo, baseado no método de aproximações sucessivas de Newton. O algoritmo deverá prover 20 aproximações. Seja
o número:a) a primeira aproximação para a raiz quadrada de
éb) as sucessivas aproximações serão
. -
Faça um algoritmo para calcular e escrever o fatorial de um determinado número lido.
-
A conversão de graus Farenheit para centígrados é obtida por:
Faça um algoritmo que calcule e escreva uma tabela de centígrados em função de Farenheit, que variam de 50 a 150 de 1 a 1.
-
Considere o programa para determinar se uma sequência de n números digitados pelo usuário está ordenada ou não.
-
Múltiplas sequências:
-
Faça um algoritmo que calcule e escreva o valor de S:
-
Faça um algoritmo que calcule e escreva o valor de S:
-
Faça um algoritmo que calcule o valor de S:
-
-
Faça um algoritmo que leia o nome de cinco alunos, as notas de português, matemática e física de cada um deles, calcule a média de cada uma das disciplinas e a média geral. Escreva as médias de português, matemática, física e média geral.
-
Seja S um texto formado por letras maiúsculas, vírgulas, pontos e brancos, terminado pelo caractere ‘#‘ (que somente ocorre no fim do texto). Escreva um programa que leia os caracteres de S, um por vez, e imprima o número de palavras com comprimento menor ou igual a 5.
-
Escreva um programa que leia um número inteiro positivo n e em seguida imprima n linhas do chamado triângulo de Floyd. O exemplo abaixo mostra o triângulo de Floyd com 6 linhas.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
-
Escreva um programa que leia um número inteiro n e escreva uma figura similar à seguinte, mas com n linhas.
...*......*... ..***....***.. .*****..*****. **************
-
Escreva um programa que imprima uma tabela de números ímpares com
linhas e colunas ( e são lidos do teclado) como no seguinte formato de exemplo (para e ).01 03 05 07 15 13 11 09 17 19 21 23