Autor Beitrag
eRoX General
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Sa 19.03.11 14:31 
Hallo an alle,

ich brauche mal euere Hilfe und zwar muss ich für die schule mit der For schleife eine Dreieck Pyramide machen doch ihrgendwie fehlen striche bzw sind es zu viele.
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    btZeichene: TButton;
    imBild: TImage;
    procedure btZeicheneClick(Sender: TObject);
  private
    { Private-Deklarationen }
    x,y,breite:Integer;
    procedure Dreieck;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btZeicheneClick(Sender: TObject);
var
  K,I: Integer;
begin
  Breite:=40;
  with imbild.Canvas do begin
    moveto(10,400);
    x:=penpos.X;
    y:=penpos.Y;
    for K := 5 downto 1 do begin
      for I := 1 to k do begin
        dreieck;
        x:=x+breite;
      end;
      x:=x-k*breite+breite div 2;
      y:=y-breite;

    end;
  end;
end;

procedure TForm1.Dreieck;
begin
  with imBild.Canvas do begin
    lineto (x+breite,y);
    lineto (x+breite div 2,y-breite);
    lineto (x,y);
  end;
end;

end.

Und Zwar habe ich auch noch ein Bild im Anhang

Danke euch schonmal

General

Moderiert von user profile iconNarses: Highlight- durch Delphi-Tags ersetzt
Einloggen, um Attachments anzusehen!
Jann1k
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 866
Erhaltene Danke: 43

Win 7
TurboDelphi, Visual Studio 2010
BeitragVerfasst: Sa 19.03.11 15:00 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
procedure TForm1.Dreieck;
begin
  with imBild.Canvas do begin
    moveto(x,y);
    lineto (x+breite,y);
    lineto (x+breite div 2,y-breite);
    lineto (x,y);
  end;
end;


Wenn du eine neue Reihe von Dreiecken beginnst, musst du den Zeichenstift auch an den Anfang dieser Reihe setzen (s.o.).

MfG

Jann1k
eRoX General Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Sa 19.03.11 15:20 
Danke dir