Autor Beitrag
gasgos
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 27.02.08 13:57 
Hallo,
hab folgendes Program zuschreiben und komme einfach nicht mehr weiter!

Aufgabenstellung:
Erstelen Sie ein Delphi-Pro., welches 100 Zufallszahlen im Bereich 1 - 250 erzeugt, diese Zufallszahlen auf einem Datenfeld abspeichert und in eine Stringgrid-Komponente ausgibt!Anschließend sollen alle GERADEZaheln in eine 2. Stringgrid auf selbe stelle des 1.Grids angezeigt werden und die ungeraden ausgeblendet werden.

so soweit bin ich gekommen:
habe die Zufallszahlen erzeugt und in 2 StringGrids ausgeben lassen ... aber egal wie ich vor gehe kann ich die ungeradezahlen in den 2.Grid nicht ausblenden ... als Tipp solle mans mit DIV und MOD die Sache realisieren.

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:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Tabelle: TStringGrid;
    TabellePositiv: TStringGrid;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  daten : array [1..100of integer;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var spalte, zeile, i :integer;
begin
  randomize;
 for i:=1 to 100 do
  daten[i]:=random (250)+1 ;
  i:=1;
 for spalte:=0 to 9 do
 for zeile:=0 to 9 do
  begin
  tabelle.Cells[spalte,zeile]:=inttostr(daten[i]);
  i:=i+1;
  end;
    randomize;
 for i:=1 to 100 do
  daten[i]:=random (250)+1 ;
  i:=1;
 for spalte:=0 to 9 do
 for zeile:=0 to 9 do
  begin
  TabellePositiv.Cells[spalte,zeile]:=inttostr(daten[i]);
  i:=i+1;
  end;
 end;
end.


bitte um Hilfe.
danke im voraus!


Zuletzt bearbeitet von gasgos am Mi 27.02.08 15:36, insgesamt 2-mal bearbeitet
Kroko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1284

W98 W2k WXP
Turbo D
BeitragVerfasst: Mi 27.02.08 14:01 
(a) Wenn alle Zufallszahlen zwischen 1 und 250 liegen sollen, gibt es nur Positive!
(b) Randomize nur einmalig aufrufen
(c) Warum füllst Du Daten zweimal?
(d) MOD und DIV haben nichts mit negativ zu tun!
(e) LIES noch mal die Aufgabenstellung!

_________________
Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!


Zuletzt bearbeitet von Kroko am Mi 27.02.08 14:03, insgesamt 1-mal bearbeitet
gasgos Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 27.02.08 14:03 
mh wenn ich das laufen lasse erscheinen aber sowohl gerade alsoauch ungerade unzwar in beiden SGrids an den selben Stellen!


Zuletzt bearbeitet von gasgos am Mi 27.02.08 15:11, insgesamt 1-mal bearbeitet
Kroko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1284

W98 W2k WXP
Turbo D
BeitragVerfasst: Mi 27.02.08 14:05 
EDIT 1. Beitrag


Wo Sollen die den herkommen
Random(250)*1 erzeugt eine Zufallszahl zwischen 1 und 250;

_________________
Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!
gasgos Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 27.02.08 14:19 
also,
mein Lehrer hat das 2mal als übersicht aufspielen lassen ... und es funktioniert zu 100% leider mit DIV bzw MOD (ich weiß es auch nicht wie, aber das sollt ich mit hilfe von DIV bzw MOD schaffen!).
aber gut sollten wir/ich nicht drauf kommen werd ich nächste Woche die Lösung erhalten und hier Posten!

nochmal vllt eine kleine visualisierungs hilfe!

[url=img521.imageshack.us...p?image=gridhb6.jpg]Hier geht es zum Screen[/url]

bloß in den unteren Grid sollen eben nur die Positivenzahlen erscheinen.
Kroko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1284

W98 W2k WXP
Turbo D
BeitragVerfasst: Mi 27.02.08 15:05 
Wo siehst Du denn im Screen negative Zahlen???

Das ist normalerweise die mit dem Minus davor, also -1; -2 ; -3 usw

_________________
Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!
gasgos Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 27.02.08 15:10 
:( tut mir schreklich leid -.- ... habe durch lange probieren und überlegungen "gerade" mit "positiv" und "ungerade" mit "negativ" verwechselt :( ... also nochmal oben editiert!
hoffe das es jetzt klar ist was ich erreichen soll.
nochmals sry
Kroko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1284

W98 W2k WXP
Turbo D
BeitragVerfasst: Mi 27.02.08 15:32 
na ja denn,
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:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Tabelle: TStringGrid;
    TabellePositiv: TStringGrid;
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  daten : array [1..100of integer;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
var spalte, zeile, i :integer;
begin
  randomize;
 for i:=1 to 100 do
  daten[i]:=random (250)+1 ;
  i:=1;
 for spalte:=0 to 9 do
 for zeile:=0 to 9 do
  begin
    tabelle.Cells[spalte,zeile]:=inttostr(daten[i]);
    if (Daten[I] mod 2)=0 then // = 2 gerade; =1 ungerade
      TabellePositiv.Cells[spalte,zeile]:=inttostr(daten[i]);
  i:=i+1;
  end;
  i:=1;
end.

_________________
Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!


Zuletzt bearbeitet von Kroko am Mi 27.02.08 15:51, insgesamt 1-mal bearbeitet
gasgos Threadstarter
Hält's aus hier
Beiträge: 5



BeitragVerfasst: Mi 27.02.08 15:35 
mh vielen dank,
mein fehler war das ich immer mit 10 modiert habe und auf der suche nach etwas war was das alles überprüft :( .
danke schön
Kroko
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1284

W98 W2k WXP
Turbo D
BeitragVerfasst: Mi 27.02.08 15:52 
Bitte!

Ich habe es noch ein bisschen optimiert, :lol:

_________________
Die F1-Taste steht nicht unter Naturschutz und darf somit regelmäßig und oft benutzt werden! oder Wer lesen kann, ist klar im Vorteil!