Você está aqui: Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear

Como converter Coordenadas Cartesianas para Coordenadas Polares usando Python

Quantidade de visualizações: 5404 vezes
Nesta nossa série de Python para Geometria Analítica e Álgebra Linear, mostrarei um código 100% funcional para fazer a conversão entre coordenadas cartesianas e coordenadas polares. Esta operação é muito frequente em computação gráfica e é parte integrante das disciplinas dos cursos de Engenharia (com maior ênfase na Engenharia Civil).

Na matemática, principalmente em Geometria e Trigonometria, o sistema de Coordenadas no Plano Cartesiano, ou Espaço Cartesiano, é um sistema que define cada ponto em um plano associando-o, unicamente, a um conjuntos de pontos numéricos.

Dessa forma, no plano cartesiano, um ponto é representado pelas coordenadas (x, y), com o x indicando o eixo horizontal (eixo das abscissas) e o y indicando o eixo vertical (eixo das ordenadas). Quando saímos do plano (espaço 2D ou R2) para o espaço (espaço 3D ou R3), temos a inclusão do eixo z (que indica profundidade).

Já o sistema de Coordenadas Polares é um sistema de coordenadas em duas dimensões no qual cada ponto no plano é determinado por sua distância a partir de um ponto de referência conhecido como raio (r) e um ângulo a partir de uma direção de referência. Este ângulo é normalmente chamado de theta (__$\theta__$). Assim, um ponto em Coordenadas Polares é conhecido por sua posição (r, __$\theta__$).

Antes de prosseguirmos, veja uma imagem demonstrando os dois sistemas de coordenadas:



A fórmula para conversão de Coordenadas Cartesianas para Coordenadas Polares é:

__$r = \sqrt{x^2+y2}__$
__$\theta = \\arctan\left(\frac{y}{x}\right)__$

E aqui está o código Python completo que recebe as coordenadas cartesianas (x, y) e retorna as coordenadas polares (r, __$\theta__$):

----------------------------------------------------------------------
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
import math as math
  
def main():
  # vamos ler as coordenadas cartesianas
  x = float(input("Valor de x: "))
  y = float(input("Valor de y: "))

  # vamos calcular o raio
  raio = math.sqrt(math.pow(x, 2) + math.pow(y, 2))  

  # agora calculamos o theta (ângulo) em radianos 
  theta = np.arctan2(y, x)

  # queremos o ângulo em graus também
  angulo_graus = 180 * (theta / math.pi) 

  # e exibimos o resultado
  print("As Coordenadas Polares são:")
  print("raio = %0.4f, theta = %0.4f, ângulo em graus = %0.2f" 
    % (raio, theta, angulo_graus))

if __name__== "__main__":
  main()

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

Valor de x: -1
Valor de y: 1
As Coordenadas Polares são:
raio = 1.4142, theta = 2.3562, ângulo em graus = 135.00

Veja que as coordenadas polares equivalentes são (__$\sqrt{2}__$, __$\frac{3\pi}{4}__$), com o theta em radianos. Sim, os professores das disciplinas de Geometria Analítica e Álgebra Linear, Física e outras gostam de escrever os resultados usando raízes e frações em vez de valores reais.

Link para compartilhar na Internet ou com seus amigos:

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

Como transformar em letra maiúscula apenas o primeiro caractere de uma palavra ou frase usando a função capitalize() do Python

Quantidade de visualizações: 11499 vezes
Nesta dica mostrarei como podemos usar o método capitalize() do objeto string da linguagem Python para transformar em letra maiúscula apenas a primeira letra de uma palavra, frase ou texto.

Veja o trecho de código a seguir:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

def main():
  frase1 = "trabalho, Estudo e toco Guitarra."
  # converte a primeira letra para maiúsculas e as demais
  # para letras minúsculas
  frase2 = frase1.capitalize()

  # mostra os resultados
  print("Frase original:", frase1)
  print("Apenas a primeira letra maiúscula:", frase2)

if __name__== "__main__":
  main()

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

Frase original: trabalho, Estudo e toco Guitarra.
Apenas a primeira letra maiúscula: Trabalho, estudo e toco guitarra.


Python ::: Fundamentos da Linguagem ::: Passos Iniciais

Como obter a entrada do usuário usando o método raw_input() - Atualizado para Python 3.0

Quantidade de visualizações: 8305 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 com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# 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 com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

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 com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

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 com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

Por favor, informe seu nome: Osmar
Olá, Osmar! Voce tambem gosta de Python?



Python ::: Dicas & Truques ::: Lista (List)

Python para iniciantes - Como usar o tipo de dados list da linguagem Python

