Nell’ormai lontano gennaio del 2015 mi ritrovai davanti gli occhi uno dei numeri della famosa rivista italiana di enigmistica chiamata La Settimana Enigmistica, e più esattamente uno di quei numeri in cui c’è il Quesito con la Susi. Leggendolo mi venne in mente quanto sarebbe stato facile codificarlo in Prolog e lasciare che questo desse la soluzione in modo automatico.
Da allora, quando mi va e ho tempo e mi capita sotto gli occhi un Quesito con la Susi che può essere codificato in qualche linguaggio di programmazione in modo che sia l’esecuzione del codice a fornire la soluzione, mi diletto in questa attività.
Nessuno dei codici scritti ha la pretesa di essere la migliore soluzione possibile; al contrario, lo scopo era proprio mostrare quanto può essere facile mettendoci il meno impegno possibile1.
Per spezzare un po’ la monotonia ho provato (e proverò) a usare diversi linguaggi di programmazione. Lo scopo di questa pagina è proprio di tenere traccia dei linguaggi usati per ciascun problema, un po’ come fatto all’inizio del problema 936, ma mettendo il linguaggio come “chiave”.
Aggiornamento novembre 2024
Ogni quesito qui elaborato è stato letto sulla rivista cartacea originale; una presenza frequente, quasi abituale, a casa. Purtroppo nel tempo molte cose cambiano: le abitudini, appunto, ma anche la voglia, la forza, la presenza di spirito e via dicendo. Ho visto La Settimana Enigmistica sempre meno spesso e quando è capitato, non era il “numero giusto” (con un quesito della Susi). Questo è il principale motivo dell’apparente interruzione di questa serie che invece è sempre pronta a crescere, qualora dovesse ricapitarmi tra le mani il numero.
Elenco per linguaggio
- Ada2: 958
- AWK: 962
- C: 934
- C++: 946
- Erlang: 937
- Fortran3: 948
- Go: 954
- Haskell: 923
- J: 936
- Java: 959
- Julia: 965
- Maxima: 925
- Metafont: 932
- Octave: 925
- Perl5: 928
- PHP: 960
- Prolog: 921
- Python2: 927
- Python3: (927)
- Racket: 945
- Raku: 940
- Ruby: 931
- Smalltalk: 939
Alcuni problemi non sono stati risolti usando un linguaggio di programmazione ma altri strumenti digitali, oppure nemmeno questi.
Tutta un’altra questione sono i problemi di ProjectEuler: solo i primi possono essere risolti usando algoritmi banali, e spesso uno stesso problema si ripresenta dopo con uno “spazio di input” più grande, in modo da rendere improponibile l’uso dell’algoritmo banale. Non è fonte di preoccupazione nel caso dei problemi della Susi!↩︎
Quando scrivo «Ada», di solito intendo Ada 2012. O comunque non più indietro di Ada 95…↩︎
Quando scrivo «Fortran», intendo sempre Fortran “moderno”, quindi come minimo Fortran90; credo di usare anche feature del Fortran 2003 senza troppo pensarci su (a cominciare dalla sintassi per gli array: uso
[ ]
e non(/ /)
(a meno che non sia necessario per motivi di compatibilità).↩︎
972 quesito con la susi
RispondiEliminaPurtroppo non ho il numero della Settimana con tale quesito.
EliminaNe ho risolti un paio in Java, ma devo dire che sei andato molto, ma molto, oltre. Complimenti!
RispondiEliminaGrazie. Purtroppo è un po' che non vedo numeri nuovi della Settimana con la Susi...
Elimina976° wuesito
RispondiEliminaLo puoi trovare su https://muapna.blogspot.com/2021/05/quesito-con-la-susi-n-976.html ma solo con la soluzione "manuale".
Elimina977°quesito con la susi?
RispondiEliminasessanta cubi
Elimina