
NUOVO GIOCO creato, siccome compito assegnato dal prof. Nata. XD
Siccome ho notato che con un copia ed incolla alcuni dati vengono cmq persi
ho deciso di uppare un un mio vecchissimo spazio WEB gli esempi con tanto di eseguibile
P.S. GLI ESEGUBILI SONO AVVIABILI DIRETTAMENTE DA WINDOW CIOE' SENZA L'AUSILIO DELLA BAT, BASTA PREMERE 2 VOLTE SUL ESEGUIBILE.
Ecco il link per scaricare “ piramide rovesciata ”, CODICE SORGENTE e exe
http://gamingblog.altervista.org/piramide_rovesciata.zip
ecco invece un altro link per giocare a filetto v2 beta (quello con l'intelligenza superiore della npc), CODICE SORGENTE e exe
http://gamingblog.altervista.org/filetto_V2_beta.zip
Quello che segue invece il codice di piramide rovesciata.
________________Code____________________
/*gioco della piramide rovesciata*/
#include “stdio.h”
#include “cstdlib”
#include “ctime”
int board[17];
char simbol[2]={'|','+'};
int exitGame=0;
int punteggio=0;
int continuare;
void istruzioni();
void stampa();
int inserisci(int datoA, int datoB);
int controlloPunti();
void umano();
void npc();
void azzeraBoard();
int RandInt(int a,int b);
int main(){
istruzioni();
azzeraBoard();
do{
if(punteggio==3){punteggio=0;}
if(punteggio==0){
umano();
printf(" \n \n mossa umano \n \n");
stampa();
}
if(punteggio==1){
printf("hai vinto!");
printf("\n se voi continuare digita 1 altrimenti digita qualunque altro numero: ");
scanf("%d",&continuare);
if(continuare==1){
continuare=0;
punteggio=3;
azzeraBoard();
stampa();
}
else
{
exitGame=1;
}
}
if(punteggio==0){
printf(" \n \n mossa pc \n \n");
npc();
stampa();
}
if(punteggio==2){
printf("\n hai perso!");
printf("\n se voi continuare digita 1 altrimenti digita qualunque altro numero: ");
scanf("%d",&continuare);
if(continuare==1){
continuare=0;
punteggio=3;
azzeraBoard();
stampa();
}
else
{
exitGame=1;
}
}
}while(exitGame==0);
}
void istruzioni(){
printf("E' un gioco a turni, lo scopo e' di sbarrare tutte le astine \n");
printf("e di far si che l'ultima astina rimanga all'avversario.");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("Numeri Da inserire");
printf("\n");
printf("\n");
printf("| | | | | | | \n");
printf("1 2 3 4 5 6 7 \n");
printf(" | | | | | \n");
printf(" 8 9 10 11 12 \n");
printf(" | | | \n");
printf(" 13 14 15 \n");
printf(" | \n");
printf(" 16 \n");
printf("\n");
printf("\n");
printf("Tavola");
printf("\n");
printf("\n");
stampa();
}
void umano(){
int numeroUno=0;
int numeroDue=0;
int controllo=0;
if(controlloPunti()==1){punteggio=2;return;}
printf("\n digita il primo numero della astina da selezionare: ");
scanf("%d",&numeroUno);
printf("\n digita il secondo numero della astina da selezionare:");
scanf("%d",&numeroDue);
controllo=inserisci(numeroUno,numeroDue);
if(controllo==1){
printf("\n le astine sono state gia' segnate, seleziona altre astine ");
umano();
}
if(controllo==2){
printf("\n le astine da te selezionate sono piu' di quelle consentite");
umano();
}
}
int RandInt(int a,int b){
return a + rand() % (b - a + 1);
}
void npc(){
int controllo=0;
if(controlloPunti()==1){punteggio=1; return;}
controllo=inserisci(RandInt(1,16),RandInt(1,16));
srand(unsigned(1000*time(NULL)+rand()));
if(controllo==1){
srand(unsigned(1000/time(NULL)+rand()));
npc();
}
if(controllo==2){
srand(unsigned(1000/time(NULL)+rand()));
npc();
}
}
void stampa(){
int i;
for(i=1;i<17;i++){ i="=" i="=" i="=" i="=" translate="0;" i="1;i<17;i++){" datoa="1;" datob="1;">16){
datoA=16;
}
if(datoB>16){
datoB=16;
}
if(datoA7)){
datoB=7;
}
if((datoA>7)&&(datoA<13)&&(datob>12)){
datoB=12;
}
if((datoA>12)&&(datoA<16)&&(datob>15)){
datoB=15;
}
}
if(datoA>datoB){
if((datoA>7)&&(datoA<13)&&(datob<8)){ datob="8;">12)&&(datoA<16)&&(datob<13)){ datob="13;">15)&&(datoB<16)){ datob="16;" translate="datoA;" datoa="datoB;" datob="translate;" caunt="0,caunt2=" i="datoA;i<(datoB+1);i++){" caunt="=" caunt3="0;" i="datoA;i<(datoB+1);i++){" i="1;i<17;i++){" caunt3="=" i="datoA;i<(datoB+1);i++){" caunt="0;" i="1;i<17;i++){" caunt="=">15)){
return 1;
}
return 0;
}
void azzeraBoard(){
int i;
for(i=1;i<17;i++){>