Autor |
Beitrag |
NOE
Hält's aus hier
Beiträge: 7
|
Verfasst: Di 07.08.07 12:42
Ich muss in meiner Schule in den nächsten Tagen ein Programm entwickeln, das mir !alle! Kombinationen aus 3 buchstaben ausgibt (also abc abd abe abf abg abh abi...)! egal wie viel tausende kombinationen es wären, alle müssen ausgeben werden. Wäre sehr dankbar wenn mir jmd helfen könnte, indem er das programm entwickelt oder mir den quellcode für delphi gibt! ES wäre so verdammt nett und geil wenn das jmd machen könnte. DANKE DANKE schon mal im Vorraus Moderiert von Gausi: Topic aus Open Source Projekte verschoben am Di 07.08.2007 um 13:12Moderiert von Tino: "Hilfe" im Titel entfernt.
Zuletzt bearbeitet von NOE am Di 07.08.07 13:18, insgesamt 2-mal bearbeitet
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 07.08.07 12:52
Titel: Re: HILFE
Moin und  im Forum!
NOE hat folgendes geschrieben: | Wäre sehr dankbar wenn mir jmd helfen könnte, |
Wir helfen dir gerne, das Programm zu schreiben.  Was hast du denn bisher schon geschafft?
NOE hat folgendes geschrieben: | indem er das programm entwickelt oder mir den quellcode für delphi gibt! |
Es ist sicher nicht sinnvoll, dir das Programm zu schreiben - davon lernst du ja nix.  Abgesehen davon machen wir hier keine Hausaufgaben...
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
NOE 
Hält's aus hier
Beiträge: 7
|
Verfasst: Di 07.08.07 12:59
Ja da ich ein halben Jahr krank war, hab ich so gut wie garnichts im Unterricht lernen können, aber damit ich jetzt keine schlechte note bekomme, habe ich gehofft das mir jmd helfen kann. Es ist das letzte Jahr Informatik weil ich dann meine schule beendet habe!
Mein lehrer meinte es reicht vollkommen aus nur die exe datei abzugeben, weil das sone zusätzliche leistung wäre!
|
|
arj
      
Beiträge: 378
Win XP/Vista, Debian, (K)Ubuntu
Delphi 5 Prof, Delphi 7 Prof, C# (#Develop, VS 2005), Java (Eclipse), C++, QT, PHP, Python
|
Verfasst: Di 07.08.07 13:00
Übrigens gibt es nicht tausende von Kombinationsmöglichkeiten aus 3 Buchstaben, sondern nur 6 
|
|
NOE 
Hält's aus hier
Beiträge: 7
|
Verfasst: Di 07.08.07 13:03
was? also abc abd abe abf abg abh abi...... also bei mir sind das schon 7 ! ^^ wir müssen aber alle erzeugen. 
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: Di 07.08.07 13:07
Suche mal nach PERMUTATIONEN
Es sind übrigens 26*26*26 = 26^3 = 17576 Kombinationen 
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
|
|
MOEDI
      
Beiträge: 52
|
Verfasst: Di 07.08.07 13:12
Sind es nicht 26*25*24 Kombinationen?
|
|
Martok
      
Beiträge: 3661
Erhaltene Danke: 604
Win 8.1, Win 10 x64
Pascal: Lazarus Snapshot, Delphi 7,2007; PHP, JS: WebStorm
|
Verfasst: Di 07.08.07 13:14
MOEDI hat folgendes geschrieben: | Sind es nicht 26*25*24 Kombinationen? |
Kommt drauf an... So, wie er die Beispiele hat könnte das glatt stimmen.
Ich habe Sachen wie aaa,aab,aac,aad usw zugelassen.
_________________ "The phoenix's price isn't inevitable. It's not part of some deep balance built into the universe. It's just the parts of the game where you haven't figured out yet how to cheat."
|
|
MOEDI
      
Beiträge: 52
|
Verfasst: Di 07.08.07 13:17
Stimmt, er lässt uns ja im Unklaren, ob jede Kombination (z.B. aaa) nur genau einmal vorkommen darf,
sonst hast du natürlich recht. 
|
|
NOE 
Hält's aus hier
Beiträge: 7
|
Verfasst: Di 07.08.07 13:19
die buchstaben können sich auch wiederholen also aaa! ja das wären dann 26^3 Kombinationen
DANKE @ MARTOK, aber wie gesagt ich verfüge eigentlcih nciht mal über die Grundkenntnisse! ich kann damit leider garnichts anfangen
Zuletzt bearbeitet von NOE am Di 07.08.07 13:22, insgesamt 1-mal bearbeitet
|
|
MOEDI
      
Beiträge: 52
|
Verfasst: Di 07.08.07 13:20
Na dann halt nich 
|
|
Jann1k
      
Beiträge: 866
Erhaltene Danke: 43
Win 7
TurboDelphi, Visual Studio 2010
|
Verfasst: Di 07.08.07 13:25
Wie gut kennste dich denn mit Delphi aus? Für das Programm brauchse nur Kenntnisse mit Schleifen, Strings und irgendeine Form der Ausgabe (memofenster o.ä.)
|
|
NOE 
Hält's aus hier
Beiträge: 7
|
Verfasst: Di 07.08.07 13:32
tut mir leid, ich lag fast 7 monate mit ner gehirnhautentzündung im krankenhaus. eigentlich null sind meine kenntnisse! mein lehrer meinte gib mir einfahc die exe ab und wir werden das angemesssen zensieren! also bite hilft mir, das wäre so nett. wir jmd das prog schicken könnte! BITTE
|
|
Jann1k
      
