Auteur Topic: [Aflevering 7] Opdracht 3 - Testafette  (gelezen 17011 keer)

Offline MartinJ

  • Forumlid
Re: [Aflevering 7] Opdracht 3 - Testafette
« Reactie #100 Gepost op: 9-03-2022, 22:38:48 »
Ik heb dit programma zelf ontwikkeld en de taal is relatief onbekend maar daarom niet onbemind door computer nerds: FORTH. Ontzettend handig om snel dingen uit te proberen en relatief snel omdat je bijna in machinetaal programmeert. En je hebt geen compiler nodig want die is ingebouwd in de taal! Het beroemde voorbeeld van het afdrukken van "Hello world!" is in FORTH eenvoudig:
." Hello world!"
Niets printf, format strings, file includes o.i.d.
Wil je twee getallen optellen en bijvoorbeeld binair afdrukken dan zeg je gewoon:
1 6 + binary .
FORTH zegt dan terug: 111  ok
Mocht je hierin geïnteresseerd zijn, Leo Brodie heeft hele goede boeken over FORTH geschreven, bijvoorbeeld "Starting FORTH".
Ik heb in mijn leven in heel veel computertalen geprogrammeerd en FORTH is nog steeds mijn favoriete taal.
« Laatst bewerkt op: 9-03-2022, 22:40:30 door MartinJ »

Offline Elliebellie

  • Forumlid
Re: [Aflevering 7] Opdracht 3 - Testafette
« Reactie #101 Gepost op: 10-03-2022, 22:37:53 »
Ik geef alvast van te voren mijn excuses als ik hier te ver op in ga. Ik ben van beroep professor en normaal vinden studenten mijn verhaal te begrijpen, maar ik ken je achtergrond niet dus sorry alvast als ik te ver in de materie duik. De moeilijkste oplossing is degene die met ieder bijgeplaatst stuk de minste unieke oplossingen heeft. Denk aan een Rubik’s cube waar je ook krijgt dat naarmate er minder oplossingen zijn, het moeilijker wordt. Het aantal oplossing die je zult vinden heeft te maken met de symmetrie rotatie per combinatie van stukken (wat je zelf al had ondervonden) en het aantal vrije aangrenzende vlakken. Afhankelijk van de positie van het eerste blokje kun je zelf al berekenen hoeveel symmetrieplaatsen mogelijk zijn voor het 2de stuk en hoeveel aangrenzende vlakken er ontstaan (niet de buitenste vlakken van de kubus meenemen). Daarna wordt het van ieder stuk dat erop aan komt te sluiten lastiger. Hiervoor moet je echt rotatie/translatie/inverse matrixes maken voor je programma, omdat het anders nog jaren kan duren.. Als je daarvoor de achtergrond hebt, raad ik je aan een voorbeeld te nemen aan hoe programma’s het berekenen in de vaste stof fysica. De atomen/moleculen combinaties in een eenheidscel hebben natuurlijk ditzelfde stacking probleem. (Zie ook Miller index voor een symmetrie systeem.) Je kunt ook in een bestaand programma hiervoor de oplossing vinden en dan daar naartoe werken? Ik weet niet hoe graag je de oplossing wil vinden en wat je achtergrond is, maar bedenk dat grote software-bedrijven hier jaren over doen om zo’n programma te ontwikkelen. Wat je nu hebt gevonden is al heel indrukwekkend en heel leuk om allerlei oplossingen mee te berekenen! Dus voel je zeker niet verslagen als je niet de moeilijkste oplossing kan vinden! Überhaupt het vinden van dit resultaat is knap!

Offline MartinJ

  • Forumlid
Re: [Aflevering 7] Opdracht 3 - Testafette
« Reactie #102 Gepost op: 11-03-2022, 01:36:27 »
Nee hoor, dat is niet te moeilijk voor mij. Ik heb het programma nu zover dat ik alleen nog maar unieke oplossingen krijg. Dat zijn er 329. Ik heb ook een oplossing gevonden die ik wel grappig vindt omdat die bestaat uit 2 eenvoudige deeloplossingen zie foto. De twee delen kunnen op verschillende manieren worden samengevoegd, wat dus weer meerdere oplossingen geeft omdat je beide delen op meerdere manieren kan maken en ook op meerdere manier kunt samenvoegen.
Volgens jouw definitie van moeilijkste oplossing heb ik een aantal oplossingen gevonden waarbij er na de eerste 2 stukken slechts 2 mogelijkheden zijn om het derde stuk te plaatsen. Dat verbaast mij eigenlijk niet omdat je in één vlak bijna altijd de 2 stukken kan verwisselen. Bij alle andere oplossingen is dit 3 of meer met een maximum van 27.
« Laatst bewerkt op: 11-03-2022, 01:56:14 door MartinJ »