Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Python ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Escreva um método recursivo em Python que, dados dois inteiros a e b (a <= b), retorna a multiplicação dessa faixa de números - Exercícios Resolvidos de Python

Quantidade de visualizações: 588 vezes
Pergunta/Tarefa:

Escreva um método recursivo em Python que, dados dois inteiros a e b (a <= b), retorna a multiplicação dessa faixa de números.

Por exemplo, se informarmos o número inicial 1 e o número final 5, sua saída deverá ser parecida com:

O resultado é: 120
Resposta/Solução:

Veja a resolução comentada deste exercício usando Python:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# método recursivo que multiplica os números entre uma faixa
def multiplicar(de, ate):
  # caso base?
  if de == ate:
    return de

  # efetua mais uma chamada ao método recursivo
  return de * multiplicar(de + 1, ate)

# método principal
def main():
  # vamos obter a multiplicação dos número 1 até 5 (incluindo)
  res = multiplicar(1, 5)
    
  # mostra o resultado
  print("O resultado é: {0}".format(res))
  
if __name__== "__main__":
  main()


Link para compartilhar na Internet ou com seus amigos:

Python ::: wxPython ::: wxFrame

Como usar a classe wx.Frame para criar um objeto window top-level (janelas top-level) em aplicações wxPython

Quantidade de visualizações: 8875 vezes
Um objeto window top-level é um widget (geralmente um frame) que não está contido em nenhum outro widget na aplicação. É o que o usuário geralmente aponta e diz "Este é o programa". O objeto window top-level é geralmente a janela principal de sua aplicação e contém widgets (controles) e objetos de interface com os quais o usuário interage. Desta forma, a aplicação é encerrada quando todas as janelas top-level são fechadas.

Sua aplicação deve ter no mínimo um objeto window top-level. O objeto window top-level geralmente é uma subclasse de wx.Frame, embora ele possa também ser uma subclasse de wx.Dialog. Na maioria das vezes, definiremos subclasses customizadas de wx.Frame para usar em nossas aplicações.

Contudo, há um grande número de subclasses pré-definidas de wx.Dialog que fornecem muitos dos diálogos típicos que poderíamos encontrar em uma aplicação.

A classe wx.Frame é derivada de: wx.TopLevelWindow, wx.Window, wx.EvtHandler e wx.Object.


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 %H

Quantidade de visualizações: 7124 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 para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

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 ::: Desafios e Lista de Exercícios Resolvidos ::: Fenômenos dos Transportes, Hidráulica e Drenagem

Exercício Resolvido de Python - Determine a vazão escoada em um canal com seção retangular, com lâmina d´água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por Km

Quantidade de visualizações: 361 vezes
Exercício Resolvido de Python - Determine a vazão escoada em um canal com seção retangular, com lâmina d'água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por Km

Pergunta/Tarefa:

Python para Fenômenos dos Transportes, Hidráulica e Drenagem. Python para cálculo de vazão em condutos livres. Fórmula de Manning para a velocidade de escoamento.

Neste exercício em Python veremos como calcular a vazão de um canal com seção retangular. Para isso nós vamos usar a Equação de Manning da velocidade do escoamento.

Determine a vazão escoada em um canal com seção retangular, com lâmina d'água de 2,00m e largura de base igual a 3,00m e declividade 0,2m por Km. Utilize &#951;=0,012.



Sua saída deverá ser parecida com:

Informe a Largura da Base do Canal (em metros): 3
Informe a Profundidade do Escoamento (em metros): 2
Informe a Declividade do Canal (em metros por km): 0.2
Informe o Coeficiente de Rugosidade do Canal: 0.012

A Área Molhada do Canal é: 6.0 m2
O Perímetro Molhado do Canal é: 7.0 m
O Raio Hidráulico do Canal é: 0.8571428571428571 m
A Velocidade do Escoamento é: 1.0634144533132281 m/s
A Vazão do Canal é: 6.380486719879369 m3/s
Resposta/Solução:

Veja a resolução completa para o exercício em Python, comentada linha a linha:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# vamos importar o módulo Math
import math

# método principal
def main():
  # vamos ler a largura do canal em metros
  b = float(input("Informe a Largura da Base do Canal (em metros): "))

  # vamos ler a profundida do escoamento em metros
  h = float(input("Informe a Profundidade do Escoamento (em metros): "))
  
  # vamos obter a declividade do canal em metros por quilômetros
  I = float(input("Informe a Declividade do Canal (em metros por km): "))
  # vamos converter a declividade em metro por metro
  I = I / 1000.0

  # vamos ler o coeficiente de rugosidade do canal
  n = float(input("Informe o Coeficiente de Rugosidade do Canal: "))

  # vamos calcular a área molhada
  am = b * h

  #  agora vamos calcular o perímetro molhado
  pm = b + 2 * h

  # finalmente calculamos o raio hidráulico
  rh = am / pm

  # agora vamos usar a equação de manning para calcular a velocidade do escoamento
  v = math.pow(rh, 2.0 / 3.0) * (math.sqrt(I) / n)

  # finalmente calculamos a vazão do canal
  Q = am * v

  # e mostramos os resultados
  print("\nA Área Molhada do Canal é: {0} m2".format(am))
  print("O Perímetro Molhado do Canal é: {0} m".format(pm))
  print("O Raio Hidráulico do Canal é: {0} m".format(rh))
  print("A Velocidade do Escoamento é: {0} m/s".format(v))
  print("A Vazão do Canal é: {0} m3/s".format(Q))

if __name__== "__main__":
  main()



Python ::: Dicas & Truques ::: Strings e Caracteres

Como testar se uma string contém apenas letras em Python usando a função isalpha()

Quantidade de visualizações: 14861 vezes
Este exemplo mostra como podemos a função isalpha() do Python para verificar se uma string contém apenas letras, ou seja, nada de números, espaços nem pontuação. Se algum número, espaço, um caractere especial ou pontuação estiver contido, a função retorna False.

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

def main():
  # uma palavra contendo apenas letras
  palavra = "Arquivo"

  # a palavra contém apenas letras?
  if palavra.isalpha():
    print("A string contém apenas letras")
  else:
    print("A string não contém somente letras")

if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

A string contém apenas letras.


Python ::: Dicas & Truques ::: Matemática e Estatística

Como corrigir o problema da divisão com inteiros em Python (versões anteriores a 3.0)

Quantidade de visualizações: 10782 vezes
A divisão em Python (na versão 2.5), quando feita com operandos do tipo inteiro, resultará em um número inteiro, ou seja, o resultado será arredondado para o menor inteiro mais próximo. Veja:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

v1 = 5
v2 = 2
res = v1 / v2
print res

Aqui fica claro que o resultado deveria ser 2,5. Porém, ao exibirmos o valor da variável res, vemos que ela armazena 2. Veja agora este novo exemplo:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

v1 = 5.0
v2 = 2
res = v1 / v2
print res

Agora o resultado é o que esperamos: 2,5. Isso aconteceu porque um dos operandos é um valor do tipo ponto-flutuante. Dessa forma, o interpretador fará a promoção do outro operando (de inteiro para ponto-flutuante) e o comportamento do operador de divisão será o correto.

Então lembre-se: divisão por inteiros, resultado também em inteiro. Se não é isso que deseja, faça com que pelo menos um dos operandos seja do tipo ponto-flutuante.

Existe uma forma de forçar o interpretador a se comportar de forma correta também com inteiros. Veja:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# força o novo comportamento do operador
# de divisão
from __future__ import division
 
v1 = 5
v2 = 2
res = v1 / v2
print res

Agora o resultado será 2,5. A chave para isso está na linha:

from __future__ import division

Esta linha importa a nova forma de divisão para seus programas Python anteriores à versão 3.0.


Python ::: Dicas & Truques ::: Matemática e Estatística

Como calcular MDC em Python - Python para matemática

Quantidade de visualizações: 12575 vezes
Python para matemática - Como calcular o MDC (Máximo Divisor Comum) em Python

Atualmente a definição de Máximo Divisor Comum (MDC) pode ser assim formalizada:

Sejam a, b e c números inteiros não nulos, dizemos que c é um divisor comum de a e b se c divide a (escrevemos c|a) e c divide b (c|b). Chamaremos D(a,b) o conjunto de todos os divisores comum de a e b.

O trecho de código abaixo mostra como calcular o MDC de dois números informados:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# função que permite calcular o MDC
def MDC(a, b):
  while(b != 0):
    resto = a % b
    a = b
    b = resto
 
  return a

# função principal do programa
def main():
  print("Este programa permite calcular o MDC\n")
  x = int(input("Informe o primeiro valor: "))
  y = int(input("Informe o segundo valor: "))
  
  print("\nO Máximo Divisor Comum de", x, "e", y, "é", MDC(x, y))
  
if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

Este programa permite calcular o MDC
Informe o primeiro número: 12
Informe o segundo número: 9
O Máximo Divisor Comum de 12 e 9 é 3


Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o cosseno de um ângulo em Python usando a função cos() do módulo Math - Calculadora de cosseno em Python

Quantidade de visualizações: 2525 vezes
Como calcular o cosseno de um ângulo em Python usando a função cos() do módulo Math - Calculadora de cosseno em Python

Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula:

\[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \]

Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem Python. Esta função, que faz parte do módulo Math, recebe um valor numérico float e retorna um valor float, ou seja, também numérico) entre -1 até 1 (ambos inclusos). Veja:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# vamos importar o módulo Math
import math as math

