2017-05-10 5 views
1

So einfach habe ich angefangen Python 3 Lernen in der Schule, und wir hatten eine Funktion zu machen, dass nimmt ein als Parameter, einen vernünftigen Wert von x wählt und kehrt eine Schätzung der Quadratwurzel von ein.eine Tabelle in Python 3 (Anfänger) macht

Wir mussten auch eine Funktion machen, um es zu testen. Wir mussten eine Funktion namens test_square_root schreiben, die eine Tabelle ausgibt, wobei die erste Spalte eine Zahl ist, eine; die zweite Spalte ist die Quadratwurzel von eine berechnet mit der ersten Funktion; Die dritte Spalte ist die Quadratwurzel berechnet von math.sqrt; Die vierte Spalte ist der absolute Wert der Differenz zwischen den beiden Schätzungen.

Ich schrieb die erste Funktion, um die Quadratwurzel zu finden, aber ich weiß nicht, wie man eine Tabelle so macht. Ich habe hier andere Fragen über Tabellen in Python3 gelesen, aber ich weiß immer noch nicht, wie ich sie auf meine Funktion anwenden soll.

def mysqrt(a): 
    for x in range(1,int(1./2*a)): 
     while True: 
      y = (x + a/x)/2 
      if y == x: 
       break 
      x = y 
    print(x) 
print(mysqrt(16)) 
+0

wenn ich druck innerhalb der schleife hinzufüge druckt es alle werte von x es dauert, ich will nur einen wert von x, in th ist Fall 4.0. – Thomas

Antwort

1

Wenn Sie Bibliotheken

from tabulate import tabulate 
from math import sqrt 


def mysqrt(a): 
    for x in range(1, int(1/2 * a)): 
     while True: 
      y = (x + a/x)/2 
      ifjl y == x: 
       break 
      x = y 
    return x 


results = [(x, mysqrt(x), sqrt(x)) for x in range(10, 20)] 
print(tabulate(results, headers=["num", "mysqrt", "sqrt"])) 

Ausgänge

num mysqrt  sqrt 
----- -------- ------- 
    10 3.16228 3.16228 
    11 3.31662 3.31662 
    12 3.4641 3.4641 
    13 3.60555 3.60555 
    14 3.74166 3.74166 
    15 3.87298 3.87298 
    16 4  4 
    17 4.12311 4.12311 
    18 4.24264 4.24264 
    19 4.3589 4.3589 

Andernfalls verwenden dürfen, dass viele Beispiele gibt es, wie tabellarische Daten drucken (mit und ohne Bibliotheken) hier: Printing Lists as Tabular Data

Verwandte Themen