Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
allora intanto volevo ringraziare tutti coloro che hanno risposto alle mie domande fino ad ora togliendomi molti dubbi... ora ho scritto il codice della prima parte del programma per chi non l'avesse letto è il beccaccino...(sempre che io l'abbia scritto) e sono arrivato a questo punto (sotto metto il programma) e non so perché nel segno che metterò di fianco al comando mi si blocca sapete dirmi perché? e non fate caso a quando mostra le carte perché è abbastanza osceno ma volevo solo vedere se funzionava
Codice sorgente - presumibilmente Delphi
program beccaccino;
uses crt;
var giocatore:array[1..4,1..10]ofstring;
procedure assmisdis;
var a,b,c,cas:short;
var carta,mischia:array[1..40]ofstring;
Begin
mischia[1]:=('A S');(*assegnazione carte*)
mischia[2]:=('2 S');
mischia[3]:=('3 S');
mischia[4]:=('4 S');
mischia[5]:=('5 S');
mischia[6]:=('6 S');
mischia[7]:=('7 S');
mischia[8]:=('F S');
mischia[9]:=('C S');
mischia[10]:=('R S');
mischia[11]:=('A D');
mischia[12]:=('2 D');
mischia[13]:=('3 D');
mischia[14]:=('4 D');
mischia[15]:=('5 D');
mischia[16]:=('6 D');
mischia[17]:=('7 D');
mischia[18]:=('F D');
mischia[19]:=('C D');
mischia[20]:=('R D');
mischia[21]:=('A B');
mischia[22]:=('2 B');
mischia[23]:=('3 B');
mischia[24]:=('4 B');
mischia[25]:=('5 B');
mischia[26]:=('6 B');
mischia[27]:=('7 B');
mischia[28]:=('F B');
mischia[29]:=('C B');
mischia[30]:=('R B');
mischia[31]:=('A C');
mischia[32]:=('2 C');
mischia[33]:=('3 C');
mischia[34]:=('4 C');
mischia[35]:=('5 C');
mischia[36]:=('6 C');
mischia[37]:=('7 C');
mischia[38]:=('F C');
mischia[39]:=('C C');
mischia[40]:=('R C');
a:=0;
repeat(*mescolamento carte*)
a:=a+1;
repeat(*mi si blocca in questo pezzo quando deve fare la undicesima ripetizione, le prime dieci le fa e poi si ferma*)
cas:=random(40)+1;
until carta[cas]='';
carta[cas]:=mischia[a];
until a=40;
a:=0;(*distribuzione carte ad ogni giocatore*)
c:=0;
repeat
a:=a+1;
b:=0;
repeat
b:=b+1;
c:=c+1;
giocatore[a,b]:=carta[c];
until b=10;
until a=4;
a:=0;(*inizio scrittura carte*)
y:=1;
x:=-3;
repeat
x:=x+4;
a:=a+1;
b:=0;
repeat
b:=b+1;
y:=y+1;
gotoxy(x,y);
write(giocatore[a,b]);
until b=10;
until a=4;
End;
Begin
clrscr;
assmisdis;
readkey;
End.
Ultima modifica effettuata da Phi il 16/01/2011 alle 23:07
Il codice è troppo lungo.
Io lo modificherei così :
1)
dichiarei x e y fra le variabili (a me da errore di compilazione)
2)
sostituirei i "repeat ... until" con dei cicli for
3)
Al posto di tutti i passaggi del tipo "mischia[1]:=" farei così
Dichiaro queste constanti