hallo, ik ben een factureerprogramma aan het schrijven(als opdracht), nu heb ik een bugje waar ik maar niet uitkom..
het volgende stukkie telt het laatste bedrag dat ik de betalingen database staat als inkoop 2x bij inkopen op? kan iemand me vertellen waar het aan ligt, ikheb al 2 vellekes papier volgeklad, en vanalles getest maar het lukt me niet..
het volgende stukkie telt het laatste bedrag dat ik de betalingen database staat als inkoop 2x bij inkopen op? kan iemand me vertellen waar het aan ligt, ikheb al 2 vellekes papier volgeklad, en vanalles getest maar het lukt me niet..
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| struct klanten
{
char knaam[40];
char kadres[40];
char plaats[30];
char telnr[10];
int debcre;
long knr;
long banknr;
};
struct betalingen
{
float bedrag;
long knr;
char datum[20];
char omschrijving[200];
int betaald;
}; |
code:
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
34
35
36
37
38
| float verkopen=0;
float inkoop=0;
ifstream f("betalingen.dat", ios::in|ios::binary|ios::trunc);
ifstream e("klanten.dat", ios::in|ios::binary|ios::trunc);
while (!f.eof())
{
f.read((char *) &bet, sizeof(bet));
while(!e.eof())
{
e.read((char *) &klant, sizeof(klant));
if (klant.knr==bet.knr)//als de klant bestaat
{
if (klant.debcre==1)//als het van een debiteur is
{
verkopen=verkopen+bet.bedrag;
//cout<<verkopen;
}
else if(klant.debcre==0)//als het van een crediteur is
{
inkoop=inkoop+bet.bedrag;
}
else
{
}
}
}
e.clear();//reset control state anders kan je hem niet van eof af halen
e.seekg(0, ios::beg);
}
f.close();
e.close(); |