Gioco dell'11

gioco dell 11

Realizzare un algoritmo che permetta  di giocare col computer al gioco dell’11.
Il gioco dell’11 ha le seguenti regole:

  • il gioco comincia con 11 fiammiferi disposti su un tavolo
  • i due giocatori prelevano alternativamente un numero di fiammiferi compreso tra 1 e 3.
  • Vince il giocatore che costringe l’avversario a prelevare l’ultimo fiammifero.

Analisi
Si ipotizza che sia il computer a vincere, quindi a fare la prima mossa mentre l’avversario è chi gioca col computer.
Dati

Input Output lavoro
mu  fiammiferi prelevati n fiammiferi presenti sul tavolo  
  mc mossa del computer  
   “hai perso”  

Relazione I/O
La strategia vincente può essere riassunta come segue:
prelevare 2 fiammiferi e poi, in base alla mossa dell’avversario, togliere sempre un numero di fiammiferi pari a 4 meno quelli tolti dal rivale.
Pseudo codifica
n = 11
mc=2
Scrivi mc
n =n – mc
scrivi fiammiferi
 ripeti finchè (n> 1)  
   leggi mu
   n = n – a
   scrivi n

   mc = 4 – mu
scrivi mc
n= n – mc
scrivi n

scrivi hai perso

algoritmo gioco dell 11


// main.cpp
// gioco dell 11
//
// Created by Rolando Succo on 24/10/13.
// Copyright (c) 2013 zerocrise. All rights reserved.
//
#include <iostream>

using namespace std;
int main(int argc,
    const char * argv[]) {
    int n, mu, mc;
    cout << "Gioco dell 11\n";
    n = 11;
    mc = 2;
    cout << "fiammiferi presenti " << n;
    n = n - mc;
    cout << "\nmossa del computer " << mc;
    cout << "\nfiammiferi presenti " << n;
    do {
        cout << "\nFai la tua mossa ";
        cin >> mu;
        n = n - mu;
        cout << "fiammiferi presenti " << n;
        mc = 4 - mu;
        n = n - mc;
        cout << "\nmossa del computer " << mc;
        cout << "\nfiammiferi presenti " << n;
    } while (n > 1);
    cout << "\nhai perso\n";
    return 0;
}

 

Please follow and like us:

Previous

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Commenti recenti

Working Hours

  • Monday9am - 6pm
  • Tuesday9am - 6pm
  • Wednesday9am - 6pm
  • Thursday9am - 6pm
  • Friday9am - 6pm
  • SaturdayClosed
  • SundayClosed
Latest Posts

Teachers

Facebook
Twitter
LinkedIn
Contatti

Commenti recenti

Wordpress Social Share Plugin powered by Ultimatelysocial
error

Enjoy this blog? Please spread the word :)

%d blogger hanno fatto clic su Mi Piace per questo: