Você está aqui: Python ::: Dicas & Truques ::: Recursão (Recursividade) |
Python para iniciantes - Como escrever uma função recursiva para calcular a potência de um número usando a linguagem PythonQuantidade de visualizações: 2932 vezes |
Chamamos de potenciação a operação de se elevar um número (uma base) a um determinado expoente e obter sua potência. Veja a figura a seguir: Veja que aqui o valor 5 foi elevado ao cubo, ou seja, ao expoente 3 e obtemos como resultado sua potência: 125. O código abaixo mostra como você pode escrever uma função recursiva em Python que permite calcular a potência de um número inteiro: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # função recursiva que calcula a potência de # um inteiro def potencia(base, expoente): if expoente == 0: return 1 else: return base * potencia(base, expoente - 1) # função principal do programa def main(): base = 3 expoente = 4 print(base, "elevado a", expoente, " = ", potencia(base, expoente)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: 3 elevado a 4 = 81 |
Link para compartilhar na Internet ou com seus amigos: |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de Python - Como testar se um ano é bissexto em Python - Um programa que lê um ano com quatro dígitos e informa se ele é bissexto ou nãoQuantidade de visualizações: 1297 vezes |
Pergunta/Tarefa: Chama-se ano bissexto o ano ao qual é acrescentado um dia extra, ficando ele com 366 dias, um dia a mais do que os anos normais de 365 dias, ocorrendo a cada quatro anos (exceto anos múltiplos de 100 que não são múltiplos de 400). Isto é feito com o objetivo de manter o calendário anual ajustado com a translação da Terra e com os eventos sazonais relacionados às estações do ano. O último ano bissexto foi 2012 e o próximo será 2016. Um ano é bissexto se ele for divisível por 4 mas não por 100, ou se for divisível por 400. Escreva um programa Python que pede ao usuário um ano com quatro dígitos e informa se ele é bissexto ou não. Sua saída deverá ser parecida com: Informe o ano: 2024 O ano informado é bissexto. Veja a resolução comentada deste exercício usando Python: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # método principal def main(): # vamos solicitar que o usuário informe um ano ano = int(input("Informe o ano: ")) # vamos verificar se o ano informado é bissexto if(((ano % 4 == 0) and (ano % 100 != 0)) or (ano % 400 == 0)): print("\nO ano informado é bissexto.\n") else: print("\nO ano informado não é bissexto.\n"); if __name__== "__main__": main() |
Python ::: Dicas & Truques ::: Data e Hora |
Como retornar a hora em Python como um decimal no intervalo 00-23 (formato 24 horas) usando o sinalizador %HQuantidade de visualizações: 7025 vezes |
Como retornar a hora em Python como um decimal no intervalo 00-23 (formato 24 horas) usando o sinalizador %H Nesta dica mostrarei como podemos obter a data atual em Python usando a função today() do objeto datetime e em seguida retornar a hora como um decimal no intervalo 00-23 (formato 24 horas) usando a função strftime() e o sinalizador %H. Veja o código Python completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- from datetime import datetime # função principal do programa def main(): # Obtém um datetime da data e hora atual hoje = datetime.today() # Exibe a hora atual como um decimal print("A hora é: {0}".format(hoje.strftime("%H"))) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: A hora é: 11 |
Python ::: Dicas & Truques ::: Arquivos e Diretórios |
Como criar um diretório em Python usando a função mkdir() do módulo osQuantidade de visualizações: 3028 vezes |
Podemos usar a função mkdir() do módulo os da linguagem Python para criarmos diretórios. Em sua versão mais simples, este método pede somente o nome e caminho do diretório a ser criado. Se o caminho for omitido, o novo diretório será criado no diretório atual, ou seja, o diretório da aplicação Python. Veja um exemplo no qual criamos um diretório chamado "app" no diretório "C:\estudos_python": ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # importa o módulo os import os # método principal def main(): # nome do diretório diretorio = "C:\\estudos_python\\app" # vamos criar o diretório os.mkdir(diretorio) # mostramos o resultado print('O diretório foi criado com sucesso.') if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: c:\estudos_python>python estudos.py O diretório foi criado com sucesso. Note que um erro do tipo FileExistsError será exibido se o diretório já existir: Traceback (most recent call last): File "c:\estudos_python\estudos.py", line 16, in <module> main() File "c:\estudos_python\estudos.py", line 10, in main os.mkdir(diretorio) FileExistsError: [WinError 183] Não é possível criar um arquivo já existente: 'C:\\estudos_python\\app' Uma forma de evitar este erro é verificar se o diretório já existe ou usar uma construção try...except. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # importa o módulo os import os # método principal def main(): # nome do diretório diretorio = "C:\\estudos_python\\app" try: # vamos criar o diretório os.mkdir(diretorio) # mostramos o resultado print('O diretório foi criado com sucesso.') except os.error as error_msg: print("Houve um erro: %s" % str(error_msg)) if __name__== "__main__": main() Execute o código novamente e veja como o tratamento de erro ficou mais elegante. |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Dimensionamento de Redes de Distribuição de Água Qual a vazão necessária na tubulação que sai do reservatório em uma rede ramificada para um loteamento com a seguinte configuração, considerando que cada habitante consome 400 L/dia? A) 8,67 L/s. B) 16,42 L/s. C) 2,63 L/s. D) 17,33 L/s. E) 6,96 L/s. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Número de Froude O número de Froude (Fr) é um coeficiente adimensional, frequentemente utilizado na hidráulica de condutos abertos para determinar a classificação do regime que o escoamento livre apresenta. Quando o Fr é igual a 1, o regime é classificado como crítico; com Fr > 1, o regime é supercrítico; e com Fr < 1, o regime é subcrítico. Sobre esta classificação afirma-se que: A) No regime crítico há equílibrio de forças e a velocidade é menor que a celeridade. B) No regime supercrítico, o escoamento é mais influenciado pelas forças gravitacionais. C) No regime supercrítico, o escoamento é regido pelas energias cinéticas e inerciais. D) No regime subcrítico ou torrencial, as forças gravitacionais regem o escoamento. E) No regime crítico não há equilíbrio entre as energias que influenciam o escoamento. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
A Bacia Platina é uma das principais bacias do país. Em relação às suas características, marque a alternativa correta. A) É formada pelas bacias dos rios Paraná, Paraguai, Araguaia e Tocantins. B) Está localizada no Brasil, Argentina, Chile e Paraguai. C) Possui a maior usina hidrelétrica totalmente brasileira. D) Apresenta baixo aproveitamento econômico de sua área. E) É a bacia brasileira com maior capacidade instalada de geração de energia. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Dimensionamento de lajes maciças à flexão As lajes maciças são armadas em cruz, quando apresentam a relação entre o maior e o menor vão inferior a 2. Nessas situações, a laje pode ser dimensionada a partir de valores preestabelecidos em tabelas como a de Marcus. Considere a laje maciça armada em cruz apresentada na figura a seguir: Dados: Peso específico do concreto = 25kN/m3 Carga do contrapiso + revestimento = 2,00kN/m2 Carga acidental = 2,50kN/m2 Altura da laje (h) = 10cm Altura útil (d) = 6cm Cobrimento nominal = 2,5cm fcd = fck / 1,4 (considerar concreto de 20MPa) fyd = fyk / 1,15 (considerar aço CA-50) Assinale a alternativa correta: A) A altura de 10cm não é suficiente para resistir ao momento máximo atuante, devendo ser empregada, pelo menos, uma altura de 11cm na laje em questão. B) A altura de 10cm não é suficiente para resistir ao momento máximo atuante, devendo ser empregada, pelo menos, uma altura de 12cm na laje. C) A altura de 10cm não é suficiente para resistir ao momento máximo atuante, devendo ser empregada, pelo menos, uma altura de 13cm na laje. D) A altura de 10cm não é suficiente para resistir ao momento máximo atuante, devendo ser empregada, pelo menos, uma altura de 14cm na laje. E) A altura de 10cm não é suficiente para resistir ao momento máximo atuante, devendo ser empregada, pelo menos, uma altura de 15cm na laje. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
Estrutura e propriedade dos materiais A determinação e o conhecimento dos materiais são muito importantes para a escolha do material para determinada aplicação. Essa escolha é a partir: A) de um banco de dados obtidos por meio de ensaios laboratoriais. B) da análise do agrupamento e da organização dos átomos. C) da estrutura interna do material. D) da análise das características físicas do material. E) da avaliação da composição química dos materiais. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |