AGB  ·  Datenschutz  ·  Impressum  







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

Array defekt.

Ein Thema von Pay der Laimbo · begonnen am 21. Feb 2014 · letzter Beitrag vom 21. Feb 2014
Antwort Antwort
Pay der Laimbo

Registriert seit: 21. Feb 2014
Ort: Keitum City
2 Beiträge
 
#1

Array defekt.

  Alt 21. Feb 2014, 12:14
Unser Array New[i] gibt ständig nur 000000 aus. Warum?
Zur kurzen Info: Sollen einen eigenen Sortierallgorithmus im Informatikunterricht programmieren.



Delphi-Quellcode:
var
Anzahl, i, Min, Max :Integer;
Zahl: Array [1..100] of Integer;
New : Array [1..100] of Integer;

Procedure Eingabe;
begin
Write('Wie viele Zahlen moechten Sie sortieren? ');
Readln(Anzahl);
Writeln('Welche Zahlen wollen Sie sortieren?');
For i:=1 to Anzahl do begin
Write('Zahl ',i,': ');
Readln(Zahl[i]);
end;
end;

Procedure Minimum;
begin
Min := 1;
For i:=1 to Anzahl do
begin
if Zahl[Min] > Zahl[i] then
Min := i;
end;
end;

Procedure Maximum;
begin
Max := 1;
For i:=1 to Anzahl do
begin
if Zahl[Max] < Zahl[i] then
Max := i;
end;
end;

Procedure Sort;
begin
For i:=1 to Anzahl do begin
Minimum;
New[i]:=Zahl[Min];
Zahl[Min]:=Zahl[Max];
end;
end;

Procedure Ausgabe;
begin
Writeln('Die sortierten Zahlen: ');
For i:=1 to Anzahl do begin
Write(New[i]);
end;
end;

Begin
Eingabe;
Maximum;
Minimum;
Sort;
Ausgabe;
Readln;
end.
Pay
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

AW: Array defekt.

  Alt 21. Feb 2014, 12:25
Definiere deine "i" Schleifenvariable mal lokal in den einzelnen Funktionen, dann sollte es funktionieren (Gibt Delphi dir keine Warnung, wenn du das global deklarierst?).
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Pay der Laimbo

Registriert seit: 21. Feb 2014
Ort: Keitum City
2 Beiträge
 
#3

AW: Array defekt.

  Alt 21. Feb 2014, 12:28
Du bist der Gott.

Danke Danke Danke

Aber warum genau muss das denn Lokal definiert sein?
Pay
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#4

AW: Array defekt.

  Alt 21. Feb 2014, 12:28
Crosspost
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#5

AW: Array defekt.

  Alt 21. Feb 2014, 12:47
Aber warum genau muss das denn Lokal definiert sein?
In deinem Falle ist das Problem, dass du "Minimum" innerhalb von "Sort" aufrufst. Hierdurch wird die Schleifenvariable während des "äußeren" Schleifendurchlaufs von der "inneren" Funktion geändert. Dein I in der Sort Funktion entspricht deshalb immer (Anzahl + 1) in jedem Durchlauf.
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  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 08:49 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