Beiträge von p. specht

    Lieber Heinz! Deine verständlichen Forderungen an das Ein-Mann-Programmierteam namens RGH erscheinen etwas überzogen. Mit Vorschlägen, gefälligst Gratisarbeit zu leisten, wäre ich vorsichtiger, weil eine Antwort a la "Mach doch selber!" droht,


    Ich empfehle JRPC3 als Nachfolger des für X3 aufgebohrten xpse. JRPC3 compiliert XProfan-X4, hat gute Fehlermeldungen, inzwischen eine Schnittstelle zu FreeBasic (m.E. ebenso Anfänger-geeignet), und legt die Schienen in die Zukunft anstelle des etwas zu oft geforderten XProfan-X5. Vielleicht bin ich da aber auch auf dem Holzweg. Kann ja sein ...

    Dimensionierst du das Array[8,5,3]? Dann wird eine 9 * 6 * 4 Elemente lange Liste im Speicher erzeugt, Der Index der Elemente errechnet sich so:


    Anzahl Spalten = AS = 9 , mit Spaltenindex S = 0 ... 8

    Anzahl Zeilen = AZ = 6, mit Zeilenindex Z = 0 ... 5

    LISTENINDEX DES SPEICHERELEMENTS = Index = S + Z * AS + E * (AS * AZ)


    <klugscheiß on> Umgekehrt kann man sich Spalte, Zeile und Ebene ein-eindeutig aus dem Listenindex errechnen, insoweit die Dimensionierung des Arrays bekannt ist. Dabei kann man auch fein manipulieren, etwa "Gestürzte Matrizen" erzeugen, ohne physisch umsortieren zu müssen.<klugscheiß off>

    Du hast ein 5 x 5 x 5 - Array definiert, das - anders als in der Mathematik - bei 0 beginnt und [Kolumne, Zeile, Ebene] abgespeichert wird. Die Indizes beziehen sich dabei auf das N.te Element der ALS LISTE abgespeicherten Matrix.

    Wird beim Abfragen die Ebene weggelassen, wird dort automatisch 0 angenommen.


    "C" ist daher das 10. Element der als Speicherreihenfolge-Liste gespeicherten Matrix.

    0 1 2 3 4

    5 6 7 8 9

    10


    P.S.: Beim Checken der Dimensionen hilft TypeOf()

    Tolle Verbesserungen an ALGORITHMEN seit 2000

    ========================================

    Für manche Probleme der Informatik waren bisher nur Algorithmen bekannt, die mit exponentieller Laufzeit auf eine Steigerung der Elementezahl reagieren. Sprich: Für reelle Ingenieuraufgaben wartet man ewig auf den Abschluß des Algorithmus (falls überhaupt der Speicherplatz ausreicht). Am Beispiel des Graph-Isomorphismus-Problems konnte 2015 ein qualitativ deutlich verbesserter Algorithmus gefunden werden (Prof. Lazlo Babei), der nur logarithmische Komplexität aufweist. 2017 wurde dafür der (Prof.em. Donald ...) KNUTH-Preis vergeben, der für derartige Verbessserungen vorgesehen ist. Die Liste der Preisträger (Link hier) zeigt einen Querschnitt ähnlicher Verbessserungen seit 2000. Höhere Mathematik wie Gruppen-Theorie spielt dabei allerdings recht oft eine Rolle - ein Grund mehr, sich auch damit zu beschäftigen.

    Weitere Ergänzung: Ab 10 000 155 als Startwert treten Zwischenwerte auf, die die 2^31-1 Bit-Grenze des MOD-Befehls von XProfan, wie er im obigen Programm verwendet wurde, überschreiten. Das Ergebnis ist dann nicht mehr zuverlässig. Die von mir gefundene längste Kette innerhalb dieses so abgesteckten Geltungsbereiches tritt beim Wert 10 000 033 auf und beträgt dort 344 Schritte. Ich habe allerdings nicht alle Werte zwischen

    1 und 10 000 155 geprüft, vielleicht gibt es irgendwo darunter doch noch eine längere Kette?


    P.S.: Längere Ketten böten sich imho als Crypto-Schlüssel an - solange die Startzahl geheim bleibt...

    Weil ich´s gerade lese:


    Herr Kollege Ravenheart, lieber Rabe:

    ALLES GUTE ZUM GEBURTSTAG!


    Ergänzung: Zur Vermutung von Herrn Dr. Lothar Collatz aus 1937 gibt es unzählige Pseudobeweise und Amateur-Videos auf Youtube. Für den allgemeinen Fall bei ungeraden Nummern mit einer Regel N:= a*N+b wurde mittlerweile die Unentscheidbarkeit im Sinne des Turing-Halteproblems bewiesen! Dennoch gibt es immer wieder neue Erkenntnisse zur Original-Collatzfolge, z.B. HIER (Youtube, engl.)

    Collatz-Folge erzeugen und deren Länge bestimmen

    =========================================

    If n gerade: N = N/2

    if n ungerade: N = 3*N+1

    solange, bis N im Zyklus 4 - 2 - 1 steckt.


    Die Collatz-Vermutung lautet: "Alle Zahlen landen bei 1. Das gilt für alle ganzen Zahlen N größer 0" und steht noch immer zum endgültigen Beweis aus. Computer haben bisher von 1 bis 10^20 durchgerechnet und kein Gegenbeispiel gefunden.

    Wie US-Rufnamen eigentlich in der Geburtsurkunde stehen:

    ==============================================

    Will, Willy, Billy und Liam heißen eigentlich WILLIAM (dt. Wilhelm),

    Hick, Dick, Rick, Richy eigentlich RICHARD,

    Hank eigentlich Henry (Heinrich),

    Jack, Jacky, eigentich JOHN (Johann),

    Jake eigentlich JACOB,

    Chuck eigentlich CHARLES oder CARLOS (Karl),

    Ted, Teo, Teddy, Edward eigentlich THEODORE (Theodor),

    Jim eigentlich JAMES (Johannes),

    Meg, Maggy, Peggy, Grit eigentlich MARGARET (Margarete),

    Sally eigentlich SARAH,

    etc.


    Mit welchem bekannten Namen in den USA Verträge unterschrieben werden, ist dort persönlicher Stil.

    Heinz, dein obiger Beitrag ist für mein schon so lange geplantes VORRÄTE-LAGER-UND ABLAUFDATUM-WARNPROGRAMM geradezu ideal. Mir fehlt momentan umbaubedingt leider die Zeit fürs programmieren - aber vielleicht kommt mir ja jemand zuvor (hoffentlich)? :oops: