Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto
be quiet! debutta nel settore mouse da gaming con Dark Perk Ergo e Dark Perk Sym: due modelli gemelli per specifiche, con polling rate di 8.000 Hz anche in wireless, sensore PixArt PAW3950 da 32.000 DPI e autonomia dichiarata fino a 110 ore. Nel test, a 8.000 Hz si arriva a circa 30 ore reali, con ricarica completa in un'ora e mezza
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
Analizziamo nel dettaglio DJI RS 5, l'ultimo arrivato della famiglia Ronin progettato per videomaker solisti e piccoli studi. Tra tracciamento intelligente migliorato e ricarica ultra rapida, scopriamo come questo gimbal eleva la qualità delle produzioni.
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D è la nuova CPU gaming di riferimento grazie alla 3D V-Cache di seconda generazione e frequenze fino a 5,6 GHz. Nei test offre prestazioni superiori a 9800X3D e 7800X3D, confermando la leadership AMD nel gaming su PC.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-01-2011, 18:15   #1
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Algoritmo in C Pallavolo

Si vuole sviluppare un programma per la simulazione del gioco della pallavolo. Si suppone di avere due squadre di 4 giocatori ognuna. Il campo da gioco viene considerato come una mappa regolare di dimensioni 6 x 6. Ogni giocatore, per ogni squadra, possiede una regione (cella) identificata casualmente.
Il gioco procede in questo modo:
· In modo casuale si sceglie la squadra che batte la palla.
· La palla viene lanciata nel campo avversario e cade in una cella scelta
casualmente,
se la palla cade in una cella vuota il punteggio viene dato alla
squadra attaccante. La squadra ricevente provvede a battere la palla.
Se la palla cade in una cella con un giocatore la palla viene lanciata
nel campo avversario
· La palla lanciata ha il 40% di cadere sulla rete e il 20% di andare fuori. In
questo caso il punto va alla squadra avversaria a quella che batte.
Vince la squadra che per prima arriva a 20.
L’algoritmo usa la function rand() in stdlib per generare numeri casuali: si
ricorda che, per esempio, se numero_casuale è un int, la chiamata
numero_casuale=rand()%11; genera un numero casuale intero (distribuzione
uniforme) nell’insieme (0,1,2,3,4,5,6,7,8,9,10). Usare sempre la srand() per
rendere automatica la scelta iniziale del seed della sequenza di numeri casuali.

