![]() |
programmatje gezocht
ik zoek een programma die 16 letters in alle mogelijke volgordes zet
|
dan heb je 16! mogelijkheden. Je kan het zelf maken (y) Niet al te moeilijk lijkt me
edit: om je een indruk te geven hoeveel mogelijkheden dat zijn: 16! = 2,1×10^13 |
ok, als het zo makkelijk is, kun je het dan voor me schrijven? ik kan niet (nauwelijks) programmeren
edit: ik weet ook wel dat het veel zijn, anders zou ik het toch met de hand doen |
Citaat:
voeg me trouwens effe toe op msn, praat iets makkelijker (y) how mn adres is dus drhendre@hotmail.com |
pff het valt toch best wel tegen (n) :p Als ik iets heb laat ik het wel horen
|
Ik zou op het eerste zicht zeggen:
Je zet alle letters van het alfabet in een array. je zoekt met een randomfunctie (genereert in de meeste gevallen een willekeurig getal tussen 0 en 1) een getal en je vermenigvuldigt dit met 26 (aantal letters van het alfabet), en je past daar een floor() op toe zodat het bekomen getal naar beneden op een integer(geheel getal) afgerond wordt. En dan neem je de letter die overeenkomt met dit getal in die eerste array. En dat doe je 16 keer. Simpel toch, niet ? edit: en als je elke letter maar éénmaal mag gebruiken, dan sla je de reeds gebruikte letters of hun overeenkomstige cijfer (vd array) ergens in een array op of zo, en wanneer deze opnieuw genomen wordt, negeer je dat en zoek je opnieuw, zonder dat je het "aantal keer gevonden" verhoogt. |
volgens mij begrijp je het verkeerd (of ik begrijp jou niet, kan ook)
het is de bedoeling dat als je 16 letters invoert, het programma alle mogelijke volgordes als uitvoer geeft. |
Citaat:
|
Citaat:
Met 3 letters gaat heb je de volgende combinaties(let op de volgorde) abc acb bac bca cab cba dat zijn 3! = 3×2×1 = 6 mogelijkheden. Je moet steeds beginnen met het op een rijtje zetten, dan de laatste en 1 na laaste omwisselen, dan de 2 na laatste met de een na laatste en dan weer 2 keer de 2 laatste. Enz enz. netzoals met binair tellen eerst de 0, dan de 1, en dan schuift de 1 een plaats op en komt er een 0 bij 10, dan weer 11, en dan weer een plaatsje opschuiven 100, 101 110 111 enz enz |
Code:
public class ExpoMain aaa aab aac aba abb abc aca acb acc baa bab bac bba bbb bbc bca bcb bcc caa cab cac cba cbb cbc cca ccb ccc |
dat is iets anders, dat is een keuze van 3 uit 3 met herhaling. Ik ging ervan uit dat het zonder herhaling was. Dus alle letters mogen maar 1 keer voorkomen.
met herhaling zijn het er 33 mogelijkheden. Zonder herhaling zijn dat er 3! ofterwel een permutatie van 3 uit 3 gedeeld door 1 |
Ja lol en dan 16! mogelijkheden, x16 karakters heb je dan. Er zijn nuttigere manieren om je HD vol te krijgen...
Even rekenen: Dan heb je 20922789888000 mogelijkheden, x16 = 334.764.638.208.000 karakters; dat wordt (mits je niet zipt, maar het lijkt me dat je dat pas achteraf zou doen...) een .txt van 304,466 TERABYTES Veel plezier met programmeren :D Waarom zou je het overigens willen :confused: |
Citaat:
|
Citaat:
|
Okee, okee....
Veel plezier met uitvoeren dan :D |
Waarom wil je het, misschien is een andere oplossing.
|
Citaat:
|
Citaat:
|
Citaat:
|
Alle tijden zijn GMT +1. Het is nu 21:20. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.