Você está aqui: Python ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Faça um programa para retornar os valores de uma matriz 3x3 de números inteiros. Depois da leitura dos dados - Lista de Exercícios Resolvidos de PythonQuantidade de visualizações: 924 vezes |
Pergunta/Tarefa: Faça um programa para obter os valores de uma matriz 3x3 de números inteiros. Depois da leitura dos dados, o programa deve calcular a soma dos elementos da diagonal principal. Em seguida ele deve mostrar os valores da matriz e o da soma. Sua saída deverá ser parecida com: Valor para a linha 0 e coluna 0: 1 Valor para a linha 0 e coluna 1: 4 Valor para a linha 0 e coluna 2: 7 Valor para a linha 1 e coluna 0: 12 Valor para a linha 1 e coluna 1: 9 Valor para a linha 1 e coluna 2: 8 Valor para a linha 2 e coluna 0: 5 Valor para a linha 2 e coluna 1: 10 Valor para a linha 2 e coluna 2: 14 Valores na matriz 1 4 7 12 9 8 5 10 14 A soma dos elementos da diagonal principal é: 24 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 principal def main(): # uma matriz de três linhas e três colunas matriz = [[0 for x in range(3)] for y in range(3)] soma_diagonal = 0 # guarda a soma dos elementos na diagonal principal # vamos ler os valores para os elementos da matriz for i in range(len(matriz)): for j in range(len(matriz[i])): matriz[i][j] = int(input("Elemento na linha [%d] e coluna [%d]: " % (i, j))) # vamos mostrar a matriz da forma que ela foi informada print("\nValores na matriz:\n"); for i in range(len(matriz)): for j in range(len(matriz[i])): print("%5d " % matriz[i][j], end=' ') print() # vamos calcular a soma dos elementos da diagonal principal for i in range(len(matriz)): for j in range(len(matriz[i])): if(i == j): soma_diagonal = soma_diagonal + matriz[i][j] print("\nA soma dos elementos da diagonal principal é: {0}".format(soma_diagonal)) if __name__== "__main__": main() |
![]() |
Python ::: Tkinter GUI Toolkit ::: Círculos, Ovais e Elípses |
Como desenhar círculos no Tkinter usando a função create_oval() do componente CanvasQuantidade de visualizações: 1139 vezes |
Em várias situações nós precisamos desenhar círculos não preenchidos e preenchidos em Tkinter. Para isso nós podemos usar a função create_oval() do componente Canvas. Em sua forma mais simples, a função create_oval() requer as coordenadas x e y a partir das quais o círculo ou elípse será desenhada e a largura e a altura do retângulo dentro do qual o círculo estará contido. Para desenhar uma oval ou elípse, basta manipular a largura ou altura desse retângulo. Veja um trecho de código no qual usamos a função create_oval() para desenhar um círculo com 5 pixels de largura da linha de desenho: ---------------------------------------------------------------------- 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 * # método principal def main(): # cria a janela principal da aplicação janela_principal = Tk() # define as dimensões da janela janela_principal.geometry("400x350") # define o título da janela janela_principal.title("Uso do controle Canvas") # vamos criar o objeto Canvas canvas = Canvas(janela_principal, bg="white", width=400, height=350) # colocamos o Canvas na janela principal canvas.grid(row=0, column=0) # agora vamos desenhar um círculo no Canvas começando nas # coordenadas x=20 e y=30 centro de um retângulo de largura # 150 pixels por uma altura de 150 pixels e largura da linha # de 5 pixels canvas.create_oval(20, 30, 150, 150, width="5") # entramos no loop de eventos janela_principal.mainloop() if __name__== "__main__": main() Note que a largura da linha de desenho foi informada por meio do parâmetro width. Se quisermos definir também a cor da linha do desenho, basta usarmos o parâmetro outline e fornecer a cor desejada. |
Python ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como embaralhar os elementos de um array em Python usando random.shuffle()Quantidade de visualizações: 1171 vezes |
Nesta dica mostrarei como podemos embaralhar a ordem dos elementos de uma lista do Python. Para isso usaremos o método shuffle() do módulo random. Este método muda a ordem dos elementos no vetor original. 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 ---------------------------------------------------------------------- # vamos importar o módulo random import random # função principal do programa def main(): # vamos criar uma lista de números inteiros numeros = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] # vamos mostrar o vetor original print("Ordem original: {0}".format(numeros)) # agora vamos embaralhar a ordem dos elementos da lista random.shuffle(numeros) # e mostramos o resultado print("Após o embaralhamento: {0}".format(numeros)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Ordem original: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] Após o embaralhamento: [3, 10, 6, 8, 9, 5, 7, 4, 1, 2] |
Python ::: Fundamentos da Linguagem ::: Passos Iniciais |
Como obter a entrada do usuário usando o método raw_input() - Atualizado para Python 3.0Quantidade de visualizações: 8408 vezes |
Até pouco tempo era possível usar o método raw_input(), nativo do Python, para ler a entrada do usuário. O código abaixo, por exemplo, funcionava corretamente no Python 2.5: ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- # obtém o nome do usuário nome = raw_input("Por favor, informe seu nome: ") print "Ola, " + nome + "! Voce tambem gosta de Python?" No Python 3.0 em diante, a execução deste código exibe o seguinte erro de tempo de execução: ---------------------------------------------------------------------- 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: NameError name 'raw_input' is not defined File "C:\estudos_python\estudos.py", line 4, in main nome = raw_input("Por favor, informe seu nome: ") File "C:\estudos_python\estudos.py", line 7, in <module> main() A correção para esta exceção, é usar somente a função input(). 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 ---------------------------------------------------------------------- def main(): nome = input("Por favor, informe seu nome: ") print("Olá, " + nome + "! Voce tambem gosta de Python?") if __name__== "__main__": main() A saída deste código será parecida 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 ---------------------------------------------------------------------- Por favor, informe seu nome: Osmar Olá, Osmar! Voce tambem gosta de Python? |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular porcentagem em Python - Eu tenho um valor de R$ 500,00 que aumentou para R$ 800,00. Qual foi o aumento percentual?Quantidade de visualizações: 895 vezes |
Nesta dica mostrarei como calcular a porcentagem do aumento sofrido por um determinado valor usando a linguagem Python. Este é um cenário muito comum. Veja a seguinte situação: a) Temos um produto x que custava R$ 500,00 e que foi aumentado para R$ 800,00. Queremos, dessa forma, descobrir o percentual de aumento que o preço do produto sofreu. Veja o código Python para a realização deste cálculo: ---------------------------------------------------------------------- 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(): # preço anterior do produto precoAnterior = float(input("Informe o preço anterior: ")) # preço atual do produto precoAtual = float(input("Informe o preço atual: ")) # efetua o cálculo a = precoAnterior b = 100 * precoAtual c = b / a d = c - 100 # mostra o resultado print("A porcentagem de aumento foi: %f%%" % d) if __name__== "__main__": main() Ao executar este código Python nós teremos um resultado parecido com: Informe o preço anterior: 500 Informe o preço atual: 800 A porcentagem de aumento foi: 60.000000% |
Python ::: Dicas & Truques ::: Formatação de datas, strings e números |
Python para matemática - Como definir a precisão (casas decimais) na exibição de um valor de ponto-flutuante em PythonQuantidade de visualizações: 14992 vezes |
Este trecho de código mostra como definir a precisão com que um número de ponto-flutuante será exibido. Atenção: Arredondamentos podem ocorrer dependendo da redução das casas decimais. Veja o código Python completo para a dica: ---------------------------------------------------------------------- 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(): valor = 43.13985765 # com dois dígitos print("O valor e %.2f" % valor) # com três dígitos print("O valor e %.3f" % valor) # com um dígito print("O valor e %.1f" % valor) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O valor é 43.14 O valor é 43.140 O valor é 43.1 |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como criar um laço while() infinito na linguagem PythonQuantidade de visualizações: 10013 vezes |
Nesta dica eu mostrarei como é possível criar um laço (loop) while infinito em Python. Esta técnica é útil para as situações nas quais queremos interagir com o usuário do nosso programa até que um determinado valor seja informado. No exemplo abaixo temos um laço while() que será executado até que o texto "fim" seja informado pelo usuário. Veja o código 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 ---------------------------------------------------------------------- def main(): while True: frase = input("Digite uma frase: "); print("Você digitou: ", frase) # vamos sair do laço if frase == "fim": print("Você acaba de sair do laço while()") break if __name__== "__main__": main() Ao executar este código nós teremos o seguinte resultado: Digite uma frase: Estou estudando Python Você digitou: Estou estudando Python Digite uma frase: Preciso viajar amanhã Você digitou: Preciso viajar amanhã Digite uma frase: fim Você digitou: fim Você acaba de sair do laço while() |
Python ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular a apótema de um polígono regular de N lados em PythonQuantidade de visualizações: 664 vezes |
Uma das formas mais comuns de se obter a área de um polígono regular é usando a seguinte fórmula: \[\text{A} = \frac{1}{2} \cdot \text{p} \cdot \text{a} \] Onde: p = Perímetro, ou seja, a soma dos comprimentos de todos os lados. a = Apótema, isto é, uma parte que une o centro do polígono ao meio de qualquer lado que esteja perpendicular. Agora que já estamos alinhados, saiba que calcular a apótema de um polígono regular "na mão" é fácil, já que só precisamos medir a distância de dois lados opostos e dividir por dois ou traçar linhas cruzadas e medir a distância de um dos lados até a interseção dessas linhas. No entanto, em programação a coisa já é um pouco mais complicada. Nesta dica mostrarei como podemos realizar esta tarefa em Python. Para isso usaremos alguns truques de trigonometria. Comece analisando a seguinte imagem: ![]() Note que temos um pentágono com cada lado medindo 4 metros. Recorde que um pentágono é um polígono regular de 5 lados. Para deixar a dica mais didática eu coloquei também uma linha azul representando a apótema do polígono e as linhas cruzadas. Veja agora o código Python que recebe a quantidade de lados do polígono, o comprimento dos lados e retorna a apótema: ---------------------------------------------------------------------- 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 # função que calcula e retorna a apótema de um # polítono regular def calcular_apotema(lados, comprimento): # a quantidade de lados e o comprimento deles # não podem ser negativos if lados < 0 or comprimento < 0: return -1 # calculamos a apótema return (comprimento / (2 * math.tan((180 / lados) * math.pi / 180))) # função principal do programa def main(): # vamos ler a quantidade de lados lados = int(input("Informe a quantidade de lados: ")) # vamos ler o comprimento dos lados comprimento = int(input("Informe o comprimento dos lados: ")) # e agora calculamos a apótema dos polígono apotema = calcular_apotema(lados, comprimento) # e mostramos o resultado print("A apótema do polígono é: {0}".format(apotema)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Informe a quantidade de lados: 5 Informe o comprimento dos lados: 4 A apótema do polígono é: 2.7527638409423476 |
Python ::: Dicas & Truques ::: Data e Hora |
Como retornar o dia do mês em Python como um decimal no intervalo 01-31 usando strftime("%d")Quantidade de visualizações: 8090 vezes |
Como retornar o dia do mês em Python como um decimal no intervalo 01-31 usando strftime("%d") Este exemplo mostra como usar a função strftime() e o sinalizador ("%d") para retornar o dia do mês a partir de um datetime. Observe que o dia do mês será retornado como um decimal no intervalo 01-31. ---------------------------------------------------------------------- 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 def main(): # Obtém um datetime da data e hora atual hoje = datetime.today() # Exibe o dia do mês como um decimal print(hoje.strftime("O dia do mês é: %d")) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O dia do mês é: 26 |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Princípios específicos do Direito do Consumidor (Exame de ordem 2013). Maria e Manoel, casados, pais dos gêmeos Gabriel e Thiago, que têm apenas três meses de vida, residem há seis meses no Condomínio Vila Feliz. O fornecimento do serviço de energia elétrica na cidade onde moram é prestado por uma única concessionária, a Companhia de Eletricidade Luz S.A. Há uma semana, o casal vem sofrendo com as contínuas e injustificadas interrupções na prestação do serviço pela concessionária, o que já acarretou a queima do aparelho de televisão e da geladeira, com a perda de todos os alimentos nela contidos. O casal pretende ser indenizado. Nesse caso, à luz do princípio da vulnerabilidade previsto no Código de Proteção e Defesa do Consumidor, assinale a afirmativa que esteja de acordo. A) Prevalece o entendimento jurisprudencial no sentido de que a vulnerabilidade no Código do Consumidor é sempre presumida, tanto para o consumidor pessoa física, Maria e Manoel, quanto para a pessoa jurídica, no caso, o Condomínio Vila Feliz, tendo ambos direitos básicos à indenização e à inversão judicial automática do ônus da prova. B) A doutrina consumerista dominante considera a vulnerabilidade um conceito jurídico indeterminado, plurissignificativo, sendo correto afirmar que, no caso em questão, está configurada a vulnerabilidade fática do casal diante da concessionária, havendo direito básico à indenização pela interrupção imotivada do serviço público essencial. C) É dominante o entendimento no sentido de que a vulnerabilidade nas relações de consumo é sinônimo exato de hipossuficiência econômica do consumidor. Logo, basta ao casal Maria e Manoel demonstrá-la para receber a integral proteção das normas consumeristas e o consequente direito básico à inversão automática do ônus da prova e à ampla indenização pelos danos sofridos. D) A vulnerabilidade nas relações de consumo se divide em apenas duas espécies: a jurídica ou a científica e a técnica. Aquela representa a falta de conhecimentos jurídicos ou outros pertinentes à contabilidade e à economia, e esta, à ausência de conhecimentos específicos sobre o serviço oferecido, sendo que sua verificação é requisito legal para inversão do ônus da prova a favor do casal e do consequente direito à indenização. E) No sistema das relações de consumo reguladas pelo Código de Defesa do Consumidor, a identificação de que existe um elo mais fraco na relação traduz o reconhecimento da transparência. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil |
Fases de uma obra A camada de argamassa executada sobre uma base, que pode ser a parte de baixo de uma laje de piso pré-fabricada ou uma parede, é denominada: A) Acabamento. B) Contrapiso. C) Fundação. D) Pavimento. E) Concreto. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual o resultado da execução do seguinte código Python?estados = {"SP": "SÃO PAULO", "GO": "GOIÁS", "RJ": "RIO DE JANEIRO", "MG": "MINAS GERAIS"} print("GO" in estados) A) "GO" B) True C) False D) "SP", "GO", "RJ", "MG" E) "GOIÁS" Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica |
Cálculo da vazão e velocidade de água em um canal retangular Sabe-se que um pequeno canal, com dimensões determinadas conforme a figura abaixo, enche um reservatório de 10.000 m3 em 1 dia. Qual a vazão? Qual a velocidade da água? ![]() A) A vazão é 0.7211 m3/s e a velocidade é 0.1157 m/s. B) A vazão é 0.1157 m3/s e a velocidade é 0.0385 m/s. C) A vazão é 0.0385 m3/s e a velocidade é 0.1157 m/s. D) A vazão é 0.1157 m3/s e a velocidade é 0.0771 m/s. E) A vazão é 0.0771 m3/s e a velocidade é 0.1157 m/s. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Materiais de construção A figura a seguir demonstra um dos esforços aos quais os materiais de construção estão constantemente submetidos. Trata-se de um esforço de: ![]() A) Tração. B) Compressão. C) Torção. D) Flexão. E) Cisalhamento. 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 |
Java - Java Swing para iniciantes - Como detectar eventos do teclado em uma janela JFrame do Java Swing |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |