Quadratische Gleichungen oder die Primzahlen der quadratischen Gleichung

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Davidcopperfield
User
Beiträge: 8
Registriert: Freitag 12. November 2021, 22:15

Hallo mal wieder :)

Ich habe ein paar Aufgaben zu tun, bevor ich einen Pythonkurs beginne.

Quadratische Gleichungen
Schreibe in der Datei ein Programm, welches den Mittelschulesschülern hilft, die Wurzeln quadratischer Gleichungen zu zählen.
Das Programm sollte:
1. Eine Meldung auf dem Bildschirm anzeigen:

Code: Alles auswählen

 Eine Gleichung in der Form: a*x**2 + b*x + c == 0
2. Die Meldung auf dem Bildschirm anzeigen : "Geben Sie einen A an:"
3. Den Wert vom Benutzer abrufen und in die Variable A speichern (denke daran, den Wert auf den entsprechenden Typ zu übertragen),
4. Wird auf dem Bildschirm die Meldung angezeigt: "Geben Sie B an:",
5. Den Wert vom Benutzer erhalten und ihn in die Variable B speichern (denke daran, den Wert auf den entsprechenden Typ zu übertragen),
6. Meldung auf dem Bildschirm anzeigen: "Geben Sie C an:",
7. Den Wert vom Benutzer erhalten und ihn in die Variable C speichern (denk an die Uebertragung auf den richtigen Typ),
8. Das Delta zählen,
Wenn delta > 0 ist, zähle die Werte von x_1 und x_2 aus der Formel:

Code: Alles auswählen

x_1 = (-b - delta**0.5) / (2 * a)
x_2 = (-b + delta**0.5) / (2 * a)
und zeigen sie als Folgendes an:

Code: Alles auswählen

Quadratwurzel der Quadratgleichung oder Primzahlen der quadratischen Gleichung:
x_1 = <Wert>
x_2 = <Wert>
wenn delta = 0 ist, zähle die Werte von x_1 und x_2 und zeige sie dann auf dem Bildschirm in der Form an:

Code: Alles auswählen

Die Primzahlen der quadratischen Gleichung/ Quadratwurzel der Quadratgleichung:
x_1 = x_2 = <Wert>
Wenn das Delta negativ ist, wird " Keine Lösungen" auf dem Bildschirm angezeigt.

Hinweis: Wir gehen davon aus, dass der Benutzer die Zahlen a, b und c richtig eingab.
Hinweis 2 : Hier das Delta ist keine Mutation des Coronavirus. :D


Mein fehlgeschlagener Versuch:
import math soll angewendet werden? "Delta" ist unbekannt fuer Pycharm :(

Code: Alles auswählen

a= float(input("Gib bitte A an: "))
b= float(input("Gib bitte B ein:  "))
c= float(input("Gib bitte C durch: "))
x1 = (-b - delta ** 0.5) / (2 * a)
x2 = (-b + delta ** 0.5) / (2 * a)
print("Die Gleichung in der Form:")
print("a*x**2 + b*x + c == 0")

if delta > 0:
    print(f'''Die Primzahlen der quadratischen Gleichung/ Quadratwurzel der Quadratgleichung :
x_1 = {x1}, x_2 = {x2}''')
elif delta == 0:
    print(f'''Die Primzahlen der quadratischen Gleichung/ Quadratwurzel der Quadratgleichung:
x1 = x2 = {x2} ''')
else:
    print("Keine Lösungen")
Benutzeravatar
__blackjack__
User
Beiträge: 14077
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Davidcopperfield: Ja natürlich ist das unbekannt. Dachtest Du wenn Du den Namen `a`, `b`, und `c` einen Zahlwert zuweist, dann entsteht auf magische Weise eine Variable `delta` die zudem auch noch berücksichtigt, dass es sich bei `a`, `b`, und `c` um Variablen handelt die im Kontext so einer Gleichung betrachtet werden, obwohl das nirgends im Programm steht‽ Denkst Du der Rechner/Python können das Aufgabenblatt *verstehen* oder Deine Gedanken lesen?

Die Aufgabe scheint halt auch zu sein sich zu überlegen wie man `delta` aus den gegebenen Informationen ausrechnet und das zu tun. Also Code zu schreiben der das tut.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
P_Python
User
Beiträge: 19
Registriert: Donnerstag 11. November 2021, 19:45

Code: Alles auswählen

x_1 = (-b - delta**0.5) / (2 * a)
x_2 = (-b + delta**0.5) / (2 * a)
Das sind doch die 2 Lösungen einer quadratischen Gleichung, wobei ein Term zu delta zusammengefasst wurde.
**0.5 bedeutet "hoch 0.5"

a**0.5 bedeutet Wurzel aus a

Ist es jetzt klar, was delta ist?
Benutzeravatar
noisefloor
User
Beiträge: 4195
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

das war auch vor im Prinzip schon klar. Die Frage an DICH ist eher, ob du verstehst, das DU in deinem Code die Variablen `delta` berechnen musst, weil der Computer das nicht automagisch macht. Ansonsten bekommst einen `NameError` wenn du den Code ausführst.

Gruß, noisfloor
Davidcopperfield
User
Beiträge: 8
Registriert: Freitag 12. November 2021, 22:15

Mir fehlt die Ideen sowie Lösungen. Ich ahne nicht, was muss man hinfügen.
Benutzeravatar
noisefloor
User
Beiträge: 4195
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

na ja, wir auch nicht :-) Fakt ist nun mal, dass die Berechnung, die du in deinem Code hast, eine Variable Namens `delta` erwartet. Wie auch immer die berechnet wird. Das sollte ja irgendwo irgendwie definiert sein bzw. euch erklärt worden sein.
Ich würde mal drauf tippen, dass man delta irgendwie aus a, b und c berechnen kann. Sonst wäre das ja nicht lösbar.

Gruß, noisefloor
Benutzeravatar
noisefloor
User
Beiträge: 4195
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Nachtrag: 3 Minute Google Recherche bringen den Hinweis auf die "abc-Formel (Mitternachtsformel)" zu Tage...

Gruß, noisefloor
Antworten