Es. 2. 08/05

Da aptiva.

Ottimo... Tre soli commenti secondari: occorre uno spazio fra il codice di una lettera e la successiva e uno spazio piu' lungo fra le parole. (Sequenze di 6 o piu' punti indicano un errore di trasmissione) Si poteva inizializzare il dizionario in modo piu' "compatto" senza dover ripetere sempre MorseEncoding. In python per scandire i caratteri di una stringa non e' necessario fare

 for i in range(len(s))
   .... elabora s[i]

si puo' scrivere in modo piu' compatto

 for c in s:
   .... elabora c

Ecco un'altra versione del programma:

CODE = {' ': ' ',
  "'": '.----.', '(': '-.--.-', ')': '-.--.-', ',': '--..--',
  '-': '-....-', '.': '.-.-.-', '/': '-..-.', '0': '-----',
  '1': '.----', '2': '..---', '3': '...--', '4': '....-',
  '5': '.....', '6': '-....', '7': '--...', '8': '---..',
  '9': '----.', ':': '---...', ';': '-.-.-.', '?': '..--..',
  'A': '.-', 'B': '-...', 'C': '-.-.', 'D': '-..',
  'E': '.', 'F': '..-.', 'G': '--.', 'H': '....',
  'I': '..', 'J': '.---', 'K': '-.-', 'L': '.-..',
  'M': '--', 'N': '-.', 'O': '---', 'P': '.--.',
  'Q': '--.-', 'R': '.-.', 'S': '...', 'T': '-',
  'U': '..-', 'V': '...-', 'W': '.--', 'X': '-..-',
  'Y': '-.--', 'Z': '--..', '_': '..--.-'}

frase=input('frase da traddure in morse: ')
for c in frase:
  print(CODE[c.upper()],end=' ')
print()
Strumenti personali
Namespace

Varianti
Azioni
Navigazione
Strumenti