Zum Inhalt springen

Programm zur Nullstellenberechnung als Projektarbeit - Empfehlenswert?


Power-Lamer

Empfohlene Beiträge

Moin,

Wir müssen von der Schule aus eine Projektarbeit anfertigen. Mein Mathe-Lehrer hat mich angesprochen, ob ich nicht ein C++ Programm zum berechnen der Nullstellen für eine Funktion f(x) schreiben möchte.

Wir haben in der Schule bisher nur einfache Programme geschrieben:

If-Else-Anweisungen

For und While-Schleifen

Switch-Anweisungen

und Grundlegende Rechenarten

Meint ihr das es nicht zu viel ist für mich jetzt so ein Programm zu schreiben?

Denn mir stellen sich noch ein paar Fragen:

Wenn jemand für eine Funktion f(x) z.B. 3x eingibt, wie stelle ich das an, das er für x den schon vorher festgelegten Wert für x einsetzt und dann multipliziert (z.B. wurde vorher über cin für x 2 eingegeben, wie stelle es dann an das er nach der Eingabe der Funktion 3*2 rechnet?)

Danke schonmal!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wieviel Zeit ist denn für die Projektarbeit geplant? So ein Nullstellensuchprogramm kann nämlich praktisch beliebig kompliziert werden.

1. Eingabe

Soll der Benutzer die Funktionsvorschrift selbst eingeben können (d.h. du hast einen String "y = 2*x*x - 4") oder soll die Funktionsvorschrift als gültiger Code im Quelltext stehen?

Im ersten Fall musst du einen Parser schreiben, der den String zerlegt und auswertet. Keine einfache Aufgabe, schon gar nicht für einen Anfänger. Im zweiten Fall bleibt dir das erspart, aber das Programm ist dadurch weniger benutzerfreundlich, und du nimmst dir die Möglichkeit der symbolischen Verarbeitung (siehe Punkt 2).

2. Verarbeitung

Sollen die Nullstellen rein numerisch gesucht werden (d.h. durch wiederholtes Einsetzen und Ausprobieren) oder soll die Funktionsgleichung Null gesetzt und nach x aufgelöst werden?

Im ersten Fall musst du mit Genauigkeitsproblemen rechnen. Im zweiten Fall (setzt einen Parser voraus) musst du die algebraischen Gesetze auf die vom Parser erzeugte Datenstruktur anwenden. Auch keine einfache Aufgabe.

Was ganz gut funktionieren könnte: Du könntest dich auf bestimmte Arten von Funktionen beschränken, z.B. lineare. Der Benutzer kann nur die Koeffizienten eingeben (dadurch brauchst du keinen Parser). Wenn das gut läuft, kannst du noch quadratische Funktionen dazu nehmen. Alles andere dürfte den Rahmen der Projektarbeit sprengen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

1. Eingabe Soll der Benutzer die Funktionsvorschrift selbst eingeben können (d.h. du hast einen String "y = 2*x*x - 4")

genau das soll der benutzer eingeben.

Wenn der String dann z.B. y=x²+3x-4 ist, soll da programm automatisch erkennen, das es hier mit der pq-formel forfahren kann und diese dann anwenden und das Ergebnis ausgeben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also ich würde das so nciht machen, würde es in etwa so machen

pq formel geht ja bekanntlich nur bei einer quadratischen funktion oderß wenn du x³ hast ist es ja doof das runter zu rechnen

alsowürde ich dem programm das so vorgeben:

f(x) = +- a2*x +-a1*x +- a0

dann kann er vorher auswählen bei welchem a ein plu soder ein minus kommt, ach und du musst auch beachten dass ein x negativ sein kann

aber das dürfte mit grundkenntnissen zu machen sein!

Geht aber leichter mit einem builder oder musst du konsole machen?

wenn du hilfe brauchst ich habe sowas auch mal programmiert!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...