AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Pascalsche Dreieck

Ein Thema von Mr. General · begonnen am 29. Okt 2008 · letzter Beitrag vom 3. Jul 2013
Antwort Antwort
Mr. General

Registriert seit: 8. Aug 2008
9 Beiträge
 
Turbo Delphi für Win32
 
#1

Pascalsche Dreieck

  Alt 29. Okt 2008, 17:48
Also erstmal hallo!

Arbeitsauftrag ist folgender:

Pascalsches Dreieck
Eingabe in Edit: Anzahl der Zeilen, die berechnet werden sollen
Ausgabe in einem Memo-Feld

Ich weiß nicht wie ich da ran gehen soll... Ich hab schon viel gegoogelt aber nichts passendes gefunden.

Wäre echt nett wenn ihr mir helfen könntet
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Pascalsche Dreieck

  Alt 29. Okt 2008, 18:13
Hey, ich habe vor einger Zeit schon mal das Dreieck hier veröffentlicht, vllt kann es dir weiterhelfen,du kannst es ja weiterentwickeln, mit den Dingen die du benötigst!!

Hoof mal das kann dir weiter helfen
Angehängte Dateien
Dateityp: zip dreieck_770.zip (384,4 KB, 95x aufgerufen)
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Mr. General

Registriert seit: 8. Aug 2008
9 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Pascalsche Dreieck

  Alt 29. Okt 2008, 18:44
passt perfekt ich habs jetzt so wie ich es brauche.

funktioniert genau so wie es soll, jetzt muss ich es nurmehr verstehen, kommentieren und fertig.
  Mit Zitat antworten Zitat
ericsson333

Registriert seit: 1. Jul 2013
1 Beiträge
 
#4

AW: Pascalsche Dreieck

  Alt 1. Jul 2013, 20:21
Hallo zusammen,

bäuchte auch mal das Pascal'sche Dreieck mit Eingabe der Zeilenlänge in einem Edit-Feld. Ausgabe über
ButtonClick in einer Listbox. Könnte mit hierzu vielleicht einer behilflich sein.
Habe nächste Woche Klausur und keinen Plan wie ich das umsetzen soll. Ich weiß auch nicht wie ich
die Ausgabe über Memofeld umschreiben könnte.

Weiß hier jemand was??
VIelen dank vorab.
  Mit Zitat antworten Zitat
Benutzerbild von MrMooed
MrMooed

Registriert seit: 18. Feb 2012
101 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Pascalsche Dreieck

  Alt 1. Jul 2013, 20:34
Bist du dir sicher, dass die Ausgabe über eine TListBox erfolgen soll?

Vielleicht meinst du eine TListView? Wäre jedenfalls meiner Meinung nach deutlich sinnvoller
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#6

AW: Pascalsche Dreieck

  Alt 1. Jul 2013, 21:33
Also eine Listview?
Dann eine ListBox mit Courier-Zeichensatz und '*' und ' '.
Noch hübscher ist natürlich eine Paintbox.
  Mit Zitat antworten Zitat
Benutzerbild von MrMooed
MrMooed

Registriert seit: 18. Feb 2012
101 Beiträge
 
Delphi 7 Enterprise
 
#7

AW: Pascalsche Dreieck

  Alt 1. Jul 2013, 22:00
Ansonsten habe ich mir ein altes Schulprojekt herausgekramt:

Stell dir das Dreieck einfach als 2D-Array vor.
Code:
Ebene: | Ergebnis:
0      |     1
1      |    1 1
2      |   1 2 1
3      |  1 3 3 1
4      | 1 4 6 4 1
Bei dem Dreieck wissen wir als einziges, dass außen immer eine '1' steht. Außerdem sehen wir, dass jede Dimension (Ebene) einen Wert mehr hat, als die vorherige.
D.h. konkret, dass wir ein Array erschaffen müssen, dessen Dimensionen immer um eins incrementiert werden und "außen" den Wert '1' besitzen:

Delphi-Quellcode:
procedure PasDreieck(var Ebenen: Integer);
var
  PasDreieck : Array of Array of Integer;
  i, j : Integer;
begin
for i:=0 to Ebenen -1 do
    begin
      SetLength(PasDreieck[i], i+1); // Länge für jede Ebene um 1 erweitern
      PasDreieck[i,Low(PasDreiech[i])] := 1; // Eins am Anfang
      PasDreieck[i,high(PasDreieck[i])] := 1; // Eins am Ende
    end;
end;
Wie man aus der Tabelle sehen kann, müssen wir erst ab der 3. Ebene anfangen zu rechnen - davor kommen nur unsere Einsen vor

Delphi-Quellcode:
for i:=2 to Ebene -1 do
  for j:=1 to High(PasDreieck[i]) -1 do
    begin
      PasDreieck[i,j] := PasDreieck[i-1,j-1] + PasDreieck[i-1, j];
    end;
Und das Array kannst du nun in welcher Form auch immer du willst ausgeben.

Delphi-Quellcode:
for i:=Low(PasDreieck) to High(PasDreieck) do
  for b:=Low(PasDreieck[i]) to High(PasDreieck[i]) do
    StringGrid1.Cells[i,b] := IntToStr(PasDreieck[i,b]);
Wäre z.B. eine von vielen Möglichkeiten

Geändert von MrMooed ( 2. Jul 2013 um 21:34 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz