Matrice c++ chiarimento testo esercizio.

di il
1 risposte

Matrice c++ chiarimento testo esercizio.

Mi date una mano con l impostazione di questo esercizio?Non mi e chiarissima la parte sottolineata.Cioe,io devo mettere un while con tappo 9 e finche non si digita devo fare quello che mi viene chiesto?Cioe a seconda del numero selezionato,chiamo la funzione? Perche devo memorizzarli in un array?Poi devo scorrere l array e dire se e == 1 alzaPenna se == 2 abbassa penna e cosi via??Grazie..
Una tartaruga ammaestrata si muove su un pavimento ed ha in mano una penna. La penna può essere alzata o abbassata: quando la penna è abbassata, la tartaruga, mentre si muove, scrive sul pavimento. È possibile dare dei comandi alla tartaruga, che, essendo ben addestrata, li eseguirà senza indugio. Si scriva un programma completo in C++ che permetta di simulare questa situazione. Un array bidimensionale (matrice) di dimensioni 20 x 20 rappresenta il pavimento, inizializzato a 0. Si leggano da input i comandi che la tartaruga deve eseguire, a priori, e li si memorizzino in un array (sostanzialmente si deve leggere una sequenza di comandi – numeri interi – terminata da un tappo pari a 9, come specificato più avanti). Una volta letti i comandi, bisogna eseguirli, ricordando che in ogni momento è necessario tenere traccia della posizione della tartaruga e dello stato della penna.

I comandi che la tartaruga può eseguire sono:

1. alza penna
2. abbassa penna
3. vai ad est
4. vai ad ovest
5. vai a sud
6. vai a nord
7. visualizza pavimento
8. – comando non consentito –
9. terminare

N.B.: è evidente che nelle funzioni che implementano l’esecuzione degli spostamenti nelle varie direzioni bisogna leggere anche il numero di passi che la tartaruga deve compiere. Si noti che l’esecuzione di queste funzioni deve avvenire dopo la lettura dei comandi, che è comunque effettuata a priori. In pratica, durante la fase di esecuzione, il programma, scorrendo l’array dei comandi, quando incontra un comando di spostamento (ad esempio, “vai ad est”) deve chiedere all’utente di inserire il numero di passi da compiere. Sarebbe preferibile anche verificare che il numero di passi sia effettivamente completabile: giusto a titolo esemplificativo, quando la tartaruga si trova vicina al bordo e il numero di passi richiesto farebbe finire la tartaruga fuori dal pavimento, il programma dovrebbe segnalare all’utente la situazione e richiedere di inserire un altro numero; in aggiunta, se la tartaruga fosse esattamente sul bordo, e quindi l’unico numero di passi consentito fosse ZERO, il programma potrebbe segnalare che il comando di spostamento in quella direzione non è consentito.

1 Risposte

  • Re: Matrice c++ chiarimento testo esercizio.

    Secondo me per prima cosa l'utente sceglie l'ordine delle operazioni che la tartaruga dovrà eseguire. Naturalmente la richiesta di input va inserita in un ciclo con la condizione di uscita = utente sceglie 9.
    Questa sequenza di operazioni scelta dall'utente la memorizzi in un array e poi, scorrendo l'array un elemento alla volta, il programma esegue le funzioni corrispondenti.
    Almeno così ho interpretato io.
    Ciao
Devi accedere o registrarti per scrivere nel forum
1 risposte