Hallo allemaal,
Met informatica leren wij nu visual basic for applications. Wij moesten een wiskundige puzzel oplossen:

Er zijn 16 lege witte vlakken waar de getallen 1 t/m 16 in moeten komen, zodanig dat regel 1 van links naar rechts 19 is. Probleem: je mag de getallen 1 t/m 16 maar 1 keer gebruiken. Nu moesten wij de computer de eerste regel laten oplossen en alle mogelijke combinaties laten uitrekenen. Geen probleem tot dusver. Daarna moesten we ervoor zorgen dat de computer de getallen maar 1 keer gebruikte. tot dusver nog steeds geen probleem.
De volgende opdracht was om ook de tweede regel uit te laten rekenen samen met de eerste, zodanig dat je de getallen 1t/m 16 maar 1 keer gebruikte. De computer deed er een halve minuut over ongeveer en kwam met 20176 oplossingen. Nu ging ik kijken of het werkte en pakte de volgende getallen reeks die de computer mij gaf:
voor regel 1: 2 8 16 15 => 2/8*16+15 = 19 dit klopt dus. Maar hiernaast stond voor regel 2:
7 6 12 3 => 7-6+12/3 = 5 en dat is dus niet zo, het is 4,33333. Hieronder staat mijn programma dat ik in excel liet uitvoeren:
Wie kan mij helpen om de foute antwoorden eruit te halen of mij vertellen wat ik fout doe.
Alvast bedankt,
Mathieu
Met informatica leren wij nu visual basic for applications. Wij moesten een wiskundige puzzel oplossen:

Er zijn 16 lege witte vlakken waar de getallen 1 t/m 16 in moeten komen, zodanig dat regel 1 van links naar rechts 19 is. Probleem: je mag de getallen 1 t/m 16 maar 1 keer gebruiken. Nu moesten wij de computer de eerste regel laten oplossen en alle mogelijke combinaties laten uitrekenen. Geen probleem tot dusver. Daarna moesten we ervoor zorgen dat de computer de getallen maar 1 keer gebruikte. tot dusver nog steeds geen probleem.
De volgende opdracht was om ook de tweede regel uit te laten rekenen samen met de eerste, zodanig dat je de getallen 1t/m 16 maar 1 keer gebruikte. De computer deed er een halve minuut over ongeveer en kwam met 20176 oplossingen. Nu ging ik kijken of het werkte en pakte de volgende getallen reeks die de computer mij gaf:
voor regel 1: 2 8 16 15 => 2/8*16+15 = 19 dit klopt dus. Maar hiernaast stond voor regel 2:
7 6 12 3 => 7-6+12/3 = 5 en dat is dus niet zo, het is 4,33333. Hieronder staat mijn programma dat ik in excel liet uitvoeren:
VBScript:
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
| Sub opdracht1() rij = 1 For a = 1 To 16 For b = 1 To 16 For c = 1 To 16 For d = 1 To 16 If (a / b * c + d = 19) Then For e = 1 To 16 For f = 1 To 16 For g = 1 To 16 For h = 1 To 16 If (e - f + g / h = 5) Then If (a = b Or a = c Or a = d Or b = c Or b = d Or c = d Or a = e Or a = f Or a = g Or a = h Or b = e Or b = f Or b = g Or b = h Or c = e Or c = f Or c = g Or c = h Or d = e Or d = f Or d = g Or d = h Or e = f Or e = g Or e = h Or f = g Or f = h Or g = h) Then Else Cells(rij, 1) = a Cells(rij, 2) = b Cells(rij, 3) = c Cells(rij, 4) = d Cells(rij, 5) = a / b * c + d Cells(rij, 6) = e Cells(rij, 7) = f Cells(rij, 8) = g Cells(rij, 9) = h Cells(rij, 10) = e - f + g / h rij = rij + 1 End If End If Next h Next g Next f Next e End If Next d Next c Next b Next a End Sub |
Wie kan mij helpen om de foute antwoorden eruit te halen of mij vertellen wat ik fout doe.
Alvast bedankt,
Mathieu