Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2019
    Messaggi
    26

    Un altro piccolo aiuto.

    Salve,
    sono sempre alle prese con il gioco di carta forbice e sasso, e ho un ultimo problema.
    Ho provato ad utilizzare il costrutto while per far si che l'utente scelga se continuare ancora il gioco o fermarsi, ma non funziona, ovvero li ho detto di digitare 4 per uscire e 0 per ricominciare, quansdo premo 4 esce la scritta fine gioco come ho volevo io, ma il programma non si chiude; poi se premo 0 anziché ricominciare esce sempre la scritta fine gioco e il gioco resta aperto: come mai?
    Queste sono i due file:
    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);
    while (sceltaDiRudy < 10 && sceltaUtente <10) {
    System.out.println("Digita 4 per terminare il gioco, 0 per continuare");
    sceltaUtente = scanner.nextInt();
    scanner.nextLine();
    System.out.print("Fine gioco!");
    }
    }
    }
    Grazie a chi vorrà aiutarmi!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Devi usare i tag Quote per il codice e inventarlo altrimenti non si capisce nulla. Ad esempio non si capisce dove inizia e finisce il whikle di cui parli
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    inoltre, standing ovation per il titolo del thread.

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Quote Originariamente inviata da optime Visualizza il messaggio
    inoltre, standing ovation per il titolo del thread.
    Anche se non è la prima volta che usa questi titoli ...

    http://www.pierotofy.it/pages/extras...imo_passaggio/


    tag Quote
    Volevo ovviamente scrivere i tag CODE
    Ultima modifica di oregon; 11-11-2019 a 11:10
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2019
    Messaggi
    26
    Quote Originariamente inviata da oregon Visualizza il messaggio
    Anche se non è la prima volta che usa questi titoli ...
    Sono nuova del sito, se c'è una regola per scrivere gli oggetti, se me la spiegate la prossima volta la metto in pratica
    http://www.pierotofy.it/pages/extras...imo_passaggio/




    Volevo ovviamente scrivere i tag CODE
    Ho provato a farlo, ma evidentemente sbaglio qualcosa: ho scritto il codice e poi ho cliccato su "inserisci tra tag codice". Dove sbaglio?

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,481
    Quote Originariamente inviata da Lucym80 Visualizza il messaggio
    Ho provato a farlo, ma evidentemente sbaglio qualcosa: ho scritto il codice e poi ho cliccato su "inserisci tra tag codice". Dove sbaglio?

    Hai evidenziato il codice prima di cliccare ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,326
    Quote Originariamente inviata da Lucym80 Visualizza il messaggio
    Ho provato a farlo, ma evidentemente sbaglio qualcosa: ho scritto il codice e poi ho cliccato su "inserisci tra tag codice". Dove sbaglio?
    Provato a fare il contrario? Prima cliccare sul pulsante e poi scrivere il codice dentro ai tag?

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2019
    Messaggi
    26
    Quote Originariamente inviata da LeleFT Visualizza il messaggio
    Provato a fare il contrario? Prima cliccare sul pulsante e poi scrivere il codice dentro ai tag?

    Ciao.
    No, se non è un problema, dopo provo e vediamo se va

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2019
    Messaggi
    26
    Allora, rifaccio la prova per vedere se adesso va. Il codice è leggermente cambiato, perché ho inserito il ciclo infinito, quindi il programma ricomincia sempre da capo, ma in realtà volevo che fosse l'utente a decidere. magari se potete darmi qualche dritta per quale costrutto
    utilizzare e la sintattica corretta per scriverlo, perché mi sbaglio ancora un po'.
    Speriamo che adesso il tag code vada bene!
    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 + "!");
    }
    }
    }
    }
    import java.util.Scanner;
    public class CartaForbiceESasso {
    public static void main(String args []) {
    for(;{
    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);
    }
    }
    }

  10. #10
    lo vedi da solo che non va bene

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.