Quantidade de visualizações: 7718 vezes
O tipo de dados list é um dos quatro tipos de dados já incluídos no Python (sem a necessidade de importar outros módulos), a saber, tuple, set e dict (dictionary), cada um com qualidades e uso diferentes.

Uma list é uma sequência mutável e ordenada de itens. Os itens de uma list são objetos arbitrários e podem ser de diferentes tipos. Para especificar uma list, podemos usar uma série de expressões (os itens da lista) separadas por vírgulas e entre colchetes ([]). Opcionalmente podemos inserir uma vírgula redundante depois do último item. Para denotar uma lista vazia, use um par de colchetes. Veja alguns exemplos:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# uma list com nomes de pessoas
nomes = ['Carlos', 'Fabiana', 'Jorge']
print(nomes[0])
 
# uma list com valores inteiros
valores = [3, 7, 34, 0, 2]
print((valores[1] + valores[4]))
 
# uma lista vazia
lista = []
print(len(lista))

É possível também construir uma lista usando a palavra-chave list. Veja:

----------------------------------------------------------------------
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():
  # uma list com nomes de pessoas
  nomes = list(['Carlos', 'Fabiana', 'Jorge'])
  print("O nome escolhido é", nomes[0])
  
if __name__== "__main__":
  main()

Ao executar este último exemplo nós teremos o seguinte resultado:

O nome escolhido é Carlos


Vamos testar seus conhecimentos em Ética e Legislação Profissional

Ética profissional, social, política

Para Aristóteles, a base da ética é a justiça: "Essa forma de justiça (geral) é, portanto, uma virtude completa e governa nossas relações com os outros; por isso, muitas vezes, a justiça é considerada a virtude mais perfeita e nem a estrela vespertina, nem a estrela matutina é mais admirada que ela. Daí o provérbio: a justiça encerra toda a virtude" (ARISTÓTELES apud AUTOR, 1987, p. 93).

A respeito do exposto, assinale a alternativa correta:

A) A justiça é o que torna a ética tanto individual quanto social.

B) A ética não depende das relações sociais para existir.

C) A justiça deve ser ajustada e deliberada pela ética.

D) A justiça se realiza na moral, e não nas leis do Estado.

E) A justiça fundamenta os preceitos morais de convivência em sociedade.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fundações

Fundações profundas

As estacas Strauss podem ser armadas com ferragem longitudinal (barras retas) e estribos que permitam livre passagem do soquete de compactação e garantam um cobrimento da armadura não inferior a 3cm.

A estaca Strauss é recomendada:

A) apenas em terrenos com comprimento fixo de cravação.

B) em trabalhos abaixo do lençol freático.

C) em terrenos com comprimento variável de cravação.

D) com a disponibilidade de equipamentos robustos e complexos na execução.

E) em áreas não suscetíveis à presença de agentes biológicos.
Verificar Resposta Estudar Cards Todas as Questões

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

O projeto de instalação hidrossanitária

Em relação ao histograma, considere as seguintes sentenças:

I - Histograma consiste em um gráfico que apresenta a distribuição de frequências de uma variável por meio de retângulos justapostos, feitos sobre as classes dessa variável, sendo que a área de cada retângulo é proporcional à frequência observada da correspondente classe.

II - Histogramas são obrigatórios em todos os projetos civis, sendo, inclusive, exigidos pelos órgãos para liberação do habite-se;

III - Histogramas são recomendáveis apenas em projetos muito grandes ou de grande complexidade.

Assinale a alternativa correta:

A) Apenas as sentenças I e II estão corretas.

B) Apenas as sentenças II e III estão corretas.

C) Apenas a sentença I está correta.

D) Apenas a sentença III está correta.

E) Todas as sentenças estão corretas.
Verificar Resposta Estudar Cards Todas as Questões

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

O aço no edifício

A estrutura de estabilização da moldura estrutural da edificação da figura abaixo, que se caracteriza pelo fato de não possuir amarrações diagonais nem paredes de cisalhamento para assegurar a estabilidade lateral, pode ser chamada de:



A) Estrutura contraventada.

B) Moldura amarrada excentricamente.

C) Moldura resistente a momentos.

D) Paredes de cisalhamento.

E) Nenhuma das alternativas anteriores.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Topografia

Rumo e Azimute

Concurso Analista Ambiental - Engenheiro Agrimensor.

Observe a figura abaixo e assinale a alternativa correta.



A) Rumo de A2: N59ºE e Azimute de A1: 59º

B) Rumo de A2: S37ºW e Azimute de A2: 217º

C) Rumo de A1: N23ºE e Azimute de A2: 337º

D) Rumo de A3: S48ºE e Azimute de A1: 37º

E) Rumo de A2: N37ºE e Azimute de A1: 132º
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

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware 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 funcionalidadesControle 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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



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