Toon posts:

[C] Array niet op juiste manier uitgelezen?

Pagina: 1
Acties:
  • 37 views sinds 30-01-2008

Verwijderd

Topicstarter
Na wat oefenen in C, is het vandaag een mooie dag om aan mijn eerste zelfstandige programma te beginnen. Het is de bedoeling dat er 52 kaarten willekeurig aan 4 spelers uitgedeeld worden.
De kaarten zijn genummerd 0 t/m 51 (kaart[index]) en hebben de waarde 0, 1, 2 of 3 (om aan te duiden tot welke speler deze behoort).

Het volgende scriptje programma heb ik in elkaar getoverd:
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include<stdio.h>
#include<time.h>

int main(void)
{
time_t seed;
int oud,nieuw,index;
int kaart[52];
seed=time(NULL);

for(index=0;index<52;index++)
    {
    nieuw=(57*seed+1)%1024;
    kaart[index]=nieuw/256;
    seed=nieuw;
    }

/*hierboven alles oke*/

for(index=0;index<52;index++)
    {
    if(kaart[index]=0)
        printf("Speler 1: %d\n",index);
    else if(kaart[index]=1)
        printf("Speler 2: %d\n",index);
    else if(kaart[index]=2)
        printf("Speler 3: %d\n",index);    
    else if(kaart[index]=3)
        printf("Speler 4: %d\n",index);
    }      

return 0;
}


Bij de laatste for() gaat het fout. Wat ik ook probeer, alle kaarten worden standaard aan de eerste optie die niet de waarde 0 heeft gegeven (in dit geval Speler 2).
Hoe kan dat?
Ik verwacht een output die lijkt op bijv.:
Speler 1: 0
Speler 1: 12
Speler 1: 18
Speler 2: 3
Speler 2: 6
Speler 2: 9
etc...

En dan weet ik dat niet iedere spelers evenveel kaarten hoeven te krijgen, zoals het nu geprogrammeerd is. Maar daar kom ik pas achter als ik bovenstaande voor elkaar heb :+
En dan ga ik dat fijn zelf oplossen ;)

[ Voor 5% gewijzigd door curry684 op 23-03-2004 13:04 . Reden: code-tags voor leesbaarheid, en dit is geen script :) ]


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 12-05 22:23

curry684

left part of the evil twins

In C is = een assignment, en == een vergelijking :z

Sorry, iets te basic :)

Professionele website nodig?


Dit topic is gesloten.