Você está aqui: Python ::: Pygame ::: Mouse e Teclado |
Como retornar a posição do mouse na janela Pygame usando a função pygame.mouse.get_pos()Quantidade de visualizações: 1288 vezes |
Em várias situações nós precisamos retornar as coordenadas do mouse durante as interações do usuário com nosso jogo Pygame. Para isso nós podemo usar a função pygame.mouse.get_pos(), que retorna uma tupla contendo as coordenadas x e y. Veja um código Pygame completo no qual eu mostro como exibir no console a posição x e y do mouse enquanto o usuário interage com a janela do jogo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # vamos importar as bibliotecas necessárias import pygame, sys from pygame.locals import * # inicializa a biblioteca pygame.init() # obtém a superfície do jogo e define o tamanho da tela DISPLAYSURF = pygame.display.set_mode((600, 600)) # vamos definir o título da janela do jogo pygame.display.set_caption('Meu Jogo de Cartas') # e aqui nós entramos no loop do game while True: # monitoramos os eventos for evento in pygame.event.get(): # se o evento foi um pedido para sair if evento.type == QUIT: # fechamos a tela do jogo pygame.quit() # e saimos do programa sys.exit() # vamos obter as coordenadas do mouse posicao_mouse = pygame.mouse.get_pos() # vamos mostrar as coordenadas no console print("x = {0}; y = {1}".format(posicao_mouse[0], posicao_mouse[1])) # redesenha a tela continuamente pygame.display.update() A saída no console será parecida com: x = 227; y = 265 x = 226; y = 267 x = 225; y = 268 x = 225; y = 270 x = 224; y = 272 |
![]() |
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a norma ou módulo de vetores nos espaços R2 e R3 usando Python - Geometria Analítica e Álgebra Linear usando PythonQuantidade de visualizações: 3758 vezes |
Em Geometria Analítica e Álgebra Linear, a magnitude, norma, comprimento, tamanho ou módulo (também chamado de intensidade na Física) de um vetor é o seu comprimento, que pode ser calculado por meio da distância de seu ponto final a partir da origem, no nosso caso (0,0). Considere o seguinte vetor no plano, ou seja, no espaço bidimensional, ou R2: \[\vec{v} = \left(7, 6\right)\] Aqui este vetor se inicia na origem (0, 0) e vai até as coordenadas (x = 7) e (y = 6). Veja sua plotagem no plano 2D: ![]() Note que na imagem já temos todas as informações que precisamos, ou seja, o tamanho desse vetor é 9 (arredondado) e ele faz um ângulo de 41º (graus) com o eixo x positivo. Em linguagem mais adequada da trigonometria, podemos dizer que a medida do cateto oposto é 6, a medida do cateto adjacente é 7 e a medida da hipotenusa (que já calculei para você) é 9. Note que já mostrei também o ângulo theta (__$\theta__$) entre a hipotenusa e o cateto adjacente, o que nos dá a inclinação da reta representada pelos pontos (0, 0) e (7, 6). Relembrando nossas aulas de trigonometria nos tempos do colegial, temos que o quadrado da hipotenusa é a soma dos quadrados dos catetos, ou seja, o Teorema de Pitágoras: \[a^2 = b^2 + c^2\] Como sabemos que a potenciação é o inverso da radiciação, podemos escrever essa fórmula da seguinte maneira: \[a = \sqrt{b^2 + c^2}\] Passando para os valores x e y que já temos: \[a = \sqrt{7^2 + 6^2}\] Podemos comprovar que o resultado é 9,21 (que arredondei para 9). Não se esqueça da notação de módulo ao apresentar o resultado final: \[\left|\vec{v}\right| = \sqrt{7^2 + 6^2}\] E aqui está o código Python que nos permite informar os valores x e y do vetor e obter o seu comprimento, tamanho ou módulo: ---------------------------------------------------------------------- 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(): # vamos ler os valores x e y x = float(input("Informe o valor de x: ")) y = float(input("Informe o valor de y: ")) # vamos calcular a norma do vetor norma = math.sqrt(math.pow(x, 2) + math.pow(y, 2)) # mostra o resultado print("A norma do vetor é: %0.2f" % norma) if __name__== "__main__": main() Ao executar este código nós teremos o seguinte resultado: Informe o valor de x: 7 Informe o valor de y: 6 A norma do vetor é: 9.22 Novamente note que arredondei o comprimento do vetor para melhor visualização no gráfico. Para calcular a norma de um vetor no espaço, ou seja, no R3, basta acrescentar o componente z no cálculo. |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como criar um laço while() infinito na linguagem PythonQuantidade de visualizações: 9973 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 com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- 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 ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercício Resolvido de Python - Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menorQuantidade de visualizações: 1767 vezes |
Algoritmos Resolvidos de Python - Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menor Pergunta/Tarefa: Um comerciante comprou um produto e quer vendê-lo com um lucro de 45% se o valor da compra for menor que R$ 20,00; caso contrário, o lucro será de 30%. Elabore um algoritmo que leia o valor do produto e imprima o valor de venda para o produto. Sua saída deverá ser parecida com: Informe o valor do produto: 85 O valor de venda é: 110.5 Veja a resolução comentada deste exercício usando Python: Código para principal.py: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # método principal def main(): # valor ler o valor do produto valor = float(input("Informe o valor do produto: ")) # vamos calcular o valor de venda if valor < 20: valor_venda = valor + (valor * (45.0 / 100)) else: valor_venda = valor + (valor * (30.0 / 100)) print("O valor de venda é: {0}".format(valor_venda)) if __name__== "__main__": main() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Códigos Fonte |
![]() 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 |
![]() 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 |