Oppure

Loading
23/02/11 12:33
asteroid
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','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','{parsed_message}'};
 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++;
}
  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;
}

perchè non riesco a stampare il codice segreto...tutto intero ??:_doubt:'}; 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++; } 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; }

perchè non riesco a stampare il codice segreto...tutto intero ??:_doubt:
aaa
23/02/11 12:44
Riki94
if(cod_casual[i]==segreto[i])
printf("il codice segreto e':%c\n",cod_casual[i]);
}

con questa istruzione mostri il primo carattere dell'array cod_casuali.
devi metterci un ciclo for che mostra in sequenza l'array..
aaa
23/02/11 14:08
asteroid
for(i=0;i<5;i++){
if(cod_casual[i]==segreto[i])
printf("codice segreto e':%c",cod_casual[i]);
}

il ciclo for comprende anke la printf , infatti mi stampa i primi 3 caratteri, mentre la fine della sequenza no...
aaa
24/02/11 11:53
carlduke
Postato originariamente da asteroid:

for(i=0;i<5;i++){
if(cod_casual[i]==segreto[i])
printf("codice segreto e':%c",cod_casual[i]);
}



se fai cosi ad ogni iterazione stamperà "il codicè segreto è: ..", se vuoi usare questo metodo devi scrivere

printf("Il codice segreto è: ");
for(i = 0;i < 5; i++){
  if(cod_casual[i] == segreto[i])
     printf("%c",cod_casual[i]);
}
Ultima modifica effettuata da carlduke 24/02/11 12:12
aaa