io ho cominciato a dichiarare una matrice 6x6

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void main()
{int i,j,nx,ny;
char squadra1;
char squadra2;
squadra1='x'; *\sarebbero i giocatori cn le maglie x
squadra2='o'; *\sarebbero i giocatori cn le maglie o
char campo [][6]= {{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',}};
è mi sn fermato qui, perchè non sò se dividere il campo in modo da far entrare una squadra nel campo 3x3 e viceversa l'altra...???

dp x generare una posizione dei giocatori e posizionarli sul campo potrei fare:

for(i=1;i<=4; i++)
{nx=rand()%6;
ny=rand()%6;
campo[nx][ny]= squadra1;
}
for(i=1;i<=4; i++)
{nx=rand()%6;
ny=rand()%6;
campo[nx][ny]= squadra2;
}

se
avete altre idee in merito...sarei lieto di visionarle insieme a voi...
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2011, 12:55   #2
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Quote:
Originariamente inviato da ninuzz Guarda i messaggi
Si vuole sviluppare un programma per la simulazione del gioco della pallavolo. Si suppone di avere due squadre di 4 giocatori ognuna. Il campo da gioco viene considerato come una mappa regolare di dimensioni 6 x 6. Ogni giocatore, per ogni squadra, possiede una regione (cella) identificata casualmente.
Il gioco procede in questo modo:
· In modo casuale si sceglie la squadra che batte la palla.
· La palla viene lanciata nel campo avversario e cade in una cella scelta
casualmente,
se la palla cade in una cella vuota il punteggio viene dato alla
squadra attaccante. La squadra ricevente provvede a battere la palla.
Se la palla cade in una cella con un giocatore la palla viene lanciata
nel campo avversario
· La palla lanciata ha il 40% di cadere sulla rete e il 20% di andare fuori. In
questo caso il punto va alla squadra avversaria a quella che batte.
Vince la squadra che per prima arriva a 20.
L’algoritmo usa la function rand() in stdlib per generare numeri casuali: si
ricorda che, per esempio, se numero_casuale è un int, la chiamata
numero_casuale=rand()%11; genera un numero casuale intero (distribuzione
uniforme) nell’insieme (0,1,2,3,4,5,6,7,8,9,10). Usare sempre la srand() per
rendere automatica la scelta iniziale del seed della sequenza di numeri casuali.

io ho cominciato a dichiarare una matrice 6x6

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void main()
{int i,j,nx,ny;
char squadra1;
char squadra2;
squadra1='x'; *\sarebbero i giocatori cn le maglie x
squadra2='o'; *\sarebbero i giocatori cn le maglie o
char campo [][6]= {{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',}};
è mi sn fermato qui, perchè non sò se dividere il campo in modo da far entrare una squadra nel campo 3x3 e viceversa l'altra...???

dp x generare una posizione dei giocatori e posizionarli sul campo potrei fare:

for(i=1;i<=4; i++)
{nx=rand()%6;
ny=rand()%6;
campo[nx][ny]= squadra1;
}
for(i=1;i<=4; i++)
{nx=rand()%6;
ny=rand()%6;
campo[nx][ny]= squadra2;
}

se
avete altre idee in merito...sarei lieto di visionarle insieme a voi...
il mio problema è ke quando posiziono i giocatori sul campo mi vengo mischiati...e delle volte cn la funzione rand invece di crearmi 4 giocatori per ogni squadra me ne crea...3...
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2011, 15:03   #3
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Quote:
Originariamente inviato da ninuzz Guarda i messaggi
il mio problema è ke quando posiziono i giocatori sul campo mi vengo mischiati...e delle volte cn la funzione rand invece di crearmi 4 giocatori per ogni squadra me ne crea...3...
Beh che vengano mischiati mi pare normale, dato che inizializzi sempre nx e ny con rand()%6 per entrambe le squadre. La squadra A deve stare nelle prime 3 colonne e la B nelle ultime 3.
Sul fatto che ogni tanto vengano generati 3 giocatori invece di 4, mi viene da dire che semplicemente i giocatori vengono "sovrascritti" da un altro giocatore che viene posizionato nella stessa cella, dato che non c'è nessun controllo su celle già occupate da altri giocatori.
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2011, 18:37   #4
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Quote:
Originariamente inviato da shinya Guarda i messaggi
Beh che vengano mischiati mi pare normale, dato che inizializzi sempre nx e ny con rand()%6 per entrambe le squadre. La squadra A deve stare nelle prime 3 colonne e la B nelle ultime 3.
Sul fatto che ogni tanto vengano generati 3 giocatori invece di 4, mi viene da dire che semplicemente i giocatori vengono "sovrascritti" da un altro giocatore che viene posizionato nella stessa cella, dato che non c'è nessun controllo su celle già occupate da altri giocatori.
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void main()
{
int i,j,nx,ny;
char squadra1='x';
char squadra2='o';
char campo[][6]={{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',},
{' ',' ',' ',' ',' ',' ',}};
srand(time(NULL));
for(i=1; i<=4; i++)
{
nx=rand()%3;
ny=rand()%3;
campo[nx][ny]=squadra1;
}
for(i=1; i<=4; i++)
{
nx=3+rand()%6;
ny=3+rand()%6;
campo[nx][ny]=squadra2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");

facendo così mi crea sempre lo stesso problema... alcuni giocatori non me li posiziona...ma in merito si allineano...
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 24-01-2011, 19:30   #5
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
come faccio a fare un controllo sulle celle...in modo che non vengano "sovrascritte"
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2011, 10:56   #6
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Quote:
Originariamente inviato da ninuzz Guarda i messaggi
come faccio a fare un controllo sulle celle...in modo che non vengano "sovrascritte"
Codice:
if (campo[nx][ny] == ',') ...
... la cella è libera.

ps. ti prego, indenta il codice mettendolo in un tag [code] altrimenti c'è da morire.
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2011, 16:26   #7
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Quote:
Originariamente inviato da shinya Guarda i messaggi
Codice:
if (campo[nx][ny] == ',') ...
... la cella è libera.

ps. ti prego, indenta il codice mettendolo in un tag [code] altrimenti c'è da morire.
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{int  j,i,nx,ny;
char giocator1='x';      /*giocatori maglia x*/
char giocator2='o';      /*giocatori maglia o*/
char campo [][6]= {{' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',}};

srand(time(NULL));
for(i=1;i<=4; i++)
{
nx=rand()%3;
ny=rand()%3;
campo[nx][ny]=giocator1;
if(campo[nx][ny]==' ')
nx=3+rand()%6;
ny=3+rand()%6;
campo[nx][ny]=giocator2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");
}
ho provato anke ad eseguirlo così ma il dev-c mi produce smpr lo stesso problema cioè giocatori mischiati e mancanti... anke se provo a generarli lontani dagl'altri cioè facendo nx=3+rand()%6 nell intervallo (3,4,5,6)( per i giocatori con le 'o') mentre nx=rand()%3 nell intervallo(0,1,2,3)(per i giocatori cn le 'x')...facendo così non si dovrebbe sovrascrivere?? ...se non ti dà troppo fastidio può eseguirlo anke te lo stesso codice...in modo che riesci a capirmi cosa voglio esprimere..
ah..scusa...per il mancato tag di prima
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 25-01-2011, 18:34   #8
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Quote:
Originariamente inviato da ninuzz Guarda i messaggi
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{int  j,i,nx,ny;
char giocator1='x';      /*giocatori maglia x*/
char giocator2='o';      /*giocatori maglia o*/
char campo [][6]= {{' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',},
                   {' ',' ',' ',' ',' ',' ',}};

srand(time(NULL));
for(i=1;i<=4; i++)
{
nx=rand()%3;
ny=rand()%3;
campo[nx][ny]=giocator1;
if(campo[nx][ny]==' ')
nx=3+rand()%6;
ny=3+rand()%6;
campo[nx][ny]=giocator2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");
}
ho provato anke ad eseguirlo così ma il dev-c mi produce smpr lo stesso problema cioè giocatori mischiati e mancanti... anke se provo a generarli lontani dagl'altri cioè facendo nx=3+rand()%6 nell intervallo (3,4,5,6)( per i giocatori con le 'o') mentre nx=rand()%3 nell intervallo(0,1,2,3)(per i giocatori cn le 'x')...facendo così non si dovrebbe sovrascrivere?? ...se non ti dà troppo fastidio può eseguirlo anke te lo stesso codice...in modo che riesci a capirmi cosa voglio esprimere..
ah..scusa...per il mancato tag di prima


un lampo di genio
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{int  j,i,nx,ny;
char giocator1='x';      /*giocatori maglia x*/
char giocator2='o';      /*giocatori maglia o*/
char campo [][6]= {{' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '}};              
srand(time(NULL));
for(i=1;i<=4; i++)  /*genera 4 posizioni a caso sul campo*/
{
nx=rand()%6;
ny=3+rand()%3-6;                   /*sposto sulle ultime 3 colonne*/
campo[nx][ny]=giocator1;
if (campo[nx][ny]==' ')             /*controllo cella libera*/
nx=rand()%6;
ny=rand()%3;                          /*sposto sulle prime 3 colonne*/
campo[nx][ny]=giocator2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");
}
}
facendo così riesco a non farle mischiare... ....ma adesso rimane il problema maggiore cioè i giocatori mancanti?? xkè succede ciò??cmq provando ad eseguirlo svariate volte circa il 60% delle volte mi escano 4 giocatori per squadra mentre il rimanente 30% me ne escono a volte 3,2,1 ecc...
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2011, 10:14   #9
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
Quel "if (campo[nx][ny]==' ')" buttato lì in mezzo non ha nessun senso. Cerca di ragionare: finché non trovo una cella vuota, genero una coppia di nx, ny; quando la trovo, posiziono il giocatore.
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 26-01-2011, 16:45   #10
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Quote:
Originariamente inviato da shinya Guarda i messaggi
Quel "if (campo[nx][ny]==' ')" buttato lì in mezzo non ha nessun senso. Cerca di ragionare: finché non trovo una cella vuota, genero una coppia di nx, ny; quando la trovo, posiziono il giocatore.
....
infatti è inutile quel if....lo metto o non lo metto mi genera sempre un numero a caso di giocatori.....da come mi hai spiegato...ho presunto ke dovrei spostare l'if sopra al ciclo for(i=1;i<=4;i++) ...così finke trovo una cella vuota genero un giocatori...??
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{int  j,i,nx,ny;
char giocator1='x';      /*giocatori maglia x*/
char giocator2='o';      /*giocatori maglia o*/
char campo [][6]= {{' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '}};           
srand(time(NULL));
char rete='I';
for(i=0;i<6;i++){
campo[i][2]=rete;                   
}      
for(i=1;i<=4; i++)                         /*genera 4 posizioni a caso sul campo*/

{
nx=rand()%6;
ny=3+rand()%3-6;             /*sposto sulle ultime 3 celle*/
campo[nx][ny]=giocator1;
nx=rand()%6;
ny=rand()%2;                /*sposto sulle prime 3 celle*/
campo[nx][ny]=giocator2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");
}
  system("PAUSE");	
  return 0;
}
cmq per il momento ho messo la rete
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2011, 13:01   #11
Ziosilvio
Moderatore
 
L'Avatar di Ziosilvio
 
Iscritto dal: Nov 2003
Messaggi: 16213
Attenzione a come si usa rand: dovendo scegliere un numero a caso fra 1 e 6, rand()%6 dà dei risultati molto più prevedibili che non 1 + (int)(6*rand()/(RAND_MAX+1.0))
http://www.hwupgrade.it/forum/showthread.php?t=1196677 che forse dovrei aggiornare con una sezione sulle permutazioni random... perché qui bisogna scegliere a caso quattro numeri su sei senza ripetizioni...
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" Chi scherza col fuoco si brucia.
Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici
REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu
Ziosilvio è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2011, 15:59   #12
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Non è un problema di controllo di celle, perchè alla fine le posizioni di entrambe le squadre sono lontane l'une dall'altre e quindi non possono essere sovrascritte, quindi è nella funzione rand() che decide lei quando farmi uscire 4 giocatori per ogni squadra, non esiste un modo per fissare il rand?
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2011, 16:25   #13
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Quote:
Originariamente inviato da Ziosilvio Guarda i messaggi
Attenzione a come si usa rand: dovendo scegliere un numero a caso fra 1 e 6, rand()%6 dà dei risultati molto più prevedibili che non 1 + (int)(6*rand()/(RAND_MAX+1.0))
http://www.hwupgrade.it/forum/showthread.php?t=1196677 che forse dovrei aggiornare con una sezione sulle permutazioni random... perché qui bisogna scegliere a caso quattro numeri su sei senza ripetizioni...
Come faccio a far si...che non si ripetono le stesse pseudoposizioni
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2011, 16:38   #14
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Anke facendo una prova con nx=1+(6*rand()/(RAND_MAX+1)) mi dà sempre delle posizioni mancanti...anche se uniformemente più distribuiti
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{int  j,i,nx,ny;
char giocator1='x';      /*giocatori maglia x*/
char giocator2='o';      /*giocatori maglia o*/
char campo [][6]= {{' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '}};           
srand(time(NULL));
char rete='I';
for(i=0;i<6;i++){
campo[i][2]=rete;                   
}      
for(i=4;i>=1; i--)                         /*genera 4 posizioni a caso sul campo*/
{
nx=1+(int)(6*rand()/(RAND_MAX+1.0));
ny=3+rand()%3-6;             /*sposto sulle ultime 3 celle*/
campo[nx][ny]=giocator1;
nx=1+(int)(6*rand()/(RAND_MAX+1.0));
ny=rand()%2;                /*sposto sulle prime 3 celle*/
campo[nx][ny]=giocator2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");
}
  system("PAUSE");	
  return 0;
}
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2011, 18:05   #15
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{int  j,i,nx,ny;
char giocator1='x';      /*giocatori maglia x*/
char giocator2='o';      /*giocatori maglia o*/
char campo [][6]= {{' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '}};           
srand(time(NULL));
char rete='I';
for(i=0;i<6;i++){
campo[i][2]=rete;                   
}      
i=1;
while(i<=4)                         /*genera 4 posizioni a caso sul campo*/
{
nx=1+(int)(6*rand()/(RAND_MAX+1.0));
ny=3+rand()%3-6;             /*sposto sulle ultime 3 celle*/
if(campo[nx][ny]!='x')
i++;
campo[nx][ny]=giocator1;
}
j=1;
while(j<=4)
{
nx=rand()%6;
ny=rand()%2;
if(campo[nx][ny]!='o')                /*sposto sulle prime 3 celle*/
j++;
campo[nx][ny]=giocator2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");
}
  system("PAUSE");	
  return 0;
}
con svariati test... sono riuscito a mantenere 4 giocatori per ogni squadra
ninuzz è offline   Rispondi citando il messaggio o parte di esso
Old 28-01-2011, 17:11   #16
ninuzz
Junior Member
 
Iscritto dal: Jan 2011
Messaggi: 22
Quote:
Originariamente inviato da ninuzz Guarda i messaggi
Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{int  j,i,nx,ny;
char giocator1='x';      /*giocatori maglia x*/
char giocator2='o';      /*giocatori maglia o*/
char campo [][6]= {{' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '},
                   {' ',' ',' ',' ',' ',' '}};           
srand(time(NULL));
char rete='I';
for(i=0;i<6;i++){
campo[i][2]=rete;                   
}      
i=1;
while(i<=4)                         /*genera 4 posizioni a caso sul campo*/
{
nx=1+(int)(6*rand()/(RAND_MAX+1.0));
ny=3+rand()%3-6;             /*sposto sulle ultime 3 celle*/
if(campo[nx][ny]!='x')
i++;
campo[nx][ny]=giocator1;
}
j=1;
while(j<=4)
{
nx=rand()%6;
ny=rand()%2;
if(campo[nx][ny]!='o')                /*sposto sulle prime 3 celle*/
j++;
campo[nx][ny]=giocator2;
}
for(i=0; i<6; i++)
{for(j=0; j<6; j++)
printf("%c",campo[i][j]);
printf("\n");
}
  system("PAUSE");	
  return 0;
}
con svariati test... sono riuscito a mantenere 4 giocatori per ogni squadra
potete darmi un aiuto o un indizio su come scegliere la squadra che batte la palla
ninuzz è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Pornhub e altri siti porno si ribellano ...
La TV non è smart? Amazon la trasforma c...
Oltre 200 siti di news hanno limitato l'...
Gennaio si chiude positivamente per il m...
Caos in Ubisoft: licenziato un dipendent...
BMW ed Encory avviano il riciclo diretto...
La società privata russa Space En...
HyperOS 3: al via l'ultima fase del rila...
Allarme Notepad++: compromesso per sei m...
LIGO-Virgo-KAGRA: nuovo studio sulle ond...
Usare il traffico urbano come motore per...
Sony brevetta un controller PlayStation ...
Firefox aggiunge il 'kill switch' per el...
TV OLED 2026 e Odyssey G6: Samsung abbra...
Stranger Things: Storie dal 1985 debutta...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:56.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v