Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Gioco dell'impiccato

  1. #1

    Gioco dell'impiccato

    Salve ragazzi...dovrei fare un programma Java che simuli il gioco dell'impiccato. Il problema è che mi blocco quasi all'inizio, non riesco ad estrarre casualmente la parola dall'array.
    La traccia è la seguente:
    Obiettivo del progetto è la realizzazione di un programma Java che implementi il ben
    noto gioco dell’impiccato seguendo le specifiche descritte di seguito.

    1. L’utente deve inserire una sequenza di parole di senso compiuto che costituiranno il dizionario da cui estrarre casualmente la parola da indovinare. Il numero di parole della sequenza sarà stabilito dall’utente stesso. Tale operazione deve necessariamente essere effettuata prima di avviare una sessione di gioco vera e propria.
    2. Si devono poter eseguire una o più sessioni di gioco, basate sul dizionario di parole già acquisite dal programma all’inizio. Una sessione di gioco si svolge come descritto di seguito.
    All’avvio, il programma stampa un “patibolo” vuoto e tanti trattini quante sono le lettere che compongono la parola da indovinare. Ad esempio, se la parola estratta fosse “margherita”, il programma dovrebbe produrre il seguente output:

    |---------|
    | |
    |
    |
    |
    |
    |
    /|\
    _ _ _ _ _ _ _ _ _ _
    Viene quindi richiesta l’immissione di una lettera. Se essa è contenuta nella parola, allora al posto di ogni trattino corrispondente alla lettera si deve stampare la lettera stessa, altrimenti deve essere aggiunto un elemento all’impiccato sul patibolo; gli elementi da aggiungere al patibolo sono, nell’ordine:
    o testa
    o corpo
    o braccio sinistro
    o braccio destro
    o gamba sinistra
    o gamba destra.
    Ad esempio, se la lettera immessa dall’utente fosse la ‘R’, il programma dovrebbe produrre il seguente output:
    |---------|
    | |
    |
    |
    |
    |
    |
    /|\
    _ _ R _ _ _ R _ _ _
    Se invece la lettera immessa dall’utente non fosse contenuta nella parola da indovinare, per esempio: la ‘C’, si
    dovrebbe ottenere il seguente output:
    |---------|
    | |
    | O
    |
    |
    |
    |
    /|\
    _ _ _ _ _ _ _ _ _ _
    Una sessione di gioco termina quando la parola è stata indovinata (l’utente ha vinto), o quando l’impiccato sul patibolo è stato completato di tutte le parti (l’utente ha perso). Di seguito sono illustrate, nell’ordine, due possibili situazioni per entrambi i casi (vittoria e sconfitta) relativamente all’esempio mostrato in precedenza:
    |---------|
    | |
    | O
    | /|
    | |
    |
    |
    /|\
    M A R G H E R I T A
    HAI VINTO!!!!!
    VUOI GIOCARE ANCORA?
    ------------------------------------------
    |---------|
    | |
    | O
    | /|\
    | |
    | / \
    |
    /|\
    _ A R _ _ E R _ _ A
    MI DISPIACE, HAI PERSO.
    VUOI GIOCARE ANCORA?
    NOTE:
    1. Le lettere possono essere inserite dall’utente indifferentemente in maiuscolo oppure in minuscolo.
    2. Se l’utente immette una lettera già inserita precedentemente, non accade nulla (sia nel caso in cui si tratti di una lettera “buona”, sia nel caso in cui si tratti di una lettera “cattiva”). Il programma, tuttavia, deve segnalare all’utente che quella lettera è già stata inserita in precedenza.

  2. #2
    Prima cosa, prima di fare tutto il resto, sistema il codice che hai fatto fino ad ora, potresti postarlo?

    Spero che per stampare a video il gioco, non mi riferisco ai trattini della parola, non usi solamente i trattini, anche perché potresti farlo disegnare tramite la classe Graphics

  3. #3
    Benvenuto nel forum di html.it

    Ti invito a leggere il Regolamento

    Nel titolo del post deve essere descritto il linguaggio utilizzato, e la richiesta deve essere fatta nella sezione/sotto-sezione giusta: nel caso specifico, Java ha una propria sezione.

    Questa discussione verrà spostata nella 'sede' adatta.

  4. #4
    Originariamente inviato da MdE2005
    Benvenuto nel forum di html.it

    Ti invito a leggere il Regolamento

    Nel titolo del post deve essere descritto il linguaggio utilizzato, e la richiesta deve essere fatta nella sezione/sotto-sezione giusta: nel caso specifico, Java ha una propria sezione.

    Questa discussione verrà spostata nella 'sede' adatta.
    Apprezzo lo zelo, ma lasciaci almeno il gusto del copia-incolla delle ramanzine...
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Originariamente inviato da MItaly
    ..lasciaci almeno il gusto del copia-incolla delle ramanzine...
    OT: Non sapevo che si provasse piacere nel rimproverare..forse quando si è giovani si!

    Buona giornata

  6. #6
    Originariamente inviato da MdE2005
    Benvenuto nel forum di html.it

    Ti invito a leggere il Regolamento

    Nel titolo del post deve essere descritto il linguaggio utilizzato, e la richiesta deve essere fatta nella sezione/sotto-sezione giusta: nel caso specifico, Java ha una propria sezione.

    Questa discussione verrà spostata nella 'sede' adatta.
    Scusami... ho fatto tutto di fretta alle 3 di notte e non avevo letto il regolamento! Mi scuso ancora!

  7. #7
    Originariamente inviato da dragon88
    Prima cosa, prima di fare tutto il resto, sistema il codice che hai fatto fino ad ora, potresti postarlo?

    Spero che per stampare a video il gioco, non mi riferisco ai trattini della parola, non usi solamente i trattini, anche perché potresti farlo disegnare tramite la classe Graphics
    import java.util.*;

    public class impiccato {

    public static Scanner input = new Scanner(System.in);

    public static void main(String[] args) {
    System.out.println("Inserisci il numero di quante parole vuoi ci siano nel tuo dizionario");
    int k = input.nextInt();
    System.out.println("Inserisci le parole che vuoi siano nel tuo dizionario");
    char parola[] = new char[k];
    for (int m = 0; m < parola.length; m++)
    parola[m] = input.next().charAt(0);

    }

    }


    Questo è il primo pezzo in cui mi carico l'array di k parole.... Adesso si dovrebbe estrarre una parola a casa dall'array, solo che non so proprio come fare!
    Prima di utilizzare la classe Graphics volevo trovare un algoritmo per risolverso normalmente!

  8. #8
    Crei un array di stringe da dove prendi una parola a caso, poi con il codice che ti scrivo scomponi la parola in array di char e poi controlli se la lettera che hai scritto fa parte di quest'ultimo array.

    codice:
            int n;
            String testo = "Parola";
            n = testo.length();
            char car[] = new char[n];
            testo.getChars(0, n, car, 0);
    Per trovare un numero casuale puoi utilizzare il codice che trovi qui

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.