Mastermind

/*Dovete scrivere una funzione
che presi due array di interi (i due array hanno la stessa dimensione), dove il primo
costituisce il codice segreto ed il secondo il tentivo di indovinare, stampi due interi
a e b. Il primo intero a rappresenta il numero di caselle corrette tra i due codici ed
il secondo intero b rappresenta il numero di caselle comuni tra i due codici.*/

#include

int mastermind(char *, char *);

int main()
{
char vett1[10];
char vett2[10];
int i=0,j=0;


scanf("%s", vett1);
scanf("%s", vett2);
mastermind(vett1,vett2);
return 0;
}

int mastermind(char *s1, char *s2)
{
int strike=0;
int ball=0;
int i=0;
int j=0;
int x=0;
/* conto la lunghezza della stringa da indovinare */
while(s1[x]!='\0' && x<10)
{
x++;
}
/*trovo gli strike se li trovo metto s1[i] e s2[i] a zero*/
for (i = 0; i < x; i++)
if (s1[i] == s2[i] && s1[i] != 0)
{
strike++;
s1[i] = 0;
s2[i] = 0;
}
/* trovo i ball */
for (i = 0; i < x; i++)

for(j = 0; j < x; j++)
{


if (s1[i] == s2[j] && s1[i] != 0)
{
ball++;
s1[i] = 0;
s2[j] = 0;
}
}

printf("%d %d",strike,ball);
return 0;
}

Commenti