2016-09-03 4 views
-3

Ich versuche ein Programm zum Finden der Entfernung zwischen zwei Koordinaten zu machen. Kann mir jemand helfen, wo ich falsch liege?Python 3.5.2 Was ist der Fehler beim Aufruf der Funktion?

Code:

from math import * 
prompt= input('Enter the coordinates \n') 
x= input() 
x1= input() 
y= input() 
y1= input() 
def dist(x,y,x1,y1): 
    dx=x1-x 
    dy=y1-y 
    return sqrt(dx**2 + dy**2) 
print ('The distance/Radius is: \n') 
dist(x,y,x1,y1) 
+1

Vermutlich werden Sie gesagt, dass es keine Strings subtrahieren kann ... Wunder, warum das wäre? – jonrsharpe

Antwort

3

Meine Lösung:

x= int(input()) 
x1= int(input()) 
y= int(input()) 
y1= int(input()) 
def dist(x,y,x1,y1): 
    dx=x1-x 
    dy=y1-y 
    return ((dx**2 + dy**2)**(0.5)) 
print('The distance/Radius is:') 
print(dist(x,y,x1,y1)) 

Eingang:

1 
2 
2 
3 

Ausgang:

The distance/Radius is: 
1.4142135623730951 

Sie müssen vor der Berechnung input() in integer konvertieren. Und für die Durchführung der Quadratwurzel hier, ich mache mathematische Berechnung als sqrt= x**(.5)

+0

Es wäre hilfreich, einen Absatz hinzuzufügen, der erklärt, was Sie geändert haben und warum – jonrsharpe

+0

Danke für die Hilfe :) – Vito

+0

@jonrsharpe Danke, habe ich die Erklärung hinzugefügt –

Verwandte Themen