Exercícios
Alguns exercícios adicionais aos sugeridos nas transparências.
- Faça um programa que leia um número e diga se ele é perfeito. Um número perfeito é aquele que é igual à soma dos seus divisores. Por exemplo, 28 = 14 + 7 + 4 + 2 + 1.
- Faça um programa que leia um número e liste todos os seus fatores primos. Por exemplo, o número 28 tem como fatores primos 2, 2 e 7. Números primos, obviamente, só têm um fator primo. Opcionalmente, imprima a lista dos fatores primos usando notação de potenciação para escrever os fatores que aparecem mais de uma vez. Por exemplo, 54 = 2 * 3**3.
- Escreva um programa para converter números escritos em algarismos arábicos para romanos, mas evite escrever mais do que 4 ou 5 "if"s. A idéia é usar um comando while para analisar cada casa decimal e gerar os caracteres romanos diferentemente para cada iteração. Use uma string para armazenar as letras usadas para cada casa: por exemplo, na string "IVXLCDM", as letras nas posições 0 a 2 são usadas no processamento das unidades, as letras nas posições 2 a 4 são usadas no processamento das dezenas, etc.
- Faça um programa que leia uma palavra e diga se é palíndroma. Uma palavra é palíndroma se é idêntica quando lida de trás para diante. Por exemplo, "reler" é um palíndromo.
- Faça um programa que leia duas palavras e responda se são palíndromas mútuas. Uma palavra é palindroma de outra se é igual a esta escrita de trás para frente. Por exemplo, "roma" e "amor" são palíndromas.
- Repita os exercícios acima, mas agora com frases palíndromas. A única dificuldade a mais deste exercício reside em desconsiderar os espaços em branco. Por exemplo, a frase "SOCORRAM ME SUBI NO ONIBUS EM MARROCOS" é palíndroma de si própria.
- Repita os exercícios acima, mas agora testando se palavras e frases são anagramas. Um anagrama de uma palavra é outra palavra escrita com os mesmos caracteres. Por exemplo, "porta" e "tropa" são anagramas. Obs.: claro está que todas as palindromas são também anagramas.