Als ik charAt(i) == '.' doe op een bepaalde string om te controleren of er een punt in zit werkt dit niet. Het lijkt alsof hij voor die punt gelijk welk getal in de plaats kan zetten.
Nu ken ik nog niet zo veel van java, maar een zoektocht leidde me tot deze url:
http://java.sun.com/j2se/...il/regex/Pattern.html#sum
daar kwam ik ergens tegen dat een . een Predefined character class is en daarbij staat:
Any character (may or may not match line terminators)
Maar uit mijn eigen programma kan ik afleiden dat als ik een letter ingeef voor de char, de voorwaarde == '.' niet voldaan is.
dit is het stuk code:
het is dus de bedoeling om te detecteren welk talstelsel er van toepassing is. Ik gebruik geen parseint was als die false is moet je toch je string afgaan om te kijken of het dan een Romeins cijfer is. Verder kan ik hierdoor ook sneller kijken of het ingevoerde getal niet fout is. Als het teken na het eerste teken niet van hetzelde talstelsel is dan spring ik uit de lus en zet stelsel op 0 (= fout).
Ook vraag ik me af of die if condities niet korter kunnen...nu was ik eens beginnen zoeken op die url en kwam daar iets interessants tegen nl. /d maar dit hoe ik dat kan gebruiken snap ik niet goed. Maar als mijn probleem met de punt verduidelijkt is ben ik al een zeer tevreden tweaker.
En ja deze opdracht is voor school, maar normaal moeten we zo ver niet gaan als ik dat doe. Maar ik doe het liever 100% goed. Je moet maar tot aan een bepaald Romeins getal aankunnen, mar ik wil het maximum
maar die punt strooit roet in het eten en ik geraak er echt niet wijs uit.
Nu ken ik nog niet zo veel van java, maar een zoektocht leidde me tot deze url:
http://java.sun.com/j2se/...il/regex/Pattern.html#sum
daar kwam ik ergens tegen dat een . een Predefined character class is en daarbij staat:
Any character (may or may not match line terminators)
Maar uit mijn eigen programma kan ik afleiden dat als ik een letter ingeef voor de char, de voorwaarde == '.' niet voldaan is.
dit is het stuk code:
Java:
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
| public void bepaalCijferstelsel() { for (int i = 0 ; i < input.length() ; i++) { if (i == 0) { if (input.charAt(i) == '0' || input.charAt(i) == '1' || input.charAt(i) == '2' || input.charAt(i) == '3' || input.charAt(i) == '4' || input.charAt(i) == '5' || input.charAt(i) == '6' || input.charAt(i) == '7' || input.charAt(i) == '8' || input.charAt(i) == '9') { stelsel = 1; } else if (input.charAt(i) == 'I' || input.charAt(i) == 'V' || input.charAt(i) == 'X' || input.charAt(i) == 'L' || input.charAt(i) == 'C' || input.charAt(i) == 'D' || input.charAt(i) == 'M' || input.charAt(i) == '.') { stelsel = 2; } else { stelsel = 0; } } else { if (stelsel == 1 && input.charAt(i) == '0' || input.charAt(i) == '1' || input.charAt(i) == '2' || input.charAt(i) == '3' || input.charAt(i) == '4' || input.charAt(i) == '5' || input.charAt(i) == '6' || input.charAt(i) == '7' || input.charAt(i) == '8' || input.charAt(i) == '9') { stelsel = stelsel; // deze lijn is niet nodig } else if (stelsel == 2 && input.charAt(i) == 'I' || input.charAt(i) == 'V' || input.charAt(i) == 'X' || input.charAt(i) == 'L' || input.charAt(i) == 'C' || input.charAt(i) == 'D' || input.charAt(i) == 'M' || input.charAt(i) == '.') { stelsel = stelsel; //deze lijn is niet nodig } else { stelsel = 0; break; } } //debug info System.out.println("stelsel = " + stelsel + " & i = " + i); } |
het is dus de bedoeling om te detecteren welk talstelsel er van toepassing is. Ik gebruik geen parseint was als die false is moet je toch je string afgaan om te kijken of het dan een Romeins cijfer is. Verder kan ik hierdoor ook sneller kijken of het ingevoerde getal niet fout is. Als het teken na het eerste teken niet van hetzelde talstelsel is dan spring ik uit de lus en zet stelsel op 0 (= fout).
Ook vraag ik me af of die if condities niet korter kunnen...nu was ik eens beginnen zoeken op die url en kwam daar iets interessants tegen nl. /d maar dit hoe ik dat kan gebruiken snap ik niet goed. Maar als mijn probleem met de punt verduidelijkt is ben ik al een zeer tevreden tweaker.
En ja deze opdracht is voor school, maar normaal moeten we zo ver niet gaan als ik dat doe. Maar ik doe het liever 100% goed. Je moet maar tot aan een bepaald Romeins getal aankunnen, mar ik wil het maximum
Techno>Music