AGB  ·  Datenschutz  ·  Impressum  







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

Stringrid ordnen

Offene Frage von "simon19881"
Ein Thema von simon19881 · begonnen am 12. Feb 2008 · letzter Beitrag vom 12. Feb 2008
Antwort Antwort
simon19881

Registriert seit: 18. Dez 2007
Ort: Frankfurt (Oder)
12 Beiträge
 
Delphi 7 Personal
 
#1

Stringrid ordnen

  Alt 12. Feb 2008, 08:04
Hallo leutz, ich hab ne Aufgabe in Info aufbekommen und komm auf keinen grünen Zweig.
Wir sollen in ein Stringgrid (1 Zeile, 30 Spalten) zufällig die werte z.B: A1,A2,A3,B1,B2,B3 erstellen
und dan der reihenfolge nach orden könt ihr mir bitte helfen.
Vielen Dank
Simon

Ps.: Ich bin delphi Neuling ^^
be water my friend ^^
  Mit Zitat antworten Zitat
Benutzerbild von TeronG
TeronG

Registriert seit: 19. Jul 2004
Ort: München
960 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Stringrid ordnen

  Alt 12. Feb 2008, 08:07
aha ne Info-Aufgabe .. dann nur Such-hinweise ^^


Zitat von simon19881:
...zufällig die werte ...
-> Random

Zitat von simon19881:
...und dan der reihenfolge nach orden...
-> bubblesort: IMHO recht easy zu verstehen und umzusetzen
龍 Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.
  Mit Zitat antworten Zitat
simon19881

Registriert seit: 18. Dez 2007
Ort: Frankfurt (Oder)
12 Beiträge
 
Delphi 7 Personal
 
#3

Re: Stringrid ordnen

  Alt 12. Feb 2008, 16:46
Hallo ich mus noch dazui sagen dass ich ein totaler anfänger mit delphi bin
Bitte sagt mir mal wie ich verhindere dass er die anderen werte überschreibt
danke schonmal im voraus ^^

Delphi-Quellcode:
var i,z:byte;
begin
for i:=0 to 30 do
z:=random (31);
if Stringgrid1.Cells[i,0]='then
begin
stringgrid1.cells[z,0]:='A1';
stringgrid1.cells[z,0]:='A2';
stringgrid1.cells[z,0]:='A3';
stringgrid1.cells[z,0]:='A4';
stringgrid1.cells[z,0]:='B1';
stringgrid1.cells[z,0]:='B2';
stringgrid1.cells[z,0]:='B3';
stringgrid1.cells[z,0]:='B4';
stringgrid1.cells[z,0]:='C1';
stringgrid1.cells[z,0]:='C2';
stringgrid1.cells[z,0]:='C3';
stringgrid1.cells[z,0]:='C4';
end;
end;
be water my friend ^^
  Mit Zitat antworten Zitat
Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Stringrid ordnen

  Alt 12. Feb 2008, 18:07
Edit: hoppla, der erste Parameter von Cells[I,J] ist die Spalte!

#1
For-Schleife geht so:
Delphi-Quellcode:
for I := Low to High do begin
  //Code
end;

//oder so, je nach Styleguide

for I := Low to High do
begin
  //Code
end;
In deinem Code wird z jedes Mal wieder überschrieben, ohne dass du damit irgendwas anstellst.
Delphi-Quellcode:
for i:=0 to 30 do
z:=random (31);

#2
Der Code sollte von Anfang an "richtig" eingerückt werden, weil man dann den Programmablauf schon anhand der Struktur des Quellcodes nachvollziehen kann. Außerdem sollten alle Bezeichner (also Variablennamen etc) aussagekräftig sein. Das ist wichtig, um Fehler zu vermeiden.

Dieser Code tut noch nicht, was du willst, aber vielleicht siehst du schon, warum dein Programm noch nicht funktioniert.
Delphi-Quellcode:
var
  I, ColIndex: Byte;
begin
  for I := 0 to 30 do begin
    ColIndex:= Random(31);
  end;
  //I ist jetzt undefiniert (siehe Onlinehilfe) und ColIndexeine Zahl zwischen 0 und 30
  if Stringgrid1.Cells[I, 0] = 'then begin
    StringGrid1.Cells[ColIndex, 0] := 'A1';
    StringGrid1.Cells[ColIndex, 0] := 'A2';
    StringGrid1.Cells[ColIndex, 0] := 'A3';
    StringGrid1.Cells[ColIndex, 0] := 'A4';
    StringGrid1.Cells[ColIndex, 0] := 'B1';
    StringGrid1.Cells[ColIndex, 0] := 'B2';
    StringGrid1.Cells[ColIndex, 0] := 'B3';
    StringGrid1.Cells[ColIndex, 0] := 'B4';
    StringGrid1.Cells[ColIndex, 0] := 'C1';
    StringGrid1.Cells[ColIndex, 0] := 'C2';
    StringGrid1.Cells[ColIndex, 0] := 'C3';
    StringGrid1.Cells[ColIndex, 0] := 'C4';
  end;
end;
#3
Wer ist "er"?
Zitat:
Bitte sagt mir mal wie ich verhindere dass er die anderen werte überschreibt
Dani H.
At Least I Can Say I Tried
  Mit Zitat antworten Zitat
bluesbear

Registriert seit: 14. Dez 2005
Ort: Hahnstätten
355 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: Stringrid ordnen

  Alt 12. Feb 2008, 18:17
Hallo Simon,
Zitat von simon19881:
Ps.: Ich bin delphi Neuling ^^
ok, eine Starthilfe gebe ich Dir. Kommentarlos
Delphi-Quellcode:
var i, a, b : Integer;
    tmpStr : String;
begin
  for i:=0 to Pred(StringGrid1.RowCount) do begin
    StringGrid1.Cells[0, i] := Chr(Ord('A') + (i div 4)) + IntToStr((i mod 4) + 1);
  end;
  for i:=0 to 300 do begin
    a := Random(Pred(StringGrid1.RowCount));
    b := Random(Pred(StringGrid1.RowCount));
    tmpStr := StringGrid1.Cells[0, a];
    StringGrid1.Cells[0, a] := StringGrid1.Cells[0, b];
    StringGrid1.Cells[0, b] := tmpStr;
  end;
end;
Rauskriegen, wie das funktioniert und den Bubblesort programmieren mußt Du nun aber selber
Klaus M. Hoffmann
  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 10:18 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