Você está aqui: Python ::: Desafios e Lista de Exercícios Resolvidos ::: Python Básico |
Escreva um programa Python para calcular e imprimir o número de lâmpadas necessárias - Desafio de Programação Resolvido em PythonQuantidade de visualizações: 299 vezes |
Pergunta/Tarefa: Escreva um programa Python para calcular e imprimir o número de lâmpadas necessárias para iluminar um determinado cômodo de uma residência. Dados de entrada: a potência da lâmpada utilizada (em watts), as dimensões (largura e comprimento, em metros) do cômodo. Considere que a potência necessária é de 18 watts por metro quadrado. Sua saída deverá ser parecida com: Informe a potência da lâmpada (em watts): 100 Informe a largura do cômodo (em metros): 6 Informe o comprimento do cômodo (em metros): 4 Serão necessárias 4 lâmpadas. 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 ---------------------------------------------------------------------- # método principal def main(): # vamos ler a potência da lâmpada potencia_lampada = float(input("Informe a potência da lâmpada (em watts): ")) # vamos ler a largura do cômodo largura_comodo = float(input("Informe a largura do cômodo (em metros): ")) # agora vamos ler o comprimento do cômodo comprimento_comodo = float(input("Informe o comprimento do cômodo (em metros): ")) # agora vamos calcular a área do cômodo area_comodo = largura_comodo * comprimento_comodo # calculamos a potência total necessária para iluminar # todo o cômodo potencia_total = area_comodo * 18 # e finalmente calculamos a quantidade de lâmpadas necessárias quant_lampadas = int(potencia_total / potencia_lampada) # será necessário no mínimo uma lâmpada if quant_lampadas == 0: quant_lampadas = quant_lampadas + 1 # e mostramos o resultado print("Serão necessárias {0} lâmpadas.".format(quant_lampadas)) if __name__== "__main__": main() |
![]() |
Python ::: Fundamentos da Linguagem ::: Passos Iniciais |
Como usar os argumentos padrões das funções em PythonQuantidade de visualizações: 7305 vezes |
Geralmente quando efetuamos chamadas às funções, nosso código fica responsável por fornecer os valores para os argumentos da função. Em Python é possível termos argumentos padrões, e tais argumentos já podem ter um valor pré-definido. Desta forma, a passagem dos parâmetros se torna opcional. Veja um 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 ---------------------------------------------------------------------- # função com argumento padrão def erro(msg = "Houve um erro."): print msg # chamada à função fornecendo o argumento erro("Erro desconhecido.") # chamada à função sem fornecer o argumento erro() Veja mais um 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 ---------------------------------------------------------------------- # função com argumentos padrões def volume(comprimento = 1, largura = 1, altura = 1): return (comprimento * largura * altura) # chamada à função fornecendo um argumento print volume(3) # chamada à função fornecendo dois argumentos print volume(4, 5) # chamada à função fornecendo três argumentos print volume(4, 5, 7) # chamada à função fornecendo nenhum argumento print volume() É importante observar que os argumentos padrões devem estar sempre à direita dos demais argumentos. Falhar em cumprir esta exigência pode causar um erro do tipo: SyntaxError: non-default argument follows default argument |
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como gerar vetores e matrizes com números inteiros aleatórios usando a função random.randint() da biblioteca NumPy para - Machine Learning com PythonQuantidade de visualizações: 878 vezes |
Veremos nessa dica como podemos usar o método random.randint() da biblioteca NumPy para gerar vetores e matrizes já preenchidos com números inteiros aleatórios. Note que a criação de vetores e matrizes preenchidos com números randômicos é uma parte importante para o desenvolvimento de modelos de teste (test models) em Inteligência Artificial (IA), Machine Learning e outras áreas de estudo que envolvem Data Science. Vamos começar com a forma mais simples do uso da função random.randint() para gerar um vetor de 10 elementos contendo números aleatórios de 0 até 10 (não incluído): ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- # importamos o módulo random da bibliteca NumPy from numpy import random def main(): # vamos gerar um vetor de números inteiros aleatórios # de 0 (incluído) à 10 (não incluído) valores = random.randint(10, size=10) print("O vetor gerado foi: ", valores) if __name__== "__main__": main() Ao executar este código teremos um resultado parecido com: O vetor gerado foi: [0 3 2 3 8 9 3 9 6 4] Aqui nós informamos o limite alto do valor aleatório a ser gerado (mas ele não é incluído). Se quisermos limitar a faixa inferior, podemos tirar proveito dos parâmetros low e high da função randint(). 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 ---------------------------------------------------------------------- # importamos o módulo random da bibliteca NumPy from numpy import random def main(): # vamos gerar um vetor de números inteiros aleatórios # de 50 (incluído) à 101 (não incluído) valores = random.randint(50, 101, 10) print("O vetor gerado foi: ", valores) if __name__== "__main__": main() Agora o resultado será parecido com: O vetor gerado foi: [92 89 66 52 61 77 55 58 72 55] Para gerarmos uma matriz, por exemplo, de 2 linhas e 4 colunas, só precisamos gerar o vetor de números aleatórios e em seguida usar o método reshape(), também da biblioteca NumPy para converter a matriz de uma dimensão (vetor) em uma matriz de duas dimensões. 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 ---------------------------------------------------------------------- from numpy import random def main(): # vamos gerar um vetor de números inteiros aleatórios # de 1 (incluído) à 21 (não incluído) valores = random.randint(1, 21, 8) # agora vamos converter o vetor para uma matriz # de 2 linhas e 4 colunas valores = valores.reshape(2, 4) print("A matriz gerada foi: ", valores) if __name__== "__main__": main() Quando executamos este código nós temos um resultado parecido com: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- A matriz gerada foi: [[17 5 2 9] [14 10 10 19]] A partir da versão 1.19 da NumPy, os desenvolvedores da biblioteca recomendam o uso do método integers() do módulo default_rng(). |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Apostila Python para iniciantes - Como exibir os números pares de 0 a 20 usando o laço for da linguagem PythonQuantidade de visualizações: 13632 vezes |
Nesta dica mostrarei como podemos usar o laço for da linguagem Python para exibir os números pares de 0 a 20. Note que usaremos os parâmetros start (valor inicial da variável de controle), stop (valor final da variável de controle, não incluído) e step (que especifica o valor de incremento da variável de controle. Veja o código 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 ---------------------------------------------------------------------- # função principal do programa def main(): for i in range(0, 21, 2): print(i, end = " ") if __name__== "__main__": main() Ao executar este código nós teremos o seguinte resultado: 0 2 4 6 8 10 12 14 16 18 20 |
Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como converter graus em radianos em Python - Trigonometria em PythonQuantidade de visualizações: 3049 vezes |
Quando estamos trabalhando com trigonometria na linguagem Python, é importante ficarmos atentos ao fato de que todos os métodos e funções trigonométricas em Python recebem seus argumentos em radianos, em vez de graus. Nesta dica veremos como converter graus em radianos (sem a chatice de ficar relembrando regra de três). Veja a fórmula abaixo: \[Radianos = Graus \times \frac{\pi}{180}\] Agora veja como esta fórmula pode ser escrita em código 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 ---------------------------------------------------------------------- import math # função principal do programa def main(): # valor em graus graus = 30 # obtém o valor em radianos radianos = graus * (math.pi / 180) # mostra o resultado print(graus, "graus convertidos para", "radianos é", radianos) if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: 30 graus convertidos para radianos é 0.5235987755982988 Por fim, saiba que a linguagem Python nos oferece o método math.radians() que nos permite converter ângulos em graus para radianos. Meu propósito nesta dica foi mostrar a você como o cálculo de conversão pode ser escrito em Python. Em outras dicas dessa seção abordaremos o método math.radians(). |
Python ::: Tkinter GUI Toolkit ::: Entry |
Como setar o foco em uma caixa de texto Entry do Tkinter usando a função focus_set()Quantidade de visualizações: 1131 vezes |
Em várias situações durante o processo de programação em Tkinter nós precisamos, via programação, trocar o foco de uma caixa de texto para outra. Isso pode ser feito com o auxílio da função focus_set(). No código abaixo nós temos uma janela Tkinter com duas caixas de texto Entry e um botão Button. Experimente digitar conteúdo nas duas caixas de texto e depois clicar no botão. Você verá que o foco é colocado novamente na primeira caixa de texto. Veja o código Python completo: ---------------------------------------------------------------------- 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 Tkinter from tkinter import * from tkinter.ttk import * # variáveis globais caixa_texto_1 = None # método principal def main(): # acessamos a variável global global caixa_texto_1 # vamos criar o frame principal da aplicação Tkinter janela = Tk() # agora definimos o tamanho da janela janela.geometry("600x400") # criamos uma caixa de texto Entry de linha única caixa_texto_1 = Entry(janela, width=40) caixa_texto_1.grid(column=0, row=0, sticky=W, padx=15, pady=10) # criamos uma segunda caixa de texto Entry de linha única caixa_texto_2 = Entry(janela, width=40) caixa_texto_2.grid(column=0, row=1, sticky=W, padx=15, pady=0) # vamos criar um botão Button btn = Button(janela, text="Definir Foco", width=20, command=definir_foco) btn.grid(column=0, row=2, sticky=W, padx=15, pady=10) # entramos no loop da aplicação janela.mainloop() # função para definir o foco na primeira caixa de texto def definir_foco(): # definimos o foco na primeira caixa de texto Entry caixa_texto_1.focus_set() if __name__== "__main__": main() |
Python ::: Dicas & Truques ::: Lista (List) |
Como pesquisar um item em uma lista Python e retornar seu índice usando a função index()Quantidade de visualizações: 10930 vezes |
Em algumas situações nós precisamos pesquisar um item em uma List do Python e retornar o índice de sua primeira ocorrência. Para isso nós podemos usar o método index(), que aceita uma string, um number, um object, etc, e retorna o índice da primeira posição do item dentro da lista. Veja um exemplo de seu uso: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- """ Este exemplo mostra como pesquisar um item em uma lista. Se o item for encontrado, seu índice é retornado. Do contrário uma exceção do tipo ValueError é levantada. """ def main(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 32, 18] try: indice = valores.index(13) except ValueError: print("O valor pesquisado nao foi encontrado") else: print("O valor foi encontrado no índice", indice) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O valor pesquisado não foi encontrado. Note que no exemplo nós usamos um bloco try..except para tratar a exceção ValueError, disparada quando o item pesquisado por meio da função index() não for encontrado na List. 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 ---------------------------------------------------------------------- Exception has occurred: ValueError 13 is not in list |
Python ::: Dicas & Truques ::: Lista (List) |
Como inverter a ordem dos elementos em uma lista Python usando o método reverse()Quantidade de visualizações: 17045 vezes |
Inverter a ordem dos itens de um vetor ou lista é uma das tarefas mais corriqueiras durante o trabalho de programação. Na linguagem Python nós podemos inverter os elementos de uma list usando o método reverse(), já embutido na linguagem. Este método modifica a lista original. Veja um exemplo de seu uso: ---------------------------------------------------------------------- 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(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 32, 18] # exibe a lista na ordem original print(valores) # inverte a lista valores.reverse() # exibe a lista na ordem invertida print(valores) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: [2, 5, 12, 2, 3, 32, 18] [18, 32, 3, 2, 12, 5, 2] |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como obter a série de Fibonacci recursivamente usando Python - Como calcular a sequência de Fibonacci em PythonQuantidade de visualizações: 15855 vezes |
Na matemática, os números de Fibonacci são uma sequência ou sucessão definida como recursiva pela fórmula: Fn = Fn - 1 + Fn - 2 Os primeiros números de Fibonacci são: 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, ... Esta sequência foi descrita primeiramente por Leonardo de Pisa, também conhecido como Fibonacci, para descrever o crescimento de uma população de coelhos. Veja um techo de código que mostra como calcular e mostrar a sequência de Fibonacci de forma recursiva: ---------------------------------------------------------------------- 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 para calcular o Fibonacci de um # número def fibonacci(num): if num < 0: print("Não é possível obter o fibonacci de um numero negativo.") if ((num == 0) or (num == 1)): return num else: return fibonacci(num - 1) + fibonacci(num - 2) def main(): # vamos ler a entrada do usuário numero = int(input("Informe um inteiro: ")) # vamos obter o resultado res = fibonacci(numero) print("Fibonacci(%d) = %d" % (numero, res)) if __name__== "__main__": main() Ao executarmos este código nós teremos um resultado parecido com: Informe um inteiro: 7 Fibonacci(7) = 13 E agora saindo um pouco de Python: Leonardo Pisa (1175-1240) publicou a sequência de Fibonacci no seu livro Liber Abaci (Livro do Ábaco, em português), o qual data de 1202. Porém, comenta-se que os indianos já haviam descrito essa série antes dele. Se pegarmos um número da série de Fibonacci e o dividirmos pelo seu antecessor (por exemplo: 55 dividido por 34), teremos quase sempre o valor 1,618. Este valor é aplicado com muita frequência em análises financeiras e na informática. Leonardo Da Vinci, que chamou essa sequência de Divina Proporção, a usou para fazer desenhos perfeitos. De fato, se observarmos atentamente, perceberemos a sequência de Fibonacci também na natureza. São exemplos disso as folhas das árvores, as pétalas das rosas, os frutos, como o abacaxi, as conchas espiraladas dos caracóis ou as galáxias. |
Vamos testar seus conhecimentos em |
Dimensionamento de lajes e escadas maciças Considere uma laje retangular maciça, com condições de contorno definidas na imagem a seguir. A laje tem vãos de 4,00m x 3,00m e está sujeita a uma máxima reação de apoio correspondente ao lado do engaste de Vd = 9,97kN/m. A laje tem espessura de 8cm (com altura útil igual a 6cm), em concreto fck 20MPa. Considere que 50% da armadura inferior não chega até o apoio (k = 1), que a laje terá armadura mínima e que não há força normal atuando na laje. ![]() Em relação à utilização de armaduras para combater o esforço cortante, é correto afirmar que:​ A) VRd1 = 20,87kN e a laje pode prescindir de armadura para força cortante. B) VRd1 = 20,9 N, sendo necessária a utilização de armadura para força cortante. C) VRd1 = 9,97kN e a laje pode prescindir de armadura para força cortante. D) VRd1 = 16,97kN, sendo necessária a utilização de armadura para força cortante. E) VRd1 = 12,35kN, sendo necessária a utilização de armadura para força cortante. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Esquadrias Qual desses elementos é relativo ao suporte dos vidros de uma esquadria? A) Contramarco. B) Batente. C) Caixilho. D) Guarnição. E) Componente de fixação. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Vidros Qual dos tipos abaixo não é um modelo de vidro: A) Float. B) Acrílico. C) Laminado. D) Aramado. E) Cromogênico. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Responsabilidade civil no código de defesa do consumidor Um consumidor compra um ferro de passar roupa e quando está manejando o ferro pela primeira vez ele explode e o atinge, causando-lhe danos morais e estéticos. O consumidor é levado ao hospital para tratar alguns ferimentos. Nesse caso, a ação indenizatória deverá ser proposta em face do fabricante no prazo de: A) prazo decadencial de 5 anos. B) prazo prescricional de 30 dias. C) prazo decadencial de 90 dias. D) prazo prescricional de 5 anos. E) prazo prescricional de 90 dias. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
A transpiração é um processo fundamental na contribuição para o acúmulo de água em estado gasoso na atmosfera. Qual agente é um dos principais atores nesse processo? A) Rochas. B) Solos férteis. C) Chuvas. D) Seres vivos. E) Minerais. 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 |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |