AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Hilfe bei Programmieren in Tabellen
Thema durchsuchen
Ansicht
Themen-Optionen

Hilfe bei Programmieren in Tabellen

Ein Thema von flugtier · begonnen am 3. Jun 2004 · letzter Beitrag vom 3. Jun 2004
Antwort Antwort
flugtier

Registriert seit: 14. Jan 2004
14 Beiträge
 
#1

Hilfe bei Programmieren in Tabellen

  Alt 3. Jun 2004, 16:33
Hi. Ich brauche mal eure Hilfe. Immer wenn ich das in einer Tabelle wiedergebe, dann entstehen bei mir Zahlen in Milliardenhöhe. Kann mir jemand helfen?
Zum Bild. Das ist eine Tabelle mit 100 Spalten und 3 Reihen. Und 4 Buttons.

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Label1: TLabel;
    Button4: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var i:integer; //Zählvariable für die Spalten
begin
 randomize; //Zufallsgenerator
 for i:=1 to 100 do stringgrid1.cells[i,0]:=inttostr(i); //Zeile 0 mit Zahlen 1 bis 10 füllen
 for i:=1 to 100 do stringgrid1.cells[i,1]:=inttostr(random(1001)); //Zeile 1 mit Zufallszahlen von 0 bis 70 füllen
end;

procedure TForm1.Button2Click(Sender: TObject);
var i,j:integer; //i=Zahl der Spalte - j=Zählvariable(entspricht Anzahl der Spalten)
    s:string; //Variable zum Tauschen
begin
 for j:=1 to 100 do //Anzahl der Durchläufe entsprechend der Anzahl der Spalten
   for i:=1 to 99 do //Durchlauf der Spalten von 1 bis 9
    begin
     if strtoint(stringgrid1.cells[i,1])>strtoint(stringgrid1.cells[i+1,1]) then //Vergleich der Spalte i und ihrer nachfolgenden Spalte
      begin //Bedingung erfüllt - Spalte 1 größer als Spalte 2
       s:=stringgrid1.cells[i,1]; //Inhalt von Zelle 1 in Tauschvariable
       stringgrid1.cells[i,1]:=stringgrid1.cells[i+1,1]; //Inhalt von Zelle 2 in Zelle 1
       stringgrid1.cells[i+1,1]:=s; //Inhalt von Tauschvariable in Zelle 2
      end;
    end;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
close;
end;

procedure TForm1.Button4Click(Sender: TObject);
VAR i,j,m:integer;
begin
 for i:=1 to 1001 do
 begin
 m:= a[i];
 j:=i;
 while (j>i) and (a[j-1] > m ) do
 begin
 a[j] := a[j-1];
 j:=j-1;
 end;
 a[j]:= m;
 stringgrid1.Cells[3,1]:=inttostr(a[i]);
end;
end;
end.
[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]
Angehängte Dateien
Dateityp: dpr project1_470.dpr (188 Bytes, 3x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: Hilfe bei Programmieren in Tabellen

  Alt 3. Jun 2004, 17:13
Na dann erklär mal bitte, was das Programm überhaupt machen soll...
Und außerdem: wenn du das Projekt zum Testen anhängen willst, dann solltest du folgendes in ein ZIP geben:
  • Die dpr-Datei
  • Alle .pas-Dateien
  • Alle .dfm-Dateien
  • Evtl. noch die .res-Datei
In der dpr-Datei steht nämlich nichts von deinem Code drin.

Greetz
alcaeus

PS: Zur Button4Click kann ich nur eines sagen: Blöcke einrücken
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  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 18:58 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