Python :: Aufgabe #290

5 Lösungen Lösungen öffentlich

Spannung, Stromstärke, Widerstand

Anfänger - Python von JKooP - 04.10.2020 um 12:43 Uhr
Schreibe eine Methode/Funktion, die je nach Eingabe von 2 Werten den fehlenden Wert ermittelt.
Die möglichen einzugebenden Werte sind Spannung (U [Volt]), Widerstand (R [Ohm]) bzw. Stromstärke (I [Ampere]).
Der fehlende Wert kann null/nothing oder jedes andere beliebige Zeichen sein.
Die Formel zur Berechnung lautet: U = R * I

Beispiel:

U := 270.0
R := null
I := 3.0

R = I / U = 270 / 3 = 90.0 Ohm

Viel Spaß

Lösungen:

vote_ok
von erwinknl (60 Punkte) - 23.10.2020 um 04:21 Uhr
Quellcode ausblenden Python-Code
def uri_calc(u_volt, r_ohm, i_ampere):
    if u_volt is None:
        u_volt = r_ohm * i_ampere
        print("Volt:", u_volt," Ohm:" , r_ohm , " Ampere:", i_ampere)
    elif r_ohm is None:
        r_ohm = u_volt / i_ampere
        print("Volt:", u_volt," Ohm:", r_ohm, " Ampere:", i_ampere)
    elif i_ampere is None:
        i_ampere = u_volt / r_ohm
        print("Volt:", u_volt," Ohm:", r_ohm, " Ampere:", i_ampere)
    else:
        print("Volt:", u_volt," Ohm:", r_ohm, " Ampere:", i_ampere)

if __name__ == "__main__":
    uri_calc(270.0,None,3.0)


vote_ok
von AlexGroeg (2010 Punkte) - 27.10.2020 um 20:23 Uhr
Quellcode ausblenden Python-Code

# -*- coding: utf-8 -*-
# Python 3.8.5 

def berechnung(U, I, R):
    if U > 0 and R > 0 and I > 0  or  U == 0 and R == 0 and I == 0:
        print('Falsche Eingabe.\n')
        eingabe()
    else:
        if U == 0:
            U = R * I
            print('Die Spannung beträgt {} Volt'.format(U))  
        if R == 0:
            R = U / I
            print('Der Wiederstand beträgt {} Ohm'.format(R))
        if I == 0:
            I = U / R
            print('Die Stromstärke beträgt {} Ampere'.format(I))   

def eingabe():
    print('Werte zur Berechnung eingeben, zu berechnenden Wert \nmit 0 überspringen!\n')
    U = int(input('Spannung   : '))
    I = int(input('Stromstärke: '))
    R = int(input('Wiederstand: ')) 
    berechnung(U, I, R)

# main
eingabe()

vote_ok
von Willi (210 Punkte) - 02.11.2020 um 08:34 Uhr
Quellcode ausblenden Python-Code

#U=R*I
print("Geben sie zwei von drei ganzen Werten vor!Der gesuchte Wert wird Null gesetzt:")

U=int(input("Geben sie eine Spannung in Volt ein: ") )
I=int(input("Geben Sie einen Strom in Ampere ein: ") )
R=int(input("Geben Sie einen Widerstand in Ohm ein: ") )

if R and I != 0 and U == 0:
    print("Die fehlende Spannung lautet:", R*I ,"Volt")
    
elif U and R != 0 and I == 0:
    Strom = U/R
    print("Der fehlende Strom lautet:", Strom ,"Ampere")

elif U and I != 0 and R == 0:
    Widerstand = U/I
    print("Der fehlende Widerstand lautet:", Widerstand ,"Ohm")

else:
    print("Falsche Eingabe! Ein Eingabewert muss Null sein")
vote_ok
von andrew (190 Punkte) - 24.11.2020 um 09:49 Uhr
Quellcode ausblenden Python-Code
#Stromstärke, Widerstand oder Spannung berechnen.

import colorama

colorama.init(autoreset=True)

def URI():

    u = -1
    r = -1
    i = -1

    while (u<0 or u==None) or r<0 or i<0 or (u>0 and r>0 and i>0):
        try:
            print("Bitte geben sie 2 Werte aus Spannung, Widerstand oder Strom an.")
            u = float(input("Bitte geben sie die Spannung in Volt an: "))
            r = float(input("Bitte geben sie den Widerstand in Ohm an: "))
            i = float(input("Bitte geben sie den Strom in Ampere an: "))
        except ValueError:
            print(colorama.Fore.RED + "\nNur Zahlen sind erlaubt!\n")
            continue

    if (u==0 or u==None) and r>0 and i>0:
        ergebnis = str(round((r*i),2)) + " Volt"

    elif u>0 and r==0 and i>0:
        ergebnis = str(round((u/i),2)) + " Ohm" 

    elif u>0 and r>0 and i==0:
        ergebnis = str(round((u/r),3)) + " Ampere"

    return ergebnis

print(URI())
vote_ok
von Klaus (1960 Punkte) - 11.12.2020 um 16:51 Uhr
Quellcode ausblenden Python-Code
FORMULA = {'u': lambda r,i: r*i, 'r': lambda u,i: u/i, 'i': lambda u,r: u/r}

def uri(u=None, r=None, i=None):
    try:
        if not u: return FORMULA['u'](r,i)
        elif not r: return FORMULA['r'](u,i)
        elif not i: return FORMULA['i'](u,r)
    except TypeError:
        return 'Sie müssen 2 von 3 Werten angeben.'

print(uri(u=270, r=None, i=3))
print(uri(u=6, r=2))
print(uri(r=6, i=2))
print(uri(u=6, i=2))
print(uri(u=6))
1809671

Du scheinst einen AdBlocker zu nutzen. Ich würde mich freuen, wenn du ihn auf dieser Seite deaktivierst und dich davon überzeugst, dass die Werbung hier nicht störend ist.