8 Algoritmo Gioco dell`11 Realizzare un algoritmo che

24/10/13
AdF.ly - shrink your URLs and get paid!
8 Algoritmo 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
I
O
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
adf.ly/5350860/banner/http://zerocrise.com/informatica/algoritmi/iteratore/49-gioco-dell-11.html
1/2
24/10/13
AdF.ly - shrink your URLs and get paid!
adf.ly/5350860/banner/http://zerocrise.com/informatica/algoritmi/iteratore/49-gioco-dell-11.html
2/2
main.cpp
//
//
//
//
//
//
//
24/10/13 11:13
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;
}
Page 1 of 1