def main():
  # vamos calcular o cosseno de três números
  print("Cosseno de 0 = %f" % math.cos(0))
  print("Cosseno de 1 = %f" % math.cos(1))
  print("Cosseno de 2 = %f" % math.cos(2))
  
if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

Cosseno de 0 = 1.000000
Cosseno de 1 = 0.540302
Cosseno de 2 = -0.416147

Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo:




Python ::: Dicas & Truques ::: Formatação de datas, strings e números

Como inserir uma determinada quantidade de espaços à esquerda de um valor numérico usando Python

Quantidade de visualizações: 7510 vezes
Este trecho de código Python mostra como definir uma quantidade de caracteres de espaço à esquerda de um valor numérico. Este exemplo funciona com inteiros. Para ponto-flutuante você deve trocar "d" por "f".

Veja o código:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

# método principal
def main():
  valor = 54

  # com três espaços
  print("O valor é %5d" % valor)

  # com nove espaços
  print("O valor é %11d" % valor)

  # com quatro espaços
  print("O valor é %6d" % valor)

if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

----------------------------------------------------------------------
Se precisar de ajuda para ajustar o código abaixo de acordo com as
suas necessidades, chama a gente no WhatsApp +55 (62) 98553-6711 (Osmar)

Ah, e se puder, faça uma DOAÇÃO de qualquer valor para nos ajudar
a manter o site livre de anúncios. Ficaremos eternamente gratos ;-)
Nosso PIX é: osmar@arquivodecodigos.com.br 
----------------------------------------------------------------------

O valor é    54
O valor é          54
O valor é     54



Vamos testar seus conhecimentos em JavaScript

Como arredondar o valor 7.25 para o inteiro mais próximo em JavaScript?

A) Math.rnd(7.25)

B) Math.round(7.25)

C) rnd(7.25)

D) round(7.25)
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

(UFG 2010) As bacias hidrográficas são unidades físicas, formadas por uma porção de terra, delimitadas pelas partes mais altas do relevo, drenadas por um curso d'água principal e seus afluentes. Os processos ambientais, decorrentes da ação da precipitação, responsáveis pela modelagem do relevo na bacia hidrográfica são:

A) evaporação, condensação e infiltração.

B) vulcanismo, falhamento e fraturamento.

C) dobramento, intemperismo químico e soerguimento.

D) escorregamento, erosão e assoreamento.

E) lixiviação, intemperismo físico e laterização.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais

Sistema domiciliar de abastecimento de água

Há diversas opções de materiais empregados nas instalações de água fria. Cada tipo de material se enquadra às condições em que será utilizado. Nas instalações residenciais do Brasil, o material mais empregado é o PVC, por apresentar diversas vantagens.

Quais das opções a seguir apresentam as principais características desse tipo de material?

I. Leve (1,4g/cm3), o que facilita seu manuseio e aplicação.

II. Por ser tóxico, apresenta risco à saúde humana.

III. Sólido e resistente a choques.

IV. Durável: sua vida útil em construções é superior a 50 anos.

As afirmações corretas são:

A) I e II, apenas.

B) I, III e IV, apenas.

C) I, II e III, apenas.

D) II e III, apenas.

E) I, II, III e IV.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

Com relação à delimitação de bacias hidrográficas, é correto afirmar que

A) todos os pontos em seu interior, obrigatoriamente possuem cotas iguais ou inferiores em relação às cotas do divisor de águas da bacia.

B) tanto o divisor de água do tipo topográfico quanto o divisor do tipo freático podem ser utilizados, pois os dois sempre se coincidem.

C) segundo o método de Strahler de hierarquização fluvial, bacias hidrográficas de 4ª ordem têm o dobro de área de drenagem do que bacias classificadas em 2ª ordem.

D) a linha imaginária que define o seu limite deve ser traçada perpendicularmente às curvas de nível e não cortar nenhum curso de água além do ponto onde se encontra o exutório.

E) na escolha do local do exutório para a delimitação, os cursos d?água devem ser classificados como de 4ª ordem (método de Strahler) no mínimo, para que a bacia hidrográfica tenha uma área representativa.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira

Ações em estruturas: apresentação dos principais carregamentos na análise de estruturas convencionais

Qual das alternativas a seguir possui exemplos, na ordem correta de ações: permanentes diretas, permanentes indiretas, acidentais diretas, acidentais indiretas e excepcionais.

A) Peso próprio, variações de temperatura, cargas móveis, protensão e terremotos.

B) Peso próprio, protensão, vento, variações de temperatura e terremotos.

C) Deslocamento de apoio, imperfeições geométricas, vento, variações de temperatura e terremotos.

D) Peso próprio, imperfeições geométricas, vento, força longitudinal de frenagem e explosões.

E) Peso próprio, imperfeições geométricas, vento, variações de temperatura e cargas verticais de uso da construção.
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

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 26 usuários muito felizes estudando em nosso site.