Python :: Aufgabe #163 :: Lösung #3

3 Lösungen Lösungen öffentlich
#163

Wurzel ziehen mit Intervallschachtelung

Anfänger - Python von Felix - 11.07.2017 um 21:30 Uhr
Schreibe eine Methode die aus einer Zahl die Wurzel zieht, benutze dafür die Intervallschachtelung.
#3
vote_ok
von Nachbar (2820 Punkte) - 29.08.2017 um 19:43 Uhr
Quellcode ausblenden Python-Code
# Python 2.7
# -*- coding: utf-8 -*-

from __future__ import print_function
import math

zahl = input("Wurzel ziehen aus: ")

# Erste Grenzpaarung ermitteln
def grenzen_ermitteln(zahl):
    l = []
    # Untergrenze
    for i in range(zahl, 0, -1):
        if math.pow(i, 2) < zahl:
            l.append(i)            
            break
    # Obergrenze
    for j in range(zahl):
        if math.pow(j, 2) > zahl:
            l.append(j)            
            break
    return l

# Intervallschachtelung
def intervallschachtelung(zahl):   
    a = float(grenzen_ermitteln(zahl)[0])
    b = float(grenzen_ermitteln(zahl)[1])
    genauigkeit = (float(1) / 10)
    while genauigkeit > 0.001:
        while a < b:
            if math.pow(a, 2) > zahl:
                b = a - genauigkeit
                a, b = b, a
                break
            a = a + genauigkeit
        genauigkeit = genauigkeit / 10
    return a
    
print("\nDie Wurzel aus " + str(zahl) + " ist: " + str(intervallschachtelung(zahl)))

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben