azz...ma c'e' veramente qualcoaa che nn va!
in rete..ho trovato un gioco fatto in c..francese!
ve lo posto:
#include<stdio.h>
#include<conio.c>
#include<time.h>
#define bleu 151
#define vert 166
#define rouge 193
#define marron 97
#define jaune 226
#define blancc 241
void intro();
void codes_couleurs(int x,int y,int c[],int i);
void traitement(int x,int t[]);
void traitement2(int c[],int t[],int noir,int z);
int main(){
int i,color[5],u[5],t[5],g[5];
time_t h;
//initialisation time
srand (time (&h));
intro();
clrscr();
for(i=1;i<6;i++){
//trouve la combinaison de couleurs au has
t[i]=(rand() % 5)+1;
g[i]=6;
codes_couleurs(60,12,g,i);
}
//titre
gotoxy(30,2);textcolor(12);printf("SUPER-MASTERMIND");
gotoxy(53,10);printf("combinaison gagnante:");
for(i=1;i<6;i++){
u[i]=i;
//place le code couleurs a ces coordonees
codes_couleurs(60,6,u,i);
gotoxy(60,5);textcolor(15);printf(" 1");
printf(" 2");printf(" 3");
printf(" 4");printf(" 5");
gotoxy(62,3);printf("code couleurs");
}
traitement(13,t);traitement(16,t);traitement(19,t);
traitement(22,t);traitement(25,t);
getch();
getch();
}
void intro(){
int i,x;
for(x=1;x<20;x++){
gotoxy(x,8);textcolor(15);
printf(" SKINIA ");
gotoxy(-x+45,8);textcolor(15);
printf(" presents ");
}
gotoxy(30,18);textcolor(12);
printf("SUPER-MASTERMIND ");putch(169);
for(i=10;i<1000;i=i+5){ //joue melodie
}
}
void codes_couleurs(int x,int y,int c[],int i){
if(c[i]==1) c[i]=bleu;
if(c[i]==2) c[i]=vert;
if(c[i]==3) c[i]=rouge;
if(c[i]==4) c[i]=marron;
if(c[i]==5) c[i]=jaune;
if(c[i]==6) c[i]=blancc;
gotoxy(x,y);textcolor(c[1]);printf(" ");
gotoxy(x+4,y);textcolor(c[2]);printf(" ");
gotoxy(x+8,y);textcolor(c[3]);printf(" ");
gotoxy(x+12,y);textcolor(c[4]);printf(" ");
gotoxy(x+16,y);textcolor(c[5]);printf(" ");
}
void traitement(int x,int t[]){
int c[5],noir=0,i,j;
for(i=1;i<6;i++){
gotoxy(1,10);textcolor(15);
printf("proposez vos couleurs\n>>");
scanf("%d",&c[i]);
gotoxy(3,11);printf(" ");
gotoxy(3,11);
//compte les couleurs bonnes et bien placees
if(c[i]==t[i]) noir++;
}
if(noir!=5) traitement2(c,t,noir,x);
else{
for(i=1;i<6;i++){
gotoxy(53,12);textcolor(15);printf("gagne");
codes_couleurs(1,x,c,i);
codes_couleurs(60,12,t,i);
}
}
}
//fonction qui sert a compter les boules blanches
void traitement2(int c[],int t[],int noir,int z){
int i,blanc=0,bc[6],bt[6];
bc[1]=0,bc[2]=0,bc[3]=0,bc[4]=0,bc[5]=0;
bt[1]=0,bt[2]=0,bt[3]=0,bt[4]=0,bt[5]=0;
//compte le nbre de chaque couleurs choisis
for(i=1;i<6;i++){
if(c[i]==1) bc[1]++;
if(c[i]==2) bc[2]++;
if(c[i]==3) bc[3]++;
if(c[i]==4) bc[4]++;
if(c[i]==5) bc[5]++;
}
//pareil mais avec les couleurs de l'ordi
for(i=1;i<6;i++){
//marque les couleurs choisies
codes_couleurs(1,z,c,i);
if(t[i]==1) bt[1]++;
if(t[i]==2) bt[2]++;
if(t[i]==3) bt[3]++;
if(t[i]==4) bt[4]++;
if(t[i]==5) bt[5]++;
}
//boucle qui compare les couleurs
for(i=1;i<6;i++){
if(bt[i]!=0 && bc[i]!=0){
if(bt[i]>=bc[i]) blanc=blanc+bc[i];
else blanc=blanc+bt[i];
}
}
blanc=blanc-noir;
gotoxy(22,z);textcolor(15);
printf("%db ",blanc);printf("%dn",noir);
if(z==25){
gotoxy(53,12);textcolor(15);printf("perdu");
for(i=1;i<6;i++){
codes_couleurs(60,12,t,i);
}
}
}
da qualche parte inserito c'era uno sleep..e l'ho levato perche' rompeva!
poi ho notato il clrscl(); che serve a pulire lo schermo..all'inizio del prog!
eppure in questo prog il clrscr lo prende..perche???
ho creato un prog quasi uguale..stesse librerie..poi ho messo il clrscr..com'e' e' messo nep prog francese..e si incazza!!
ma allora sono io che sono sfigato..nn ho capito!
