# PROGRAM SMS1 # Version fuer das faible-Projekt # Version: 20.5.2024 # # nach dem Faible-Projekt: # aktualisiert mit Anzeigen der SMS-Liste: 20.6.2026 # Autor: Arno Pasternak # ========================================== # Das Programm unterliegt der GPL, Version 3 console.log "SMS 1" #psa/8.2.2024 console.log "======================================" console.log "Programm SMS 1" console.log "Stand 20.6.2026" console.log "======================================" console.log "" caesarverschluesseln = (satz, versatz) -> verschluesselter_satz = "" laenge = satz.length stelle = 0 while stelle < laenge asciizahl = satz.charCodeAt stelle asciizahl = asciizahl + versatz zeichen = String.fromCharCode(asciizahl) verschluesselter_satz = verschluesselter_satz + zeichen stelle = stelle + 1 satz = verschluesselter_satz return satz caesarentschluesseln = (satz, versatz)-> entschluesselter_satz = "" laenge = satz.length stelle= 0 while stelle < laenge asciizahl = satz.charCodeAt stelle asciizahl = asciizahl - versatz zeichen = String.fromCharCode(asciizahl) entschluesselter_satz = entschluesselter_satz + zeichen stelle = stelle + 1 satz = entschluesselter_satz return satz # ------------------------------------------------------------ console.log "Das Programm ist gestartet" box white, 1000 bk 500 write "" write "==============================================================" write " SMS Programm mit Caesar-Verschlüsselung" write " Version: 20.6.2026" write "==============================================================" write "==============================================================" write "
" write "
" wahl = "noch nichts gewaehlt" satz = "Startsatz" codezahl = 1 await read 'Bitte gib Deinen Namen an:    ', defer teilnehmer while wahl != "Q" do ct write "---------------------------------------------------------" write "PROGRAMM SMS 1 *** Teilnehmer: " + teilnehmer + "" write "Die SMS ist derzeit:      " + satz + "" write "---------------------------------------------------------" write "
" write 'E: Eingabe *** A: Ausgabe' write 'V: Verschluesseln *** D: Decodieren' write 'S: Senden *** H: Holen' write 'Z: Zeigen aller SMS ** C: Codezahl eingeben' write "Q: Ende" write "
" await read ' ', defer wahl write "
" write "Du hast eingegeben: ", wahl write "---------------------------------------------------------" write "
" if wahl is "E" await read 'SMS eingeben: ', defer satz if wahl is "A" write "Die SMS ist derzeit: ", satz if wahl is 'S' await read 'Bitte Empfänger eingeben: ', defer empfaenger dateiname = empfaenger+'_'+teilnehmer+'.sms' save dateiname, satz write 'Die SMS wurde versandt.' pause 2 if wahl is 'H' await read 'Bitte Absender eingeben: ', defer absender dateiname = teilnehmer+'_'+absender+'.sms' await load dateiname, defer satz if satz is '' antwort = 'Keine SMS von ' + absender + ' vorhanden.' write antwort satz = antwort pause 2 else write 'Die SMS wurde geholt.' pause 1 if wahl is "V" satz = caesarverschluesseln satz, codezahl if wahl is "D" satz = caesarentschluesseln satz, codezahl if wahl is "C" await read 'Codezahl eingeben: ', defer codezahl if wahl is "Z" write 'Die zugehörigen SMS-Dateieinträge werden ermittelt.' write 'Einen Moment bitte!' write ' ' await load '/load/', defer verzeichniseintrag # mit /load/ wird offensichtlich ein Feld # mit json-Objekten der Verzeichniseintraege in Unix-Art geliefert. sms_liste = "" for i in [0...verzeichniseintrag.length] dateiname = "" if verzeichniseintrag[i].name.startsWith(teilnehmer) and verzeichniseintrag[i].name.endsWith(".sms") dateiname = verzeichniseintrag[i].name if dateiname != "" sms_liste = sms_liste + ' ' + dateiname write 'Die SMS-Liste ist:' write sms_liste write ' ' write 'Es geht nach 5 Sekunden weiter.' pause 5 # Ende von While console.log "Das Programm ist beendet" #{satz}" write "
" write "======================================" write "Das Programm ist beendet" write "======================================"