PS: Was soll eigentlich "E-Länge", "E-Breite" usw. bedeuten?
Please login to see this attachment.
![]()
PS: Was soll eigentlich "E-Länge", "E-Breite" usw. bedeuten?
Please login to see this attachment.
![]()
Ich bin gestern Abend über dieses C64-BASIC-Programm "Astronomie" gestolpert und wollte es einfach mal hier im Thread mit anhängen.
Ich kann nicht beurteilen, wie genau es ist.
Ich kann ehrlich gesagt, nicht einmal in Gänze beurteilen, was es überhaupt berechnet. ![]()
Aber vielleicht kann man ja eventuell was drin nachgucken, was interessant ist. Ist ja alles in BASIC.
Please login to see this attachment.
Please login to see this attachment.
Please login to see this attachment.
Please login to see this attachment.
Das D64-Image mit dem Programm hänge ich einfach hier mit an. ![]()
Please login to see this attachment.
Ich mag deine Ausdrucke! ![]()
Mehr "Original" wie damalstm geht kaum! ![]()
Partielle Mondfinsternis! Pünktlich rausgucken oder "Sternenhimmel" anwerfen! ![]()
Please login to see this link.
Please login to see this attachment.
if abs(a)=1 or abs(a)>1 then a=sgn(a)*0.99999999
Oder auch if abs(a)>=1 then a=sgn(a)*.99999999
Sollte man so auch in Banksoftware einbauen! ![]()
IF mein_guthaben <= 0 THEN mein_guthaben=1000000
Die Frage war ja, ob das einfacher geht.
Die Zeilen 180 und 185 kann man zu einer Zeile vereinfachen. Hier wie in Zeile 20:
Please login to see this attachment.
Man kann sich zunutze machen, dass x aufgrund der falschen Rundungen für TSB ja wie (1) ist, deswegen gibt es ja den Fehler. Man prüft ganz einfach, ob eine Zahl für TSB 1 oder -1 ist. Und mit ABS und SGN spart man sich die doppelte Überprüfung.
40250 deffnac(x)=pi/2-atn(x/sqr(1-x*x))
Ich muss also den ganzen Ausdruck in Zeile 180 überprüfen, denn das ist ja das Argument von FN ac(x)?!
Kann man das weiter herunterbrechen? Welcher Wert führt denn dazu, dass die Werte 1 und -1 erreicht oder überschritten werden? Hat das was mit der Uhrzeit zu tun? (Eine Eingabe von 1:01 Uhr erzeugt *keinen* Absturz!) Oder sind es die Koordinaten? (Damit hab ich noch nicht herumprobiert.)
Arndt
Du musst -soweit ich das überblicke - nur x überprüfen. Das darf nie (-1) oder (1) sein. Das erzeugt eine Division durch 0 und dann den Fehler.
Wenn durch Rundungen das x für TSB als (-1) oder (1) benutzt wird, dann musst du korrigierend eingreifen, um den Fehler zu vermeiden.
es liegt an der Quadratwurzel
Man muss das Problem an der Wurzel packen! ![]()
Eigentlich hätte ich ja gern die *Ursache* des Absturzes gewusst.
Ich würde es auf Omega schieben! ![]()
Kein Absturz mehr am 24.10.2023 um 1:00 Uhr!
Bitte zur Sicherheit alle Zeiten im Minutenabstand bis zum 31.12.2042 testen! ![]()
Display Moreeingesetzt was zu 1 durch NULL führt!
Also zum Fehler!
Dann wäre aber die Fehlermeldung "Division durch Null".
Please login to see this attachment.
Laut C64-Wiki
Please login to see this link.
" ... ?ILLEGAL QUANTITY ERROR beendet den Programmlauf, wenn ein Eingabeparameter einer Funktionen keinen gültigen Wert aufweist)."
wobei der Fehler wohl in Zeile 40250 entsteht.
Please login to see this attachment.
Hier muss ich leider Korinthen kacken: Eine Division durch Null wirft immer den "Division by zero"-Fehler aus. Die kann nie ausgeführt werden, auch in einer Funktion nicht.
Please login to see this attachment.
eingesetzt was zu 1 durch NULL führt!
Also zum Fehler!
Dann wäre aber die Fehlermeldung "Division durch Null".
Please login to see this attachment.
Soweit ich das sehe und die Werte nach dem Fehlerabbruch händisch ausrechnen lasse, kommt am Ende auch die "1" raus.
Please login to see this attachment.
Scheint soweit schon zu funktionieren mit der Berechnung.
Doch du musst dann etwas warten. Es passiert während des Aufbaus der Sternkarte
Ah, ja. Jetzt habe ich den Fehler auch. War mal wieder zu ungeduldig.
Also ich warte ja nach einer Eingabe immer mindestens 20 Minuten, ob nicht noch ein Fehler kommt. ![]()
100 Jahre Sternenhimmel! ![]()
Please login to see this link.
Ich habe in der Zwischenzeit die Orion durch mein Teleskop gesichtet:
Kauf dir doch endlich mal ein Farbteleskop! ![]()
Die Merchandising-Welle rollt schon an! ![]()
Das original Brettspiel zum "Sternenhimmel"-Programm ist z.B. hier erhältlich:
Please login to see this link.
QuoteStarlink ist ein kreatives Familienspiel für 3 bis 6 Spieler, das zum Träumen einlädt! Wenn du an der Reihe bist, versuche ein geheimes Wort darzustellen, indem du Linien zwischen den Sternen auf dem Spielbrett verbindest und hoffst, dass andere Spieler dein Sternenbild erraten. Am Ende des Spieles wird so ein einzigartiger Sternenhimmel kreiert. Aber beeil dich, denn die Nacht dauert nicht ewig an.
Please login to see this attachment.
Falsch! Siehe hier! (Ist ein Grafikbefehl, man könnte also Teile des Sternenhimmels zoomen...
)
Tatsächlich! TSB steckt voller Geheimnisse, die niemand kennt. (Außer GoDot.)
Man könnte auch das Handbuch lesen, im Wiki nachschlagen oder die Demoprogramme anschauen. ![]()
Leider Fehlanzeige: TSB hat zwar Scroll- aber keine Zoom-Befehle.
Das heißt korrekt: GoDot ist bislang noch nicht dazugekommen, die Zoom-Befehle in TSB einzubauen. ![]()
Da der "Himmel" im "StH" nur eine begrenzte Grösse hat ...
Man könnte doch auch Zoomen und Scrollen! ![]()