Salve,
ancora una volta sono io, ho finito la tombola a cui stavo lavorando soltanto che ora vorrei semplificarne la struttura dato che continuo a fare cose "incomprensibili " per le altre persone, ecco il codice, qualche idea?
ovviamente per funzionare deve esserci il file Input.java nella stessa cartella (allego sotto)
codice:import java.util.Random;public class Tombola{ public static void main(String args[]){ int contatore=0,contatore2=1,contatorearray=0; int salta,sottrai,stop=0; int a=1,b,c,d=-1,e,f=0; int[] numeri2= new int[90]; String premi="a",nome,cognome; String[] vincitori= new String[90]; System.out.println("Benvenuto nella Tombola\nUna volta iniziata per decretare i premi basta scriverli in minuscolo 1n\n\"esempio: tombola\"\nI comandi sono questi\ntombola\nquaterna\nterna\nambo\nvincite (per rivedere le vincite)\nfine (per finire il gioco quando ti stufi)\nPer iniziare premere INVIO"); while(! premi.equals("")){ premi = Input.readLine(); if (! premi.equals("")) System.out.println("HO DETTO INVIO NON "+premi+"!!"); } while (contatore<90){ c=0; salta=0; sottrai=0; java.util.Random numeri3=new java.util.Random(); b=numeri3.nextInt(91); if (contatore>0) { for (contatorearray=0;contatorearray<90;contatorearray++){ if (numeri2[c]==b){ sottrai=1; salta=1; contatorearray=90; } c++; } } if (salta==0){ System.out.println("Numero:" + b); if (sottrai==1){ a--; sottrai=0; } if (a<90)numeri2[a]=b; a++; if (contatore==0) System.out.println("Per estrarre un numero premere Invio"); if (contatore==1)System.out.println("Inserire premi, se ce ne sono"); premi = Input.readLine(); if (! premi.equals("")) { contatore2=1; while(contatore2<2){ if (premi.equals("tombola")) { System.out.print("Inserire nome vincitore: "); nome=Input.readLine(); System.out.print("Inserire cognome vincitore: "); cognome=Input.readLine(); System.out.println(""); System.out.println(nome+" "+cognome+" HA FATTO TOMBOLA!"); System.out.println(""); stop=1; break; } if (premi.equals("terna")) { System.out.print("Inserire nome vincitore: "); nome=Input.readLine(); System.out.print("Inserire cognome vincitore: "); cognome=Input.readLine(); d++; vincitori[d]=(nome+" "+cognome+" terna"); System.out.println(""); System.out.println(nome+" "+cognome+" ha fatto terna"); System.out.println(""); contatore2=3; } if (premi.equals("quaterna")) { System.out.print("Inserire nome vincitore: "); nome=Input.readLine(); System.out.print("Inserire cognome vincitore: "); cognome=Input.readLine(); d++; vincitori[d]=(nome+" "+cognome+" quaterna"); System.out.println(""); System.out.println(nome+" "+cognome+" ha fatto quaterna"); System.out.println(""); contatore2=3; } if (premi.equals("ambo")) { System.out.print("Inserire nome vincitore: "); nome=Input.readLine(); System.out.print("Inserire cognome vincitore: "); cognome=Input.readLine(); d++; vincitori[d]=(nome+" "+cognome+" ambo"); System.out.println(""); System.out.println(nome+" "+cognome+" ha fatto ambo"); System.out.println(""); contatore2=3; } if (premi.equals("vincite")){ f=0;d++; for(e=0;e<d;e++){ f++; System.out.println(f+") "+ vincitori[e]); } System.out.println("INVIO per continuare"); nome="non \"\""; while (! nome.equals("")){ nome=Input.readLine(); if (nome.equals(""))break; System.out.println("premi INVIO non "+nome); } d--; } if (premi.equals("fine"))stop=1; if (! premi.equals("ambo") ){ if (! premi.equals("terna")){ if (! premi.equals("quaterna")){ if (! premi.equals("vincite")){ if (! premi.equals("fine")){ System.out.println("Il comando/premio inserito non esiste scegliere tra:\ntombola\nquaterna\nterna\nambo\nvincite (per rivedere le vincite)\nfine (per finire il gioco)\nSe hai sbagliato premi invio"); premi = Input.readLine(); if (premi.equals("")) break; contatore2--; } } } } } contatore2++; } } if (contatore==90){ System.out.println("La tombola finisce qui:\nMi dispiace che nessuno abbia fatto Tombola\nLa prossima volta avrete piu fortuna"); break; } if (stop==1) break; contatore++; } } } }
input.java che deve stare nella stessa cartella di Tombola.java
codice:import java.io.BufferedReader;import java.io.InputStreamReader; import java.io.IOException; public class Input{ private static BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); public static String readLine(){ String inputLine = ""; try{ inputLine = reader.readLine(); } catch(IOException e){ System.out.println(e); System.exit(1); } return inputLine; } public static int readInt(){ String inputString = readLine(); inputString = inputString.trim(); int n = Integer.parseInt(inputString); return n; } public static double readDouble(){ String inputString = readLine(); inputString = inputString.trim(); double x = Double.parseDouble(inputString); return x; } public static char readChar(){ String inputString = readLine(); char c = inputString.charAt(0); return c; } }

, ho finito la tombola a cui stavo lavorando soltanto che ora vorrei semplificarne la struttura dato che continuo a fare cose "incomprensibili " per le altre persone, ecco il codice, qualche idea?
Rispondi quotando