Autor |
Beitrag |
Fiete
Beiträge: 611
Erhaltene Danke: 347
W7
Delphi 6 pro
|
Verfasst: Sa 15.02.20 14:26
Moin,
das Programm berechnet zu einem Text die Gödelnummer bzw. wird durch Primfaktorzerlegung der Text aus einer Gödelnummer rekonstruiert.
Eine Gödelnummer ist eine natürliche Zahl, die einem Wort einer formalen Sprache nach einem bestimmten Verfahren zugeordnet wird und dieses Wort eindeutig kennzeichnet. Ein solches Verfahren bezeichnet man als Gödelisierung. Die Bezeichnungen beziehen sich auf Kurt Gödel, der erstmals ein solches Verfahren angab, um seinen Unvollständigkeitssatz zu beweisen.
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| unit LangZahlRechnen; interface uses StdCtrls, SysUtils;
const T=1000000000;BL=9; type TFeld=Array of Int64;
procedure LangInt(var A:TFeld;B:Integer); function LangKleiner(A,B:TFeld):Boolean; function LangGleich(A,B:TFeld):Boolean; procedure LangRead(Zahl:String;var Z:TFeld); procedure LangAdd(var S:TFeld;A,B:TFeld); procedure LangSub(var D:TFeld;A,B:TFeld); procedure LangMul(var E:TFeld;A,B:TFeld); procedure LangDivision(var E,R:TFeld;A,B:TFeld); procedure LangAusgabe(LMemo:TMemo;S:TFeld); procedure LangWurzel(var XA:TFeld;A:TFeld); procedure LangPotenz(var E:TFeld;B:TFeld;Expo:Cardinal); | Aktuell arbeitet das Programm mit 78498 Primzahlen, die Unit LangZahlRechnen enthält die Methoden zur Berechnung.
Unter Service sind theoretische Hinweise, Grundbegrife zu formalen Sprachen und zum Algorithmusbegriff.
Das Alphabet besteht aus 101 Zeichen.
Viel Spaß beim Testen und Studieren
Gruß Fiete
Version 2: Unter <Rechenart> kann zwischen Primzahl- oder Dualzahlcodierung gewählt werden
Einloggen, um Attachments anzusehen!
_________________ Fietes Gesetz: use your brain (THINK)
Zuletzt bearbeitet von Fiete am Di 18.02.20 18:11, insgesamt 1-mal bearbeitet
Für diesen Beitrag haben gedankt: Delphi-Laie, Gausi, Mathematiker, Narses, ub60
|
|
Delphi-Laie
Beiträge: 1600
Erhaltene Danke: 232
Delphi 2 - RAD-Studio 10.1 Berlin
|
Verfasst: Sa 15.02.20 23:35
Das finde ich sehr interessant!
Am meisten interessiert mich allerdings die Unit für das Rechnen mit langen Zahlen. Ich schrieb mal einen "Langzahlentaschenrechner" (auch hier im Forum zu finden), der vor allem meiner Neugier geschuldet war und ist, wie leistungsfähig die einzelnen, in Pascal geschriebenen und im Internet zu findenden Langzahlenbibliotheken sind (ja, die in den C-Sprachen geschriebenen sind anzunehmenderweise tendenziell noch schneller). Leider dümpelt besagtes Projekt seit längerem vor sich hin (ganz eingeschlafen ist es jedoch noch nicht), weil mich mein Programmierhauptprojekt, mit dem ich endlich Ordnung in der Welt schaffen möchte (kleiner Scherz), derzeit noch sehr in seinen Bann zieht.
Mal noch eine Frage, Fiete: Das, was in den beiden RTF-Dateien zu finden ist, ist oder besser war das bereits Thema im Informatikstudium (ich vermute bis befürchte es), oder hast Du Dir das erst später erarbeitet?
_________________ Ordnung ist das halbe Leben - und sie zu schaffen die andere Hälfte.
|
|
jaenicke
Beiträge: 19284
Erhaltene Danke: 1742
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: So 16.02.20 09:12
Delphi-Laie hat folgendes geschrieben : | Mal noch eine Frage, Fiete: Das, was in den beiden RTF-Dateien zu finden ist, ist oder besser war das bereits Thema im Informatikstudium (ich vermute bis befürchte es), oder hast Du Dir das erst später erarbeitet? |
Ja, ist es. Wenn ich mich richtig erinnere, war beides im Kurs "Theoretische Grundlagen der Informatik 2" im zweiten Semester Thema.
Für diesen Beitrag haben gedankt: Delphi-Laie
|
|
Gausi
Beiträge: 8538
Erhaltene Danke: 475
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: So 16.02.20 10:20
Ja, die "Grundbegriffe"-Datei über formale Sprachen ist so ziemlich Standard im Informatikstudium. Sieht auf den ersten Blick für Laien (kein Wortwitz beabsichtigt!) im Bereich theoretische Informatik vermutlich furchtbar abschreckend aus, aber das liegt nur am "Vokabular", das dort verwendet wird. Dinge wie G = (\Phi, \Sigma, R, S ) sind da dann irgendwann völlig alltäglich. Der Inhalt ist relativ leicht zu verstehen, und wenn man dann zu "praktischen" Dingen wie Compilerbau geht, baucht man das.
Das ist einfach nur die klare Sprache der Mathematik, die dort verwendet wird. Wenn man die halbwegs draufhat und versteht, verlieren solche Zeichenwüsten ihren Schrecken. Wobei RTF dafür ja auch nicht das ideale Format ist.
Mein Prof hat uns früher z.B. immer eingebleut:
Zitat: | Wenn Sie in einer Prüfung gefragt werden, was eine Turingmaschine ist, dann antworten Sie mit "Das ist ein 5-Tupel". Punkt. Im Anschluss erläutern Sie die Bedeutung der einzelnen Elemente im Tupel, und ggf. die Bedeutung für den Begriff der Berechenbarkeit. Fangen Sie nicht an mit "Ja, also, da hat man ein Band und da liest ein Kopf die Eingabe." Das ist Murks. |
Andere definieren das auch als 7-Tupel - das ist etwas Geschmackssache, was man in das Tupel direkt rein nimmt, und was man in die Erläuterungen steckt.
@Fiete: Super Sache!
_________________ We are, we were and will not be.
Für diesen Beitrag haben gedankt: Delphi-Laie
|
|
Delphi-Laie
Beiträge: 1600
Erhaltene Danke: 232
Delphi 2 - RAD-Studio 10.1 Berlin
|
Verfasst: So 16.02.20 13:35
Dank Euch beiden!
Ja, das ahnte ich: Ein Informatikstudium ist eben in gewisser Weise ein "anderes Mathematikstudium". Kein Wunder, daß so viele daran scheitern, weil denen das vorab nicht klar ist.
_________________ Ordnung ist das halbe Leben - und sie zu schaffen die andere Hälfte.
Zuletzt bearbeitet von Delphi-Laie am So 16.02.20 18:08, insgesamt 1-mal bearbeitet
|
|
Fiete
Beiträge: 611
Erhaltene Danke: 347
W7
Delphi 6 pro
|
Verfasst: So 16.02.20 15:11
Moin Delphi-Laie,
alles was unter <Service> abrufbar ist habe ich im Informatikstudium kennen und schätzen gelernt.
Die Ursache liegt darin, dass ich das Mathematikstudium bis zum Vordiplom durchgehalten habe.
Professor Collatz(Uni HH)) stellte 1970 in seiner Vorlesung Funktionalanalysis uns den neuen Studiengang Informatik vor.
Die reine Mathematik war für mich zu abstrakt, die theoretische Informatik dagegen ein Genuss.
In meiner Diplomarbeit habe ich mich mit Klammersprachen beschäftigt.
1974 verließen wir die Uni als zweiter Jahrgang das Institut.
1971 wurde das Institut für Informatik eingeweiht, einer der Redner war Prof. Joseph Weizenbaum.
Mehr zu meinen Wurzeln:
www.inf.uni-hamburg....e/about/history.html
Übrigens: Informatik ist nicht programmieren!
_________________ Fietes Gesetz: use your brain (THINK)
Für diesen Beitrag haben gedankt: Delphi-Laie
|
|
Delphi-Laie
Beiträge: 1600
Erhaltene Danke: 232
Delphi 2 - RAD-Studio 10.1 Berlin
|
Verfasst: So 16.02.20 15:42
Fiete hat folgendes geschrieben : | Übrigens: Informatik ist nicht programmieren! |
Natürlich nicht. Wer behauptet denn so etwas? Also ich tat es hier nicht.
Ich bin der Meinung, daß Computer in einem Informatikunterricht bzw. -studium kaum bis gar nichts zu suchen haben. Höchstens zum Schluß bei der programmatischen Umsetzung der Ideen, um deren Korrektheit zu verifizieren bzw. doch irgendwelche konzeptionellen Fehler zu finden.
_________________ Ordnung ist das halbe Leben - und sie zu schaffen die andere Hälfte.
|
|
Fiete
Beiträge: 611
Erhaltene Danke: 347
W7
Delphi 6 pro
|
Verfasst: So 16.02.20 17:26
Moin Delphi-Laie,
Zitat: | Übrigens: Informatik ist nicht programmieren! |
Dies ist eine allgemeine Bemerkung, hat mit Dir persönlich natürlich nichts zu tun.
Diesen Hinweis haben wird 1973 den Anfängern mit auf den Weg gegeben.
_________________ Fietes Gesetz: use your brain (THINK)
|
|
Fiete
Beiträge: 611
Erhaltene Danke: 347
W7
Delphi 6 pro
|
Verfasst: Di 18.02.20 18:14
Moin,
es gibt eine neue Version zur Berechnung einer Gödelnummer.
Gruß Fiete
_________________ Fietes Gesetz: use your brain (THINK)
|
|
|