Sistemato il codice
Reso il codice più leggibile; Sistemati i commenti; Sistemati alcuni errori di endentation.
This commit is contained in:
parent
b8ae67f100
commit
d9b13c8c25
207
main.c
207
main.c
@ -1,11 +1,12 @@
|
||||
#include "tris.h"
|
||||
int main (){
|
||||
int vittoria;
|
||||
int difficolta;
|
||||
do{
|
||||
int vittoria;
|
||||
int difficolta;
|
||||
do{
|
||||
giocatore=1,vittoria=0;
|
||||
scelta=0,difficolta=0,mossa=0;
|
||||
system(clear); //menu d'inizio
|
||||
/*Menu d'inizio*/
|
||||
system(clear);
|
||||
printf(SOTTOLINEATO GIALLO"\n Tris in stile C \n\n" RESET BIANCO);
|
||||
printf(ROSSO " [1]"RESET BIANCO" Partita con 2 giocatori\n");
|
||||
printf(ROSSO " [2]"RESET BIANCO" Partita singolo giocatore\n");
|
||||
@ -16,28 +17,35 @@ int main (){
|
||||
printf(ROSSO " [4]"RESET BIANCO" Informazioni\n");
|
||||
printf(ROSSO " [5]"RESET BIANCO" Esci\n");
|
||||
scanf("%d",&scelta);
|
||||
switch(scelta) {
|
||||
|
||||
case 1:{ //case per la partita con 2 giocatori
|
||||
vuota();
|
||||
system(clear);
|
||||
stampa();
|
||||
do{ //ciclo che contiene la partita. dura fino alla vittoria
|
||||
leggimossa(); //richiama la funzione che legge la mossa
|
||||
system(clear);
|
||||
mossa++; //conteggio delle mossa,assegnazione del simbolo alle coordinate scelte e stampa della tabella
|
||||
tabella[i][k]=giocatore;
|
||||
stampa();
|
||||
if (controlla(1)){ //richiama la funzione controlla che verifica se qualcuno ha vinto
|
||||
vittoria=1;
|
||||
break;
|
||||
switch(scelta){
|
||||
/*case per la partita con 2 giocatori*/
|
||||
case 1:{
|
||||
/*Vuota la tabella, pulisce lo schermo e la stampa*/
|
||||
vuota();
|
||||
system(clear);
|
||||
stampa();
|
||||
/*ciclo che contiene la partita. Dura fino alla vittoria*/
|
||||
do{
|
||||
/*Legge la mossa del giocatore*/
|
||||
leggimossa();
|
||||
system(clear);
|
||||
/*Conteggio delle mosse, assegnazione del simbolo alle coordinate scelte e stampa della tabella*/
|
||||
mossa++;
|
||||
tabella[i][k]=giocatore;
|
||||
stampa();
|
||||
/*Controlla se il giocatore ha vinto*/
|
||||
if(controlla(1)){
|
||||
vittoria=1;
|
||||
break;
|
||||
}
|
||||
if(giocatore==1) //cambia il turno del giocatore
|
||||
giocatore=2;
|
||||
else
|
||||
giocatore=1;
|
||||
/*cambia il turno del giocatore*/
|
||||
if(giocatore==1)
|
||||
giocatore=2;
|
||||
else
|
||||
giocatore=1;
|
||||
}
|
||||
while(!vittoria && mossa<M*M);
|
||||
/*Stampa il risultato della partita, mette in pausa, rompe lo switch e ritorna al menu*/
|
||||
if((!controlla(1))&&(!controlla(2))){
|
||||
printf(ROSSO " Pareggio.\n");
|
||||
pausa();
|
||||
@ -45,38 +53,44 @@ int main (){
|
||||
else{
|
||||
printf(ROSSO " Partita terminata.\n Ha vinto il giocatore %d.\n\n",giocatore);
|
||||
pausa();
|
||||
} //stampa il risultato della partita, richiama la funzione pausa, rompe lo switch e ritorna al menu
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 2:{ //case che contiene la partita singolo giocatore
|
||||
vuota();
|
||||
system(clear);
|
||||
do{ //ciclo per scegliere la difficolta del gioco
|
||||
if(!os)
|
||||
printf(SOTTOLINEATO GIALLO"\n Scegli la difficolt%c:\n\n"RESET BIANCO ,133);
|
||||
else
|
||||
printf(SOTTOLINEATO GIALLO"\n Scegli la difficoltà: \n\n" RESET BIANCO);
|
||||
printf(ROSSO " [1]"RESET BIANCO" Facile\n "ROSSO"[2]"RESET BIANCO" Medio\n "ROSSO"[3]"RESET BIANCO" Difficile\n");
|
||||
scanf("%d",&difficolta);
|
||||
if(difficolta<1||difficolta>3)
|
||||
printf(GRASSETTO ROSSO"\n Scelta non valida.\n\n" RESET BIANCO);
|
||||
}while(difficolta<1||difficolta>3);
|
||||
system(clear);
|
||||
stampa();
|
||||
do{ //ciclo che contiene la partita fino alla vittoria/pareggio
|
||||
if (giocatore==1){
|
||||
leggimossa(); //richiama la funzione che legge la mossa
|
||||
tabella[i][k]=1;
|
||||
system(clear);
|
||||
stampa();
|
||||
aspetta(1);
|
||||
}
|
||||
else{ //turno del computer
|
||||
system(clear);
|
||||
printf(ROSSO"\n Gioco io ora...\n" RESET BIANCO);
|
||||
spinner(1);
|
||||
switch(difficolta){ //switch che contiene la mossa del computer
|
||||
//richiama le funzione in base alla difficoltà
|
||||
/*Case che contiene la partita singolo giocatore*/
|
||||
case 2:{
|
||||
vuota();
|
||||
system(clear);
|
||||
/*ciclo per scegliere la difficolta del gioco*/
|
||||
do{
|
||||
if(!os)
|
||||
printf(SOTTOLINEATO GIALLO"\n Scegli la difficolt%c:\n\n"RESET BIANCO ,133);
|
||||
else
|
||||
printf(SOTTOLINEATO GIALLO"\n Scegli la difficoltà: \n\n" RESET BIANCO);
|
||||
printf(ROSSO" [1]"RESET BIANCO" Facile\n");
|
||||
printf(ROSSO" [2]"RESET BIANCO" Medio\n");
|
||||
printf(ROSSO" [3]"RESET BIANCO" Difficile\n"); scanf("%d",&difficolta);
|
||||
if(difficolta<1||difficolta>3)
|
||||
printf(GRASSETTO ROSSO"\n Scelta non valida.\n\n" RESET BIANCO);
|
||||
}while(difficolta<1||difficolta>3);
|
||||
system(clear);
|
||||
stampa();
|
||||
/*Ciclo che contiene la partita fino alla vittoria o al pareggio*/
|
||||
do{
|
||||
/*Turno del giocatore umano*/
|
||||
if(giocatore==1){
|
||||
leggimossa();
|
||||
tabella[i][k]=1;
|
||||
system(clear);
|
||||
stampa();
|
||||
aspetta(1);
|
||||
}
|
||||
/*Turno del computer*/
|
||||
else{
|
||||
system(clear);
|
||||
printf(ROSSO"\n Gioco io ora...\n" RESET BIANCO);
|
||||
spinner(1);
|
||||
/*switch che contiene la mossa del computer in base alla difficolta scelta*/
|
||||
switch(difficolta){
|
||||
case 1:{
|
||||
facile();
|
||||
break;
|
||||
@ -95,42 +109,41 @@ int main (){
|
||||
aspetta(2);
|
||||
system(clear);
|
||||
}
|
||||
mossa++; //conteggio delle mossa,assegnazione del simbolo alle coordinate scelte e stampa della tabella
|
||||
stampa();
|
||||
if (controlla(1)||controlla(2)){ //richiama la funzione controlla che verifica se qualcuno ha vinto
|
||||
vittoria=1;
|
||||
break;
|
||||
/*Conteggio delle mosse, assegnazione del simbolo alle coordinate scelte e stampa della tabella*/
|
||||
mossa++;
|
||||
stampa();
|
||||
/*Controlla se qualcuno ha vinto*/
|
||||
if(controlla(1)||controlla(2)){
|
||||
vittoria=1;
|
||||
break;
|
||||
}
|
||||
if(giocatore==1){ //cambia il turno del giocatore
|
||||
giocatore=2;
|
||||
}
|
||||
else {
|
||||
giocatore=1;
|
||||
}
|
||||
}
|
||||
while(!vittoria && mossa<M*M);
|
||||
system(clear);
|
||||
stampa();
|
||||
/*Cambia il turno del giocatore*/
|
||||
if(giocatore==1)
|
||||
giocatore=2;
|
||||
else
|
||||
giocatore=1;
|
||||
}
|
||||
while(!vittoria && mossa<M*M);
|
||||
system(clear);
|
||||
stampa();
|
||||
printf(ROSSO);
|
||||
if((!controlla(1) && !controlla(2)) && difficolta==1)
|
||||
printf(" Pareggio, potevi fare di meglio.\n\n");
|
||||
|
||||
else{
|
||||
if((!controlla(1) && !controlla(2)) && difficolta==2)
|
||||
printf(" Pareggio, ci eri quasi, riprova...\n\n");
|
||||
|
||||
else{
|
||||
if((!controlla(1) && !controlla(2)) && difficolta==3){
|
||||
if(!os)
|
||||
printf(" Pareggio, ti %c andata gi%c bene...\n\n",138,133);
|
||||
else
|
||||
printf(" Pareggio, ti è andata già bene...\n\n");
|
||||
/*Stampa il risultato della partita, mette in pausa, rompe lo switch e ritorna al menu*/
|
||||
if((!controlla(1) && !controlla(2)) && difficolta==1)
|
||||
printf(" Pareggio, potevi fare di meglio.\n\n");
|
||||
else{
|
||||
if((!controlla(1) && !controlla(2)) && difficolta==2)
|
||||
printf(" Pareggio, ci eri quasi, riprova...\n\n");
|
||||
else{
|
||||
if((!controlla(1) && !controlla(2)) && difficolta==3){
|
||||
if(!os)
|
||||
printf(" Pareggio, ti %c andata gi%c bene...\n\n",138,133);
|
||||
else
|
||||
printf(" Pareggio, ti è andata già bene...\n\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
if(controlla(2) && difficolta==1)
|
||||
printf(" Hai perso. Ti sei fatto battere da delle mosse pseudocasuali, complimenti.\n\n");
|
||||
|
||||
if(controlla(2) && difficolta==1)
|
||||
printf(" Hai perso. Ti sei fatto battere da delle mosse pseudocasuali, complimenti.\n\n");
|
||||
else {
|
||||
if(controlla(2) && difficolta==2)
|
||||
printf(" Hai perso. Dai... lo potevi battere.\n\n");
|
||||
@ -157,17 +170,18 @@ int main (){
|
||||
printf(" Sei vedi questo messaggio sicuramente c'%c qualcosa che non va.\n\n",138);
|
||||
else
|
||||
printf(" Sei vedi questo messaggio sicuramente c'è qualcosa che non va.\n\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
pausa();
|
||||
break;
|
||||
} //stampa del risultato della partita,esce dallo switch e ritorna al menu
|
||||
case 3: {
|
||||
system(clear); //case per le modalità di input
|
||||
do{
|
||||
system(clear);
|
||||
printf("\n Vuoi usare il tastierino numerico o le coordinate"ROSSO"[T,C]"RESET BIANCO"?\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
pausa();
|
||||
break;
|
||||
}
|
||||
case 3:{
|
||||
/*Case per la scelta delle modalità di input*/
|
||||
system(clear);
|
||||
do{
|
||||
system(clear);
|
||||
printf("\n Vuoi usare il tastierino numerico o le coordinate"ROSSO"[T,C]"RESET BIANCO"?\n");
|
||||
scanf("\n%c",&a);
|
||||
}while(a!='T' && a!='C' && a!='t' && a!='c');
|
||||
if(a=='T'||a=='t')
|
||||
@ -205,7 +219,8 @@ int main (){
|
||||
break;
|
||||
}
|
||||
case 4:{
|
||||
system(clear); //case per l'about
|
||||
/*About*/
|
||||
system(clear);
|
||||
printf(SOTTOLINEATO GIALLO"\n Tris in stile C \n\n" RESET BIANCO);
|
||||
if (!os)
|
||||
printf("\n Questo gioco %c stato sviluppato da Michele Guerini Rocco in una fredda notte \n di premiazioni e sistemato per l'intero anno successivo.\n\n",138);
|
||||
|
Loading…
Reference in New Issue
Block a user