PDA

Visualizza la versione completa : [C] Individuazione codice segreto ed errori nella visualizzazione


asteroid
23-02-2011, 12:40
simulare un sistema per determinare un codice segreto. Il pro-
grammatore de finisce un codice di 5 lettere dell'alfabeto e in maniera casuale simula dei
codici fi no a che non trova quello esatto. Visualizzare il numero di prove e ettuate, e il codice segreto individuato.


#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{char segreto[]={'o','c','i','o','\0'};
int tentativi=0;
int i,j;
char cod_casual[5];
srand(time(NULL));
for(i=0;i<5;i++){
while(cod_casual[i]!= segreto[i]){
cod_casual[i]=rand();
tentativi++;
}
cod_casual[i++];
}
for(i=0;i<5;i++){
if(cod_casual[i]==segreto[i])
printf("il codice segreto e':%c\n",cod_casual[i]);
}
printf("il numero dei tentativi:%d\n",tentativi);
system("PAUSE");
return 0;
}

quando vado a stampare printf("codice segreto e':%c\n", cod_casual[i]); mi stampa solo 3 volte la printf... con i caratteri 'o' e 'i',..... mentre il numero dei tentativi tipo 459, 1595,680, penso che ci siamo con i tentativi

asteroid
23-02-2011, 15:25
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{char segreto[]={'t','r','o','i','a'};
int tentativi=0;
int i;
char cod_casual[5];
srand(time(NULL));
for(i=0;i<5;i++){
while(cod_casual[i]!= segreto[i])
{
cod_casual[i]=rand();
tentativi++;
}
}
for(i=0;i<5;i++){
if(cod_casual[i]==segreto[i] )
printf("\ail codice trovato e':\t%c\n",cod_casual[i]);
}
printf("\nil numero dei tentativi:%d\n",tentativi);
system("PAUSE");
return 0;
}

sn usciti 1676 tentativi... bastano?? :smack: :ciauz:

Loading