Registreer FAQ Berichten van vandaag


Ga terug   Scholieren.com forum / Technologie / Software & Hardware
Reageren
 
Topictools Zoek in deze topic
Oud 20-02-2004, 12:16
phmpruim
phmpruim is offline
ik zoek een programma die 16 letters in alle mogelijke volgordes zet
__________________
"God houdt niet van ons omdat we waardevol zijn, wij zijn waardevol omdat God van ons houdt!"
Met citaat reageren
Advertentie
Oud 20-02-2004, 12:29
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
dan heb je 16! mogelijkheden. Je kan het zelf maken Niet al te moeilijk lijkt me

edit:
om je een indruk te geven hoeveel mogelijkheden dat zijn:
16! = 2,1×10^13

Laatst gewijzigd op 20-02-2004 om 12:35.
Met citaat reageren
Oud 20-02-2004, 12:35
phmpruim
phmpruim is offline
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
__________________
"God houdt niet van ons omdat we waardevol zijn, wij zijn waardevol omdat God van ons houdt!"
Met citaat reageren
Oud 20-02-2004, 12:41
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
Citaat:
phmpruim schreef op 20-02-2004 @ 13:35:
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
je hebt geluk ik heb vakantie k zal me er eens over buigen. Moeten het 16 willekeurige letters zijn of staat die van tevoren vast?

voeg me trouwens effe toe op msn, praat iets makkelijker

how mn adres is dus drhendre@hotmail.com

Laatst gewijzigd op 20-02-2004 om 12:50.
Met citaat reageren
Oud 20-02-2004, 13:13
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
pff het valt toch best wel tegen Als ik iets heb laat ik het wel horen
Met citaat reageren
Oud 20-02-2004, 13:45
Kawoutertje
Avatar van Kawoutertje
Kawoutertje is offline
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.
__________________
When you are arguing with an idiot, make sure the other person isn't doing the same thing.

Laatst gewijzigd op 20-02-2004 om 13:48.
Met citaat reageren
Oud 20-02-2004, 13:55
phmpruim
phmpruim is offline
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.
__________________
"God houdt niet van ons omdat we waardevol zijn, wij zijn waardevol omdat God van ons houdt!"

Laatst gewijzigd op 20-02-2004 om 13:59.
Met citaat reageren
Oud 20-02-2004, 13:55
phmpruim
phmpruim is offline
Citaat:
Dr HenDre schreef op 20-02-2004 @ 13:41:
voeg me trouwens effe toe op msn, praat iets makkelijker

how mn adres is dus drhendre@hotmail.com
gedaan
__________________
"God houdt niet van ons omdat we waardevol zijn, wij zijn waardevol omdat God van ons houdt!"
Met citaat reageren
Oud 20-02-2004, 15:35
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
Citaat:
Kawoutertje schreef op 20-02-2004 @ 14:45:
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.
bij 16 letters is de kans op een identieke combinatie te groot. Je moet het allemaal 1 voor 1 doen. Brute force 1 voor a al die paren afgaan.

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
Met citaat reageren
Oud 20-02-2004, 16:07
Chimera
Avatar van Chimera
Chimera is offline
Code:
public class ExpoMain
{
	static void Main(string[] args)
	{
		if(args.Length < 1)
			return;

		char[] theString = args[0].ToCharArray();
		Expo(theString);
	}

	public static void Expo(char[] theString) 
	{
		char[] result;

		result = new char[theString.Length];
		Expo(theString, result, 0);
		Console.ReadLine();
	}

	public static void Expo(char[] theString, char[] result, int pos) 
	{
		int i;
		for(i = 0;i < theString.Length;i++) 
		{
			result[pos] = theString[i];
			if(pos < (theString.Length - 1))
				Expo(theString, result, pos + 1);
			else
                    			Console.WriteLine(new string(result));
		}
	}
}
Snap overigens niet helemaal hoe je bij 6 mogelijkheden voor abc komt, dit is de output voor "abc":
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

Laatst gewijzigd op 20-02-2004 om 16:09.
Met citaat reageren
Oud 20-02-2004, 16:35
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
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
Met citaat reageren
Oud 20-02-2004, 16:52
Verwijderd
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

Waarom zou je het overigens willen
Met citaat reageren
Oud 20-02-2004, 17:00
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
Citaat:
PCRodent schreef op 20-02-2004 @ 17:52:
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

Waarom zou je het overigens willen
hehe, daar had ik nog niet aan gedacht Wordt idd leuk
Met citaat reageren
Oud 21-02-2004, 08:25
Chimera
Avatar van Chimera
Chimera is offline
Citaat:
PCRodent schreef op 20-02-2004 @ 17:52:

Veel plezier met programmeren
De source staat een paar regels terug, die werkt prima met een string van 16 characters.
Met citaat reageren
Oud 21-02-2004, 09:45
Verwijderd
Okee, okee....

Veel plezier met uitvoeren dan
Met citaat reageren
Oud 21-02-2004, 11:49
iamcj
Avatar van iamcj
iamcj is offline
Waarom wil je het, misschien is een andere oplossing.
__________________
Wie bang is voor morgen, kan niet genieten van vandaag.
Met citaat reageren
Oud 21-02-2004, 12:18
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
Citaat:
iamcj schreef op 21-02-2004 @ 12:49:
Waarom wil je het, misschien is een andere oplossing.
dat vroeg ik me idd ook af..
Met citaat reageren
Oud 21-02-2004, 13:19
Orion
Avatar van Orion
Orion is offline
Citaat:
Dr HenDre schreef op 20-02-2004 @ 13:29:
dan heb je 16! mogelijkheden.
euhw... 26^16 toch?
__________________
Ongefilterd. Van nature troebel.
Met citaat reageren
Oud 21-02-2004, 14:22
Dr HenDre
Avatar van Dr HenDre
Dr HenDre is offline
Citaat:
Orion schreef op 21-02-2004 @ 14:19:
euhw... 26^16 toch?
neej. Dat is als je uit 26 letters 16 keer met herhaling kiest. Tis zo, voor de eerste letter(als je alle letters gebruikt) heb je 26 mogelijkheden. Voor de 2de letter heb je ook 26 mogelijkheden. Samen wordt dat 26×26= 262. En zo is dus 2616 dat je 16 keer een willekeurig letter kiest uit het alfabet, zonder dat je kijkt of je gebruikte letter al een keer is voorgekomen.
Met citaat reageren
Advertentie
Reageren


Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar

Soortgelijke topics
Forum Topic Reacties Laatste bericht
Software & Hardware [programmatje gezocht] in live sets knippen
Jantinexx
1 30-01-2008 07:53
Software & Hardware [Alg] Windows vertraagd af laten sluiten
ysselsteyn
22 26-04-2005 17:50
Software & Hardware [Centraal] Spyware & Adware
Verwijderd
500 17-10-2004 16:21
Software & Hardware [Beveiliging] Programma dat alle sporen wist
aap777
13 02-08-2004 05:00
Software & Hardware [win2k] Log in probleem
- DeJa - Vu -
7 09-10-2003 11:26
Software & Hardware twee tooltjes gezocht
forum.scholieren.com
6 18-01-2002 19:59


Alle tijden zijn GMT +1. Het is nu 22:29.