From 7167b4341ef290d56fb96e2af10883a4b925d83b Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Thu, 26 Mar 2026 19:27:18 +0100 Subject: I found my old code! --- robottino/all_versions/v1.0/src/Robottino.java | 160 +++++++++++++++++++++++++ 1 file changed, 160 insertions(+) create mode 100755 robottino/all_versions/v1.0/src/Robottino.java (limited to 'robottino/all_versions/v1.0/src/Robottino.java') diff --git a/robottino/all_versions/v1.0/src/Robottino.java b/robottino/all_versions/v1.0/src/Robottino.java new file mode 100755 index 0000000..e155613 --- /dev/null +++ b/robottino/all_versions/v1.0/src/Robottino.java @@ -0,0 +1,160 @@ +import java.util.Scanner; +class Robottino extends PartiDelRobot { + public static void main(String argv[]) { + Robottino robot = new Robottino(); + PartiDelRobot pdr[] = { new PartiDelRobot (false, "il braccio sinistro alzato"), + new PartiDelRobot (false, "il braccio destro alzato"), + new PartiDelRobot (false, "la gamba sinistra alzata"), + new PartiDelRobot (false, "la gamba destra alzata") }; + Scanner sc = new Scanner(System.in); + String comando; + String nomeRobot[] = { "" }; + System.out.println("**********************************************"); + System.out.println("**********************************************"); + System.out.println("*************Programma interattivo************"); + System.out.println("**********************************************"); + System.out.println("***Software realizzato da Sebastiano Tronto***"); + System.out.println("**********************************************"); + System.out.println("**********************************************"); + System.out.println("Questo programma simula un robot al quale ven-"); + System.out.println("gono assegnati ordini tramite comandi, simil-" ); + System.out.println("mente a quanto bisognava fare con i computer " ); + System.out.println("alcuni anni fa." ); + System.out.println("Dato che all'epoca i comandi che dovevano es-" ); + System.out.println("sere dati erano (e sono tutt'ora) in similin-" ); + System.out.println("glese, ho cercato di mantenerli tali." ); + System.out.println("Il programma non fa distinzioni tra lettere" ); + System.out.println("maiuscole o minuscole." ); + System.out.println("" ); + System.out.println("Digita un comando e premi invio" ); + System.out.println("l = legenda comandi" ); + do { + comando = sc.nextLine(); + System.out.println ("Siamo spiacenti, ma per motivi tecnici non sono in grado di visualizzare l'immagine del robot."); + System.out.println (robot.Azioni(comando, nomeRobot, pdr)); + } while ( !(comando.equalsIgnoreCase("exit")) ); + } + String Azioni(String comando, String nomeRobot[], PartiDelRobot pdr[]) { + Scanner sc2 = new Scanner(System.in); + int contatore = 0; + String stat[] = {"", "", "", ""}; + String Return = "Errore - si consiglia di picchiare il programmatore"; + if (comando.equalsIgnoreCase("leftarmmove")) + pdr[0].statoParte = !pdr[0].statoParte; + else if (comando.equalsIgnoreCase("rightarmmove")) + pdr[1].statoParte = !pdr[1].statoParte; + else if (comando.equalsIgnoreCase("leftlegmove")) + pdr[2].statoParte = !pdr[2].statoParte; + else if (comando.equalsIgnoreCase("rightlegmove")) + pdr[3].statoParte = !pdr[3].statoParte; + else if (comando.equalsIgnoreCase("leftarmon")) + pdr[0].statoParte = true; + else if (comando.equalsIgnoreCase("rightarmon")) + pdr[1].statoParte = true; + else if (comando.equalsIgnoreCase("leftlegon")) + pdr[2].statoParte = true; + else if (comando.equalsIgnoreCase("rightlegon")) + pdr[3].statoParte = true; + else if (comando.equalsIgnoreCase("leftarmoff")) + pdr[0].statoParte = false; + else if (comando.equalsIgnoreCase("rightarmoff")) + pdr[1].statoParte = false; + else if (comando.equalsIgnoreCase("leftlegoff")) + pdr[2].statoParte = false; + else if (comando.equalsIgnoreCase("rightlegoff")) + pdr[3].statoParte = false; + else if (comando.equalsIgnoreCase("exploud")) { + System.out.println ("Che atroce! Hai fatto esplodere il robottino " + nomeRobot[0] + "! Aspetta che te ne faccio un altro"); + System.out.println ("..."); + for (int i = 0; i < pdr.length; i++) { + pdr[i].statoParte = false; + } + nomeRobot[0] = ""; + return "Fatto, puoi continuare a giocare"; + } + else if (comando.equalsIgnoreCase("bier")) { + System.out.println ("Il robottino " + nomeRobot[0] + "sta trangugiando una birra..."); + System.out.println ("Buurrrrrrrrp!"); + return "La birra analcolica fa schifo!"; + } + else if (comando.equalsIgnoreCase("rename")) { + System.out.println ("Con questo comando quoi cambiare il nome del robottino " + nomeRobot[0]); + System.out.println ("Digita il nuovo nome e premi invio per coninuare"); + nomeRobot[0] = sc2.nextLine(); + if (!(nomeRobot[0].equalsIgnoreCase(""))) + nomeRobot[0] += " "; + return "Ora il robottino si chiama " + nomeRobot[0]; + } + else if (comando.equalsIgnoreCase("porky")) { + System.out.println ("Porky è un grande"); + System.out.println ("Per maggiori informazioni visita il sito"); + return "http://kakati.forumfree.net/"; + } + else if (comando.equalsIgnoreCase("xxx")) { + System.out.println ("Il robottino " + nomeRobot[0] + "ha incontrato una bella robottina..."); + return "*Censura*"; + } + else if (comando.equalsIgnoreCase("l")) { + System.out.println ("Legenda comandi"); + System.out.println (""); + System.out.println ("LeftArmMove: cambia la posizione corrente del braccio sinistro del robot"); + System.out.println ("RightArmMove: cambia la posizione corrente del braccio destro del robot"); + System.out.println ("LeftLegMove: cambia la posizione corrente della gamba sinistra del robot"); + System.out.println ("RightLegMove: cambia la posizione corrente della gamba destra del robot"); + System.out.println ("LeftArmOn: se il braccio sinistro non è alzato, lo alza, altrimenti la posizione resta invariata"); + System.out.println ("RightArmOn: se il braccio destro non è alzato, lo alza, altrimenti la posizione resta invariata"); + System.out.println ("LeftLegOn: se la gamba sinistra non è alzata, la alza, altrimenti la posizione resta invariata"); + System.out.println ("RightLegOn: se la gamba destra non è alzata, la alza, altrimenti la posizione resta invariata"); + System.out.println ("LeftArmOff: se il braccio sinistro non è abbassato, lo abbassa, altrimenti la posizione resta invariata"); + System.out.println ("RightArmOff: se il braccio destro non è abbassato, lo abbassa, altrimenti la posizione resta invariata"); + System.out.println ("LeftLegOff: se la gamba sinistra non è abbassata, la abbassa, altrimenti la posizione resta invariata"); + System.out.println ("RightLegOff: se la gamba destra non è abbassata, la abbassa, altrimenti la posizione resta invariata"); + System.out.println ("Exit: esci dal programma"); + System.out.println (""); + System.out.println ("Comandi a sorpresa:"); + System.out.println (""); + System.out.println ("Exploud"); + System.out.println ("Bier"); + System.out.println ("Rename"); + System.out.println ("Porky"); + System.out.println ("xxx"); + return ""; + + } + else + System.out.println ("Comando non riconosciuto - digitare l per una legenda dei comandi disponibili"); + for (int i = 0, j = 0; i < pdr.length; i++) { + if (pdr[i].statoParte) { + contatore += 1; + stat[j++] = pdr[i].stringaParte; + } + } + switch (contatore) { + case 0: + Return = "Comunque il robottino " + nomeRobot[0] + "non sta facendo niente"; + break; + case 1: + Return = "Immagini che il robottino " + nomeRobot[0] + "abbia " + stat[0] + "."; + break; + case 2: + Return = "Immagini che il robottino " + nomeRobot[0] + "abbia " + stat[0] + " e " + stat[1] + "."; + break; + case 3: + Return = "Immagini che il robottino " + nomeRobot[0] + "abbia " + stat[0] + ", " + stat[1] + " e " + stat[2] + "."; + break; + case 4: + Return = "Immagini che il robottino " + nomeRobot[0] + "abbia " + stat[0] + ", " + stat[1] + ", " + stat[2] + " e " + stat[3] + "."; + break; + } + return Return; + } +} + + + + + + + + + -- cgit v1.3