www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Englisch
  Status Grammatik
  Status Lektüre
  Status Korrekturlesen
  Status Übersetzung
  Status Sonstiges (Englisch)

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Maxima" - Abbruchkriterium do-Befehl
Abbruchkriterium do-Befehl < Maxima < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Maxima"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Abbruchkriterium do-Befehl: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 14:32 Mi 05.02.2025
Autor: Techniker5

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

Ich möchte eine Gleichung iterativ lösen lassen mit dem do-Befehl. Mit einer festen Anzahl Schritten funktioniert das auch (i:1 thru 10 do...).

Was ich nicht hinkriege ist das ganze mit Abbruchbedingung (while oder unless), so dass ich eine "Genauigkeit" vorgeben kann. Problem scheint zu sein, das der eigentliche "do-Befehl" ganz hinten stehen muß und das Abbruchkriterium vorher von Maxima geprüft wird. Ich möchte aber ja das Ergebnis des letzten "do-Durchlaufs" als Abbruchkriterium nutzen. Die Beispiele in der Hilfe für "while/unless" sind ungeeignet.

Danke schon mal im Vorraus!


        
Bezug
Abbruchkriterium do-Befehl: Eine Idee
Status: (Antwort) fertig Status 
Datum: 13:36 Do 06.02.2025
Autor: Infinit

Hallo Techniker5,
ich habe zwar noch nie mit Maxima gearbeitet, das Problem, das Du beschreibst, gibt es aber natürlich auch in anderen Programmiersprachen. Ich habe mal ein wenig nach der Maxima-Syntax geschaut und würde Dir vorschlagen, nicht nur eine Differenz als Abbruckriterium zu nehmen, sondern auch eine bestimmte Anzahl von Durchläufen. Damit kannst Du auf jeden Fall sicherstellen, dass das Programm mal endet, was ja sicherlich gewollt ist. Vor Deiner Schleife werden ein paar Startwerte gesetzt, und dann könnte die Programmstruktur (ungefähr) so aussehen (mit ein paar Zahlen zum einfacheren Verständnis):

Resalt:0;
Res:1;
Eps:10^(-5);
Looplimit:1000;
for i:1 step 1 thru Looplimit while (abs(Res-Resalt)>EPS) do
block(
/* bringe hier Dein Iterationsprogramm rein
/* es liefert das Ergebnis Res
   Resalt=Res;
   print(Res) /* Nur zur Kontrolle, muss nicht sein
      );
      print(i); /* Auch nur zur Kontrolle
      print(res);
      
In dieser Form würde ich das aufbauen, ich kann aber meine Hand nicht dafür ins Feuer legen, dass die Syntax komplett richtig ist.

Viele Grüße,
Infinit




Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Maxima"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.englischraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]