|
|
| Auteur |
Bericht |
josk79
|
|
Onderwerp: 01234566543210
Geplaatst: 07 mrt 2010 - 16:11
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
Ik kwam op internet een leuke opdracht tegen. Ik heb hem iets aangepast:
Opdracht:
Maak een enkele for-lus die middels console.write (of debug.print) de volgende output op het scherm zet:
01234566543210
Gebruik de volgende code als basis en vul op ***** jouw oplossing in:
Visual Basic code: For ***** Console.Write(*****) Next
Je mag geen gebruik maken van IF / IIF / SELECT CASE of subs of functions (dus ook niet van abs()). Er mag maar 1 statement in de for-lus staan.
[edit3:]
Ik doel dus op een oplossing dat gebruik maakt van operatoren (+, -, *, /, ^ etc...) en geen arrays, properties en dergelijke van objecten.
[/edit3]
[edit2:]
substring(), mid() etc.. zijn ook functions, die mag je dus ook niet gebruiken!
[/edit2]
[edit:]
Voor de smartasses onder ons: Iedere keer dat de loop wordt doorlopen mag er maximaal 1 karakter worden weergegeven, dus niet:
For i=1 to 1: console.write("01234566543210"): next
[/edit]
Tijdsduur: enkele minuten
Deadline: 21 maart |
Laatst aangepast door josk79 op 09 mrt 2010 - 16:14, in totaal 2 keer bewerkt
|
| |
|
|
|
 |
josk79
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 08 mrt 2010 - 17:29
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
| Ik heb een inzending mogen ontvangen van Vozzie. De ouput is goed, maar helaas had Vozzie gebruik gemaakt van een iif instructie. Dat mag dus niet! |
|
|
| |
|
|
|
 |
Vozzie
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 08 mrt 2010 - 22:46
|
|
Erelid

Geregistreerd op: 11-mei-2009
Berichten: 958
Status: Offline
|
|
Hallo,
Heb 2 a 3 mogelijkheden ingezonden die geen gebruik maken van een functie. (enkel console.write(....))
Groeten |
_________________ con\con
Stappen, keuzes en herhaling combineren is programmeren.
|
| |
|
|
|
 |
josk79
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 09 mrt 2010 - 08:25
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
| Goede oplossing van Vozzie! |
|
|
| |
|
|
|
 |
doebi
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 09 mrt 2010 - 15:22
|
|
Professional Developer

Geregistreerd op: 12-mrt-2006
Berichten: 331
Woonplaats: Diksmuide
Status: Offline
|
|
Zie PB
Doebi |
_________________ Verwacht het onverwachte
|
| |
|
|
|
 |
josk79
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 09 mrt 2010 - 16:07
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
Doebi, je maakt gebruik van Math.Abs() dat mag dus niet  |
|
|
| |
|
|
|
 |
doebi
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 09 mrt 2010 - 18:45
|
|
Professional Developer

Geregistreerd op: 12-mrt-2006
Berichten: 331
Woonplaats: Diksmuide
Status: Offline
|
|
Tis maar een woord
Zie PB
Doebi |
_________________ Verwacht het onverwachte
|
| |
|
|
|
 |
josk79
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 09 mrt 2010 - 21:03
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
Da's een teveel
Maar desalniettemin, zojuist de juiste oplossing van Doebi ontvangen. Gefeliciteerd! |
|
|
| |
|
|
|
 |
josk79
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 09 mrt 2010 - 21:06
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
Iemand vroeg mij om een tip. Bijdeze:
Visual Basic code: Debug.Print((1=1)*1)
|
|
|
| |
|
|
|
 |
josk79
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 29 mrt 2010 - 19:00
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
Hm, weinig animo. Bij deze de oplossing zoals ik hem in gedachte had:
Visual Basic code: For i As Integer = -6 To 7 Console.Write(6 - ((i < 0) * i - (i > 0) * (i - 1))) Next
|
|
|
| |
|
|
|
 |
doebi
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 29 mrt 2010 - 19:34
|
|
Professional Developer

Geregistreerd op: 12-mrt-2006
Berichten: 331
Woonplaats: Diksmuide
Status: Offline
|
|
Dit was mijn oplossing
Mijne "mentor" zei destijds : "alle wegen leiden naar Rome"
Code:
For lus as int16 = 0 To 13
Debug.Print((lus + (lus > 6) * 13) + (lus > 6) * (13 - lus) * -2)
Next
|
_________________ Verwacht het onverwachte
|
| |
|
|
|
 |
josk79
|
|
Onderwerp: Re: 01234566543210
Geplaatst: 30 mrt 2010 - 20:16
|
|
Senior Developer
Geregistreerd op: 08-nov-2009
Berichten: 243
Status: Offline
|
|
Ja, maar jij gebruikt drie keer het getal 13 en dat brengt ongeluk.  |
|
|
| |
|
|
|
 |
|
|
|
|