Salve, sono sempre alle prese con il gioco. Però sono riuscita a metterlo su, adesso devo fare in modo che il gioco non termini dopo la prima giocata. Ci sono riuscita in parte, perché esce la scritta: "scrivi fine per terminare il gioco", esce la riga per scrivere, ma non so perché non esce il messaggio all'uscita; nel senso che dopo che l'utente scriva "fine", esca la scritta "fine gioco"!
Grazie a chi vorrà aiutarmi!
ecco il codice, sperando di riuscire a mettere il tag code, questa volta.
Classe senza main.
import java.util.*;
public class MioGioco {
public int sceltaRudy() {
Random random = new Random();
return random.nextInt(3) + 1;
}
public static void valutaRisultato(int utente, int computer, String nomeUtente) {
String risultato = null;
if (utente ==1){
if (computer ==1) {
System.out.println(risultato = "Carta con carta: pareggio!");
}
}
if (utente ==2) {
if (computer == 2) {
System.out.println(risultato = "Forbice con forbice pareggio!");
}
}
if (utente ==3) {
if (computer ==3) {
System.out.println(risultato = "Sasso con sasso Pareggio!");
}
}
if (utente== 1) {
if (computer ==2) {
System.out.println(risultato = "Forbici taglia carta... ha vinto rudi!");
}
}
if (utente ==1) {
if (computer ==3) {
System.out.println(risultato = "Carta avvolge sasso... vince " + nomeUtente + "!");
}
}
if (utente == 2) {
if (computer ==1) {
System.out.print(risultato = "Forbice taglia carta vince ..." + nomeUtente + "!");
}
}
if (utente == 2) {
if (computer == 3) {
System.out.println(risultato = "Sasso rompe forbice... vince Rudy!");
}
}
if ( utente == 3) {
if (computer ==1) {
System.out.println(risultato = "Sasso avvolge carta... vince Rudy!");
}
}
if (utente == 3) {
if ( computer ==2) {
System.out.println(risultato = "Sasso rompe forbice vince... " + nomeUtente + "!");
}
}
}
}
Classe con il main.
import java.util.Scanner;
public class CartaForbiceESasso {
public static void main(String args []) {
MioGioco miogioco = new MioGioco();
int sceltaDiRudy;
sceltaDiRudy=miogioco.sceltaRudy();
Scanner scanner = new Scanner(
System.in);
System.out.println("Benvenuto! pronto a giocare con rudy? Presentati scrivendo il tuo nome e premi invio!");
String nomeUtente = scanner.nextLine();
int sceltaUtente = 0;
do {
System.out.println("Ciao" + nomeUtente + "! Digita 1 per carta, 2 per forbici e 3 per sasso");
sceltaUtente = scanner.nextInt();
scanner.nextLine();
}
while ((sceltaUtente < 1) || (sceltaUtente > 3));
miogioco.valutaRisultato(sceltaUtente, sceltaDiRudy, nomeUtente);
String rispostaUtente;
System.out.println("Digita fine per terminare il gioco");
while(!(rispostaUtente = scanner.next()).equals("fine")) {
System.out.println("Fine gioco!");
scanner.nextLine();
}
}
}

Rispondi quotando