AGB  ·  Datenschutz  ·  Impressum  







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

Problem bei Pascalsche Dreieck

Ein Thema von Borgschüler · begonnen am 14. Nov 2008 · letzter Beitrag vom 15. Nov 2008
Antwort Antwort
Seite 3 von 3     123   
Fridolin Walther

Registriert seit: 11. Mai 2008
Ort: Kühlungsborn
446 Beiträge
 
Delphi 2009 Professional
 
#21

Re: Problem bei Pascalsche Dreieck

  Alt 15. Nov 2008, 15:06
Hier die gefixte Routine für alle Interessierten:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  ACol, ARow, x : Integer;
begin
  StringGrid1.Cells[ 17, 1 ] := '1';
  for ARow := 1 to 10 do
    for ACol := 1 to 34 do
      begin
        x :=
          StrToIntDef(StringGrid1.Cells[ACol - 1, ARow - 1], 0) +
          StrToIntDef(StringGrid1.Cells[ACol + 1, ARow - 1], 0);
        if x <> 0 then StringGrid1.Cells[ACol, ARow] := IntToStr(x);
      end;
end;
Die Fehler in der Routine des Threaderstellers sind folgende:

Er geht zuerst Spalte für Spalte durch und nicht Zeile für Zeile. Da sich die Berechnung darauf verlässt, das die Zeile davor komplett berechnet ist, müssen wir Zeile für Zeile arbeiten.

Ausserdem berechnet sich x nicht durch "x + <Wert Links Oben> + <Wert Rechts Oben>" sondern nur durch "<Wert Rechts Oben> + <Wert Links Oben>".
Fridolin Walther
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#22

Re: Problem bei Pascalsche Dreieck

  Alt 15. Nov 2008, 15:09
Hast Du Deinen Code auch überprüft?

Ich sehe da auf jeden Fall noch einen groben Fehler ...

cu

Oliver
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Fridolin Walther

Registriert seit: 11. Mai 2008
Ort: Kühlungsborn
446 Beiträge
 
Delphi 2009 Professional
 
#23

Re: Problem bei Pascalsche Dreieck

  Alt 15. Nov 2008, 15:23
Jo. Welchen Fehler denn?
Fridolin Walther
  Mit Zitat antworten Zitat
Borgschüler

Registriert seit: 6. Sep 2007
20 Beiträge
 
#24

Re: Problem bei Pascalsche Dreieck

  Alt 15. Nov 2008, 16:50
der fehler ist, dass man in der 2ten reihe anfangt und nicht in der ersten.
  Mit Zitat antworten Zitat
Fridolin Walther

Registriert seit: 11. Mai 2008
Ort: Kühlungsborn
446 Beiträge
 
Delphi 2009 Professional
 
#25

Re: Problem bei Pascalsche Dreieck

  Alt 15. Nov 2008, 16:52
Ist in dem Fall unnötig, weil in Zeile 0 keine Werte vorhanden sind und somit niemals irgendwelche Werte in die Zeile 1 geschrieben werden (die 1 die dort platziert wird, wird also niemals geändert).
Fridolin Walther
  Mit Zitat antworten Zitat
Borgschüler

Registriert seit: 6. Sep 2007
20 Beiträge
 
#26

Re: Problem bei Pascalsche Dreieck

  Alt 15. Nov 2008, 17:06
hinterher find ichs schad dass ich da gestern nicht draufgekommen bin.

naja ich hab auch schlecht wissen können was es mit dem Def auf sich hatte, danke jedenfalls!
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#27

Re: Problem bei Pascalsche Dreieck

  Alt 15. Nov 2008, 17:29
Zitat von Borgschüler:
naja ich hab auch schlecht wissen können was es mit dem Def auf sich hatte, danke jedenfalls!
Öh, das hatte mit der Lösung eigentlich nichts zu tun, war in dem Fall nur eleganter zu lösen.
Und ausserdem ist dir der Unterschied zwischen StrToInt und StrToIntDef erklärt worden.
Der eigentliche Fehler lag doch wohl darin, dass du

a) den vorherigen wert mit dazuaddiert hattest ( x := x + ... )
b) du keine überprüfung gemacht hast, ob für das feld überhaupt eine berechnung erfolgen darf

Das Argument "konnte ich doch gar nicht wissen" kann hier wohl nicht gelten.

cu

Oliver
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


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 12:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz