![]() |
Re: Zählschleife Auswertung der Zufallszahlen
hm ich glaube ich kriege es einfach nicht umgesetzt.. :oops: bin doch anfänger, kann das noch nicht so gut mit dem rekursiven programmieren,
|
Re: Zählschleife Auswertung der Zufallszahlen
Mit Rekursion hat dies nichts zu tun, du löst das momentan iterativ. ;)
Zeige uns doch bitte, wie du shmias Code eingebunden hast, denn dieser sollte funktionieren. Und Sharky meint, dass du die Initialisierung der Variablen vor der Schleife durchführen musst. |
Re: Zählschleife Auswertung der Zufallszahlen
hey das kenn ich newtonsches näherungsverfahren :)
also hab das ding so genommen wie ist und neue prozedur erstellt, ich musste mich danach dazu vorkämpfen wie schaff ich es das ergebnis auszugen, egal ob sinnvoll oder nicht aber ich wußte nicht woher das ergebnis kommt, achso noch ne frage, bei shmia wir da die funktion nicht in sich selbst noch mal aufgerufen? habe jetzt in dem prog von mir die variablen vor die schleife gestellt aber immer noch ganz komische ergebnisse, ich probier jetzt noch mal was |
Re: Zählschleife Auswertung der Zufallszahlen
so wie ich es einbinden wollte hab ich leider gelöscht... ich kriegs nicht hin.. schreib montag klausur ist zwar nur wp aber schlecht will ja trotzdem nicht sein, da ist dann halt noch der ehrgeiz, war gestern schon zwo std. dran, und jetzt heute wieder, ich weiß muss viel aufholen, egal,
|
Re: Zählschleife Auswertung der Zufallszahlen
hello habs erneut probiert aber immer das gleiche problem aber diesmal startet programm, mäkelt dann und gibt keine auswertung aus
[procedure TForm1.feld_zaehlen; var a:array[1..6] of integer; i,k: integer; begin for i:=1 to 6 do a[i]:=0; //for i:=1 to 1000 do inc (a[w[i]]; for i:=1 to 1000 do begin for k:=1 to 6 do if w[i]=k then inc (a[i]); end; for i:=1 to 6 do Li_zuza.Items.add(inttostr(i)+' gibt es '+ inttostr(a[i])+ ' mal.'); end;] ich danke euch für die hilfe im vorraus |
Re: Zählschleife Auswertung der Zufallszahlen
ich weiß nicht wie man das mit dem delphi code hinbekommt, hab auf das knöpfchen hier oben gedrückt, klappt nit
|
Re: Zählschleife Auswertung der Zufallszahlen
Es wäre deutlich leichter, wenn du uns auch noch die Fehlermeldung sagen würdest. :roll:
Übrigens kann man Beiträge auch editieren, dann musst du nicht immer doppelposten. |
Re: Zählschleife Auswertung der Zufallszahlen
Tschuldigung :(
die Meldung lautet: Benachrichtigung über Debugger-Exception Im Projekt ist eine Exception der EAccessViolation aufgetreten. Meldung:Zugriffsverletzung bei Adresse 00450E64 in Model Projekt1.exe. Lesen von Adresse A8008F5E! Prozess wurde angehalten. Mit einzelner Anweisung oder Start fortsetzen. Danke |
Re: Zählschleife Auswertung der Zufallszahlen
Okay, gehn wir das mal Schritt für Schritt durch:
Delphi-Quellcode:
Du setzt zuerst alle 6 Array-Elemente auf 0.
procedure TForm1.feld_zaehlen;
var a:array[1..6] of integer; i,k: integer; begin for i:=1 to 6 do a[i]:=0; //for i:=1 to 1000 do inc (a[w[i]]; for i:=1 to 1000 do begin for k:=1 to 6 do if w[i]=k then inc (a[i]); end; for i:=1 to 6 do Li_zuza.Items.add(inttostr(i)+' gibt es '+ inttostr(a[i])+ ' mal.'); end; Dann hast du eine Zeile auskommentiert, die das gleiche macht, wie die drei darauffolgenden, nur einfacher. Warum hast du die auskommentiert? Ich vermute folgendes Problem: Du greifst auf einen Array-Index von w zu, der außerhalb des Bereichs liegt. Zeige uns doch mal die Deklaration und Füllung des Arrays w. |
Re: Zählschleife Auswertung der Zufallszahlen
habe auskommentiert weil ich mir nicht sicher war ob es richtig ist...
Delphi-Quellcode:
habe eben noch eine überlegung angestellt. aber muss noch ausprobieren... muss dafür aber immer ins andere zimmer weil mein delphi nicht will mit windows vista...
type
TForm1 = class(TForm) Li_zuza: TListBox; B_zuza: TButton; B_loeschen: TButton; procedure feld_fuellen; procedure feld_anzeigen; procedure feld_zaehlen; procedure B_loeschenClick(Sender: TObject); procedure B_zuzaClick(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } w:array [1..1000]of integer; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.feld_fuellen; var x:integer; begin for x:=1 to 1000 do w[x] := random (6)+1; end; procedure TForm1.feld_anzeigen; var x:integer; begin for x:=1 to 1000 do Li_zuza.Items.Add(inttostr (w[x])) ; end; procedure TForm1.feld_zaehlen; var a:array[1..6] of integer; i,k: integer; begin for i:=1 to 6 do a[i]:=0; //for i:=1 to 1000 do inc (a[w[i]]; for i:=1 to 1000 do begin for k:=1 to 6 do if w[i]=k then inc (a[i]); end; for i:=1 to 6 do Li_zuza.Items.add(inttostr(i)+' gibt es '+ inttostr(a[i])+ ' mal.'); end; //************************************************************ procedure TForm1.B_loeschenClick(Sender: TObject); begin Li_zuza.Items.Clear; end; procedure TForm1.B_zuzaClick(Sender: TObject); begin feld_fuellen; feld_anzeigen; feld_zaehlen; end; procedure TForm1.FormCreate(Sender: TObject); begin randomize; end; end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz