|
|
|
Berechnungsschleife mit Zahlenänderung |
|
| mischka89 |

Forum-Anfänger
|
 |
Beiträge: 23
|
 |
|
 |
Anmeldedatum: 24.10.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 24.10.2011, 20:17
Titel: Berechnungsschleife mit Zahlenänderung
|
 |
Hallo,
ich müsste ein Programm in Matlab schreiben, welches als Schleife diese Berechnung macht:
habe leider einige Probleme beim schreiben des Programms, ich weiß leider nicht, wie ich das mit dem "Ansprechen" der einzelnen Werte programmieren soll. Matlab soll immer gleiche Zahlen im Nenner erste Stelle und im Zähler zweite Stelle errechnen, und in der Ausgabe sollte das Programm nur Zahlen in solch einer Reihenfolge, wie oben genannt ausgeben.
Wie bekomme ich sowas hin?
Vielen Dank
Grüße
|
|
|
|
|
|
| Kevin |

Forum-Fortgeschrittener
|
 |
Beiträge: 93
|
 |
|
 |
Anmeldedatum: 18.08.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.10.2011, 08:38
Titel:
|
 |
Hallo,
bitte poste mal ernsthaften code. Ich weiß nichtmal was in der Schleife passieren soll.
Grüße
Kevin
_________________
1000 Buchstaben? Warum nur 6?
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 25.10.2011, 12:14
Titel: Re: Berechnungsschleife mit Zahlenänderung
|
 |
Hallo mischka89,
Die Frage ist noch nicht klar. Was bedeuten CA, BCD, BACAB usw?
| Zitat: |
| Matlab soll immer gleiche Zahlen im Nenner erste Stelle und im Zähler zweite Stelle errechnen, |
Kannst Du ein paar konkrete Beispiele angeben?
Gruß, Jan
|
|
|
|
| mischka89 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 23
|
 |
|
 |
Anmeldedatum: 24.10.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.10.2011, 16:58
Titel:
|
 |
tut mir Leid, bin neu hier. Das sollte kein Code sein, sondern die Aufgabe, ich müsste eine Schleife einrichten, die nach dieser Aufgabe alle Zahlen von 1 bis 9 in die einzelnen Buchstaben einsetzt und das angegebene Ergebnis in der Reihenolge des Ergebnisses: 0,BACAB BACAB BACAB...... errechnet, bzw. ausgibt. Hier ein Beispiel:
C/B= 0,BBBBBBB... bspw. Kann man nun 1 für C und 3 für B einsetzen, dies gibt dann eine wahre Aussage: 1/3 = 0,333333...., da B die eingesetzte Zahl 3 ist, und auch im Ergebnis wird das Verlangte erreicht 0,333... Das ist jetzt ein sehr einfaches Beispiel mit sehr wenig Möglichkeiten.
Das von mir angefragte Beispiel enthält sehr viele Lösungen, daher wollte ich das in Matlab programmieren, nur bekomme ich das nicht hin.
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 25.10.2011, 18:57
Titel:
|
 |
| |
 |
|
Hallo mischka89,
Ja, das ist schon klarer.
Solche Aufgaben tendieren dazu mehr Lösungen zu haben, als es Protonen im Universum gibt. Es lohnt sich also vorher die Menge der Lösungen zu bestimmen um sich im Zweifelsfall 10^32 Jahre Rechenzeit zu sparen.
Die Aussage "1/3 = 0,333333..." ist auf einem Computer übrigens nur sehr schwer überprüfbar, da man dazu eigentlich unendlich viele Stellen benötigen würde.
Die einfachste Methode um "CA / BCD = 0.BACAB BACAB" in Matlab zu fassen ist eine Umwandlung per STRREP und SSCANF. Ein grundlegendes Problem wird aber bleiben, dass die Berechnung der Division nur mit begrenzter Precision ausgeführt wird.
Um Rundungsfehler zu vermeiden kann es sinnvoll sein mit einer Zehnerpotenz zu multiplizieren um Integer-Werte zu erhalten. Das funtioniert bis 2^53. Ansonsten läßt sich das natürlich auf symbolisch lösen:
"CA" bedeutet ja nichts anderes als "10*c + 1*a", so dass es sich eventuell nur um das Finden von Lösungen linearer Gleichungssysteme handelt.
Gruß, Jan
|
|
|
|
| mischka89 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 23
|
 |
|
 |
Anmeldedatum: 24.10.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 25.10.2011, 20:29
Titel:
|
 |
vielen Dank dir für die schnelle Hilfe, wie könnnte ich nun noch die Zahlen die für die Buchstaben eingesetzt werden, in eine Schleife packen, und Matlab am besten irgendwie sagen, dass er mir nur die richtigen Ergebnisse ausgeben soll, sprich,
-wenn Nenner B als erste und letzte Zahl in den ersten 5 Buchtsaben hinter dem Komma erscheint
-wenn im Zähler A als zweite und vierte Zahl in den ersten 5 Buchtsaben hinter dem Komma erscheint
-wenn im Zähler Position eins und Nenner Position zwei C als dritte Zahl in den ersten 5 Buchtsaben hinter dem Komma erscheint
Ich habe zwar die Idee, wie das ungefähr gehen soll, doch leider kann ich das nicht programmieren, mir fehlt die Erfahrung.
Könntet ihr mir helfen?
Vielen Dank
|
|
|
|
| mischka89 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 23
|
 |
|
 |
Anmeldedatum: 24.10.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.10.2011, 12:57
Titel:
|
 |
|
kann mir denn keiner helfen ?
|
|
|
|
| mischka89 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 23
|
 |
|
 |
Anmeldedatum: 24.10.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.11.2011, 00:19
Titel:
|
 |
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 01.11.2011, 13:44
Titel:
|
 |
Hallo mischka89,
Dein Problem ist sehr speziell, es wird also nur wenige Leute geben, die sich damit beschäftigen.
Auf der anderen Seite sind solche Probleme im Allgemeinen bereits mit Bleistift und Papier lösbar. Die Methoden zur Lösung in Matlab wurden hier bereits genannt, Du müsstest sie also nur noch anwenden. Und schließlich scheinen ein paar der Aussagen zu zeigen, dass Du das Problem selbst noch nicht ganz überschaust, z.B. "1/3 = 0,333333..." Das läßt sich nämlich auf einem Rechner nicht ohne weiteres überprüfen, da die Genauigkeit auf 16 Stellen begrenzt ist.
Deswegen bezweifele ich, dass jemand die Frage beantworten wird. Wenn Du recht genau weißt, was Du möchtest, es aber nicht programmieren kannst, wäre dies ein Fall für die Kategorie "Programmieraufträge". Bei angemessener Aufwandsentschädigung findet sich eher jemand, der ein Problem löst, dass für ihn eigentlich nicht interessant ist.
Gruß, Jan
|
|
|
|
| mischka89 |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 23
|
 |
|
 |
Anmeldedatum: 24.10.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.11.2011, 14:45
Titel:
|
 |
okay, habe nicht gedacht dass das der Fall ist.
Werde es aber lieber nochmal selber probieren, trotzdem, vielen Dank dir Jan
|
|
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|