Goeienacht, 
Ik probeer zoiets als SIR te maken. SIR is ontworpen zodat als bekent is dat:
a is b;
b is c;
c is d;
d is e, dat het programma dan de conclusie kan trekken dat a gelijk is aan e.
De enige mogelijkheid is dus een recursieve formule. Hier loop ik op vast. Deze geeft namelijk een oneindige loop:
bool Find (subject, informatie)
this.gegevens is een hashtable waarbij de key altijd een string is, en de value altijd lijsten van strings.
Ik doe hier iets fout, of ik heb zowieso al een denkfout gemaakt maar het wil niet werken? Als ik hem laat uitzoeken of c gelijk is aan a lukt het maar anders niet.
Ik probeer zoiets als SIR te maken. SIR is ontworpen zodat als bekent is dat:
a is b;
b is c;
c is d;
d is e, dat het programma dan de conclusie kan trekken dat a gelijk is aan e.
De enige mogelijkheid is dus een recursieve formule. Hier loop ik op vast. Deze geeft namelijk een oneindige loop:
bool Find (subject, informatie)
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
| public bool Find(string sub, string inf) { //gerelateerd aan Vraag(...) try { this.calls++; bool success = false; foreach ( string s in (List<string>)this.gegevens[sub] ) { if ( s == inf ) { success = true; return true; } if ( this.gegevens.ContainsKey(s) ) { if ( this.Find(sub, inf) ) { success = true; return true; } } else { success = false; } } if ( !( (List<string>)this.gegevens[sub] ).Contains(inf) && success == false ) { return false; } } catch { return false; } return false; } |
this.gegevens is een hashtable waarbij de key altijd een string is, en de value altijd lijsten van strings.
Ik doe hier iets fout, of ik heb zowieso al een denkfout gemaakt maar het wil niet werken? Als ik hem laat uitzoeken of c gelijk is aan a lukt het maar anders niet.
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]