Per esercitarmi un po' col C tra una (noiosa) pagina di manuale e l'altra provo a risolvere problemi come questi:
http://ioi.dsi.unimi.it/selezioni/struzzo.html
Qualcuno mi sa dire perchè il conteggio dei punri cardinali (quello all'interno del while) non funziona a dovere?
codice:#include <stdio.h> #include <stdlib.h> main() { int counter[4],i, effettivoX, effettivoY; char sposta[100000]; printf("Dammi la coordinata"); scanf("%s", &sposta); //printf("%s", sposta); i=0; while (sposta[i] !='*'){ switch(sposta[i]){ case 'N': counter[0]=counter[0]+1; break; case 'S': counter[1]=counter[1]+1; break; case 'O': counter[2]=counter[2]+1; break; case 'E': counter[3]=counter[3]+1; break; default: break; } i=i+1; } //printf("%d", counter[0]);---->SE GUARDATE COSA STAMPA QUESTO VEDETE CHE c'è QUALCOSA CHE TOCCA effettivoY=counter[0]-counter[1]; effettivoX=counter[2]-counter[3]; printf("%d", effettivoX*effettivoX+effettivoY*effettivoY ); printf("%d", counter[0]); system("pause"); }

Rispondi quotando