Você está aqui: Python ::: Desafios e Lista de Exercícios Resolvidos ::: Laços |
Escreva um programa Python que usa o laço while para ler um número indeterminado de idades. A condição de parada do laço é o valor da idade igual a 0 - Desafio de Programação Resolvido em PythonQuantidade de visualizações: 304 vezes |
Pergunta/Tarefa: Escreva um programa (algorítmo) Python que usa o laço while para ler um número indeterminado de idades de algumas pessoas. A condição de parada do laço é o valor da idade igual a 0. Calcule a escreva a idade média deste grupo de pessoas. Sua saída deverá ser parecida com: Informe a idade: 19 Informe a idade: 30 Informe a idade: 21 Informe a idade: 45 Informe a idade: 0 A idade média é: 28.75 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) ---------------------------------------------------------------------- soma = 0 # a soma das idades de cada indivíduo contador = 0 # conta as idades lidas # laço while que repetirá até que o valor da idade seja 0 while(True): idade = int(input("Informe a idade: ")) # a idade lida é diferente de 0? if(idade != 0): soma = soma + idade # soma mais esta idade contador = contador + 1 # aumenta a quantidade de idades lidas if(idade == 0): break # calcula a idade média # note que forcei contador para o tipo double antes da divisão # isso faz com que o resultado seja do tipo double idade_media = soma / (contador * 1.0) # finalmente mostramos o resultado print("A idade média é: {0}".format(idade_media)) |
Link para compartilhar na Internet ou com seus amigos: |
Python ::: Dicas & Truques ::: Formatação de datas, strings e números |
Como formatar inteiros com uma determinada quantidade de zeros à esquerda usando PythonQuantidade de visualizações: 11071 vezes |
Nesta dica eu mostro como formatar um valor inteiro com uma determinada quantidade de zeros à sua esquerda. Note que aqui eu estou combinando a função print() com o operador de módulo (%) para indicar os valores que serão formatados. Esta técnica foi muito usada na época do Python 2.5 e ainda está disponível no Python 3.0 (e creio que deverá continuar por muito tempo ainda). Veja o trecho de código completo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # função principal do programa def main(): valor1 = 343 valor2 = 3 # exibirá 000342 print("O valor é %06d" % (valor1)) # exibirá 0342 e 00000003 print("Os valor sao %04d e %08d" % (valor1, valor2)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O valor é 000343 Os valor são 0343 e 00000003 |
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Python para Engenharia - Como multiplicar um vetor por um escalar usando Python e NumPyQuantidade de visualizações: 3319 vezes |
Esta dica de Python e NumPy é direcionada, principalmente, aos estudantes de Engenharia, que se deparam, logo no início do curso, com o estudo da Geometria Analítica e gostariam de entender melhor a multiplicação de vetores por um escalar. Lembre-se de que um escalar é um valor único, enquanto vetores e matrizes são estruturas que guardam vários valores ao mesmo tempo. Nosso primeiro exemplo será feito em cima de um vetor no R3, ou seja, no espaço, com os seguintes valores: [3, -5, 4]. O escalar usado será o valor 2, ou seja, temos que multiplicar cada valor no vetor pelo valor 2 e, dessa forma, obtermos um novo vetor, também no R3. Vetores no R3 possuem valores para x, y e z (três dimensões), enquanto vetores no R2 possuem apenas o x e y. Veja como a linguagem Python facilita a operação da multiplicação de um vetor R3 por um escalar: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # importamos a bibliteca NumPy import numpy as np def main(): # declara e cria o vetor vetor = np.array([3, -5, 4]) # agora vamos multiplicar este vetor pelo escalar 2 escalar = 2 novoVetor = vetor * escalar # vamos exibir o resultado print("Vetor inicial: ", vetor) print("Valor do escalar: ", escalar) print("Novo vetor: ", novoVetor) if __name__== "__main__": main() Este código Python vai gerar o seguinte resultado: Vetor inicial: [3 -5 4] Valor do escalar: 2 Novo vetor: [6 -10 8] Agora, saindo da Geometria Analítica e indo para a Álgebra Linear, veja como podemos efetuar a mesma operação em uma matriz de 2 linhas e 3 colunas (recorde que, em Python, uma matriz nada mais é do que um vetor de vetores, ou seja, cada elemento do vetor contém outro vetor): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # importamos a bibliteca NumPy import numpy as np def main(): # declara e cria a matriz matriz = np.array([(4, 12, 50), (5, 3, 1), (11, 9, 7)]) # agora vamos multiplicar esta matriz pelo escalar 2 escalar = 2 novaMatriz = matriz * escalar # vamos exibir o resultado print("Matriz inicial: ", matriz) print("Valor do escalar: ", escalar) print("Nova matriz: ", novaMatriz) if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: Matriz inicial: [[4 12 50] [5 3 1] [11 9 7]] Valor do escalar: 2 Nova matriz: [[8 24 100] [10 6 2] [22 18 14]] |
Python ::: Dicas & Truques ::: Aplicativos e Outros |
Como calcular a distância entre dois pontos na terra em PythonQuantidade de visualizações: 1224 vezes |
Nesta dica mostrarei como calcular a distância em quilômetros entre dois pontos na terra dadas suas latitudes e longitudes. Neste exemplo eu coloquei o valor de 6378.137 para o raio da terra, mas você pode definir para o valor que achar mais adequado. O cálculo usado neste código se baseia na Fórmula de Haversine, que determina a distância do grande círculo entre dois pontos em uma esfera, dadas suas longitudes e latitudes. Veja o código Python completo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # vamos importar o módulo Math import math # função que recebe dois pontos na terra e retorna a distância # entre eles em quilômetros def calcularDistancia(lat1, lat2, lon1, lon2): raio_terra = 6378.137 # raio da terra em quilômetros # o primeiro passo é converter as latitudes e longitudes # para radianos lon1 = math.radians(lon1) lon2 = math.radians(lon2) lat1 = math.radians(lat1) lat2 = math.radians(lat2) # agora aplicamos a Fórmula de Haversine dlon = lon2 - lon1 dlat = lat2 - lat1 a = math.pow(math.sin(dlat / 2), 2) + math.cos(lat1) * math.cos(lat2) \ * math.pow(math.sin(dlon / 2),2) c = 2 * math.asin(math.sqrt(a)) # e retornamos a distância return(c * raio_terra) # método principal def main(): # vamos solicitar a latitude e longitude das duas localizações lat1 = float(input("Informe a primeira latitude: ")) lon1 = float(input("Informe a primeira longitude: ")) lat2 = float(input("Informe a segunda latitude: ")) lon2 = float(input("Informe a segunda longitude: ")) # vamos calcular a distância entre os dois pontos em Kms distancia = calcularDistancia(lat1, lat2, lon1, lon2) # mostramos o resultado print("A distância entre os dois pontos é: {0} kms".format(distancia)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe a primeira latitude: -16.674551 Informe a primeira longitude: -49.303598 Informe a segunda latitude: -15.579321 Informe a segunda longitude: -56.10009 A distância entre os dois pontos é: 736.9183827638687kms Neste exemplo eu calculei a distância entre as cidades de Goiânia-GO e Cuibá-MT. A latitude é a distância ao Equador medida ao longo do meridiano de Greenwich. Esta distância mede-se em graus, podendo variar entre 0o e 90o para Norte(N) ou para Sul(S). A longitude é a distância ao meridiano de Greenwich medida ao longo do Equador. |
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 |