JAVA:
Hoe kan ik hier een geschikte invariant bij vinden? Ik weet wel dat je eerst de invariant dient te ontwerpe en dan het stukje code kunt schrijven. Maar als oefening probeer ik bij bovenstaande code een invariant te vinden. Maar ik weet totaal niet waar ik moet beginnen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| public int readInt()
{ boolean r=true;
int chr=0, num=0;
chr=read(); //read() leest een character in en geeft de ASCII waarde terug
num=chr-48;
while (r==true)
{ chr=read();
if (Character.isDigit((char)chr)==true)
num=(num*10)+(chr-48);
else
{
r=false;
}
}
return num;
} |
Hoe kan ik hier een geschikte invariant bij vinden? Ik weet wel dat je eerst de invariant dient te ontwerpe en dan het stukje code kunt schrijven. Maar als oefening probeer ik bij bovenstaande code een invariant te vinden. Maar ik weet totaal niet waar ik moet beginnen.
[ Voor 4% gewijzigd door Verwijderd op 20-04-2005 21:06 ]