Beiträge: 866
Erhaltene Danke: 43
Win 7
TurboDelphi, Visual Studio 2010
|
Verfasst: Di 07.08.07 13:37
was ist denn mit deinen klassenkameraden? hier im forum wird dir so schnell keiner einfach deine hausaufgaben machen, kannst es ja mal in der jobbörse versuchen
musst du nach 7 monaten fehlzeit nicht sowieso das jahr wiederholen?!?
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Di 07.08.07 13:40
Hallo!
Also ich hab hier folgendes gelernt..wenn ich n fertig programm online gestellt hab, war die beigeisterung nicht so groß..
ist auch verständlich!
Schau dir das an www.christian-stelzm...rials_crashkurs.html
Was du für dein Problem brauchst:
- Schleifen
- Strings / Array
- Funktion ord() und chr()
- Zeit
- Lernwille
LG
Stefan
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
Gausi
      
Beiträge: 8548
Erhaltene Danke: 477
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Di 07.08.07 13:41
Weil du den Titel so schön geändert hast, hab ich mal ein Programm geschrieben, was bis 99 zählen kann. Das sollte weiterhelfen ;-).
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7:
| procedure TForm1.Button1Click(Sender: TObject); var i,j: integer; begin for i := 0 to 9 do for j := 0 to 9 do Memo1.lines.Add(IntToStr(i) + IntToStr(j)); end; |
_________________ We are, we were and will not be.
|
|
NOE 
Hält's aus hier
Beiträge: 7
|
Verfasst: Di 07.08.07 13:57
leider kann ich damit wenig anfangen  schade das mir keiner helfen konnte 
|
|
Gausi
      
Beiträge: 8548
Erhaltene Danke: 477
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Di 07.08.07 14:02
...dann versuch mal zu verstehen, was mein Code macht. Dann überlege, was man machen müsste, damit das Ding bis 999 zählt. Und dann muss man nur noch mit Ord und Chr n bissel rumspielen, um von den Zahlen zu Buchstaben zu kommen.
Das fertige Programm nützt dir gar nichts.
_________________ We are, we were and will not be.
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Di 07.08.07 14:57
Ok..ich schreib mal nen Artikel...
Was ist unsere Problem / unsere Aufgabenstellung??
Schreibe ein Programm, das alle Möglichen Kombinationen aus 3 Buchstaben ausgibt.
Zutaten:
- 3 Schleifen
- die Funktionen ord() und chr() (alternativ ein Array)
- Delphi
- bissl Intelligenz und Verständnis
Das Programm
Zuerst machen wir uns einmal Gedanken darüber, ob wir ein Array oder die ord() und chr() Funktion verwenden.
Ich persönlich tendiere zum Array, darum werd ich das hier auch so umsetzen.
www.christian-stelzm...rials_crashkurs.html Stichpunkt: Arrays!
Wir deklarieren zuerst einen neuen Typ:
Delphi-Quelltext 1: 2: 3:
| type RAlphabet = record Buchstabe: Char; end; |
und deklarieren anschließend einen Variable des Typs mit der wir arbeiten werden:
Delphi-Quelltext 1:
| myAlpha: array of RAlphabet; |
So jetzt haben wir eine dyn. Array mit keinerlei Werten. Um das Array zu füllen, initialisieren wir es:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7:
| setlength(myAlpha, 26); |
Dazu deklarieren wir eine Variable vom Typ Integer. Wir nennen sie i. Sie dient uns als Zählervariable.
var i: integer;
Jetzt gehen wir unsere Array durch und über die Funktion chr() fügen wir an passender Stelle jeweils den richtigen
Buchstaben ein.
Wir brauchen einen Zähler, damit wir den richtigen Buchstaben "erwischen"
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| var counter: integer; begin; counter:= 97; for i:= low(myAlpha) to high(myAlpha) do begin myAlpha[i].Buchstabe:= chr(counter+i); end; |
Unser Array schaut jetzt so aus:
Quelltext 1: 2: 3: 4: 5:
| myAlpha[0]:= 'a'; myAlpha[1]:= 'b'; myAlpha[2]:= 'c'; ... myAlpha[25]:= 'z'; |
Wunderbar oder?
Jetzt haben wir alles, was wir benötigen um die Ausgabe zu vervollständigen.
Wir sind unserem Ziel schon sehr nahe.
Wir brauchen nun unsere 3 Schleifen.
Delphi-Quelltext 1:
| var i, i2, i3: Integer |
Und nun folgt im Prinzip das, was Gausi dir schon in einfacher Form gezeigt hat.
Vergiss nicht, ein Memo auf die Form zu legen
Delphi-Quelltext 1: 2: 3: 4:
| for i:= low(myAlpha) to high(myAlpha) do for i2:= low(myAlpha) to high(myAlpha) do for i3:= low(myAlpha) to high(myAlpha) do memo1.lines.add(myAlpha[i].Buchstabe + myAlpha[i2].Buchstabe + myAlpha[i3].Buchstabe); |
Was passiert da?
Die erste Schleife sorgt für den ersten, die zweite für den zweiten und die dritte für den dritten Buchstaben.
Die Ausgabe wird also so aussehen:
Quelltext 1: 2: 3: 4: 5: 6: 7:
| aaa aab aac aad aae ... zzz |
Wenn du das verstanden und umgesetzt hast, bin ich glücklich und du sicher auch.
Bei Fragen -> Fragen.
LG
Stefan
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Di 07.08.07 15:09
Es geht auch viel viel viel einfacher!
Ich weiß
Aber hey..warum nicht.. 
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|