while True: msg = ler_frase('Digite uma frase: ') msg_inverso = '' tamanho = len(msg) # início: tamanho-1; para ir do último caractere a 0 # fim: -1; para ir até a última string # passo: -1; decrescendo for letra in range(tamanho - 1, -1, -1): # concatenando cada caractere detrás pra frente msg_inverso += msg[letra] if msg_inverso == msg: print('É um palíndromo!') print(f'O inverso da palavra é: {msg_inverso}') else: print('Não é palíndromo') print(f'O inverso da palavra é: {msg_inverso}') resposta = ' ' while resposta not in 'SN': #chamada da função que faz a validação da resposta resposta = ler_resposta('\nDeseja rodar o programa de novo? [S/N] ') if resposta == 'N': break #chamada da função que cria a linha pontilhada criar_linha() criar_rodape()
import sys sys.path.append('/home/danielle8farias/hello-world-python3/meus_modulos') from mensagem import ler_cabecalho, rodape, ler_resposta from numeros import ler_num_nat #função que calcula se o ano é bissexto def ano_bissexto(ano): #verificando se o ano é divisível por 4 #e se o ano não é divisível por 100 #ou se o ano é divisível por 400 if ano % 4 == 0 and ano % 100 != 0 or ano % 400 == 0: print(f'O ano {ano} é bissexto.') else: print(f'O ano {ano} NÃO é bissexto.') #programa principal ler_cabecalho('ANO BISSEXTO') while True: ano = ler_num_nat('Informe o ano: ') ano_bissexto(ano) print() resposta = ' ' while resposta not in 'SN': resposta = ler_resposta('Deseja continuar? [S/N] ') print() if resposta == 'N': break rodape()