# PROGRAM SMS2
# Version fuer das faible-Projekt
# Version: 21.5.2024
# Autor: Arno Pasternak
# Das Programm unterliegt der GPL, Version 3
# ==========================================
console.log "SMS 2"
#psa/8.2.2024/22.5.2024
console.log "======================================"
console.log "Programm SMS 2"
console.log "======================================"
console.log ""
vigenereverschluesseln = (satz, codewort) ->
verschluesselter_satz = ""
laenge = satz.length
stelle = 0
codestelle = 0
while stelle < laenge
asciizahl = satz.charCodeAt stelle
codeasciizahl = codewort.charCodeAt codestelle
asciizahl = asciizahl + codeasciizahl - 64
buchstabe = String.fromCharCode(asciizahl)
verschluesselter_satz = verschluesselter_satz + buchstabe
stelle = stelle + 1
codestelle = codestelle + 1
if codestelle == codewort.length
codestelle = 0
satz = verschluesselter_satz
return satz
vigenereentschluesseln = (satz, codewort)->
entschluesselter_satz = ""
laenge = satz.length
stelle= 0
codestelle = 0
while stelle < laenge
asciizahl = satz.charCodeAt stelle
codeasciizahl = codewort.charCodeAt codestelle
asciizahl = asciizahl - codeasciizahl + 64
buchstabe = String.fromCharCode(asciizahl)
entschluesselter_satz = entschluesselter_satz + buchstabe
stelle = stelle + 1
codestelle = codestelle + 1
if codestelle == codewort.length
codestelle = 0
satz = entschluesselter_satz
return satz
# ------------------------------------------------------------
console.log "Das Programm ist gestartet"
box white, 1000
bk 500
write ""
write "=============================================================="
write " SMS Programm mit Vigenère-Verschlüsselung"
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 2 *** 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: Codewort 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 = vigenereverschluesseln satz, codewort
if wahl is "D"
satz = vigenereentschluesseln satz, codewort
if wahl is "C"
await read 'Codewort eingeben: ', defer codewort
if wahl is "Z"
await read 'Derzeit nicht realisiert', defer fehlt
console.log "Das Programm ist beendet" #{satz}"
write "
"
write "======================================"
write "Das Programm ist beendet"
write "======================================"