|
tenta e ritenta ecco la versione finale che funziona e segnala correttamente chi vince alla lnea del traguardo.
Pero c'è un grosso problema: io vorrei sapere anche chi è arrivato secondo, terzo e quarto, insomma tutta la classifica, però proprio non riesco a farlo andare! mi sapreste consigliare? inoltre se avete notato se ad esempio sia la macchina 2 che 3 arrivano oltre il traguardo la vittoria è assegnata ovviamente a quella più vicina alla fine del ciclo ovvero la 3!
questo programma simula un gioco di corse in c.
Lo avevo proposto in altra vesta giorni fa.
Vorrei sapere come modificare questo codice in modo che venga visualizzato l'intero ordine di arrivo, inoltre che venga gestito il pari merito.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
int main()
{
int i,j;
int posizioni[4]={0,0,0,0}; // Posizioni auto
int flag=0; // Variabile di verifica arrivo
int traguardo=8; // colonna di arrivo
int winner=0; // Numero vincitore
srand (time(NULL));
while (flag!=1)
{
system("cls");
for (i=0;i<4;i++)
{
posizioni[i]+=rand()%3;
for (j=0; j<(posizioni[i]); j++)
{
printf(" ");
}
printf("%d\n",i);
if (posizioni[i]>=traguardo)
{
flag=1;
winner=i;
}
}
Sleep(300);
}
printf("ha vinto %d\n",winner);
system("pause");
return 0;
}
__________________
CPU: Amd Phenom II 955--MB: Gigabyte GA-890GPA-UD3H--RAM:4 GB DDR3--SV: ATI Radeon HD 5770--HD: Western Digital Caviar Black 500 gb--ALI:: Corsair 650w--MONITOR: SyncMaster P2270--ROUTER: Netgear DG834G--SO: Win 7 Professional 64 bit
|