Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi neues Thema: Primfaktorzerlegung bricht mit exitcode 201 ab (https://www.delphipraxis.net/112521-neues-thema-primfaktorzerlegung-bricht-mit-exitcode-201-ab.html)

pyromane 23. Apr 2008 17:22

Re: Neue Aufgabe: Primfaktorzerlegung
 
Liste der Anhänge anzeigen (Anzahl: 1)
naja mit Longint reicht aus ... hab ich gemerkt ;) 1.000.000.000 dauert schon ne Weile ;)

nächstes Problem:

(is jetzt in Pascal... ich schreib die Testprogramme immer dort, da ja die Programmiersprache dieselbe ist, es zur Veranschaulichung viel schneller zu schreiben geht, als immer erst ne Form zusammenklicken zu müssen)
Delphi-Quellcode:
program Teiler;
uses crt;

type prim=array[1..30] of Integer;
type haeuf=array[1..30] of integer;

var n:longint;
     h:prim;
     p:haeuf;


procedure primfak(n:longint;var p:prim; var h:haeuf);

var t,w:longint;
    diff,i:integer;
begin
  for i:=1 to 30 do h[i]:=0;

  i:=0;

  for t:=2 to 3 do
    if (n mod t=0) then
      begin
        i:=i+1;
        p[i]:=t;
        while n mod t=0 do
          begin n:=n div t;
          h[i]:=h[i]+1
        end
  end;
  t:=5;
  diff:=2;
  w:=round(sqrt(n));
  while t<=w do
    begin
      if (n mod t = 0) then
        begin i:=i+1;
        p[i]:=t;
        while n mod t=0 do
          begin
            n:=n div t;
            h[i]:=h[i]+1
          end
       end;
    t:=t+diff;
    diff:=6-diff;
    end;
  if n>1 then
    begin
      i:=i+1;
      p[i]:=n;
      h[i]:=h[i]+1
    end;

   for i:=0 to 30 do
     begin
       writeln(p[i],'*',h[i]);
     end;

end;


Begin

clrscr;
writeln('Zahl, die in ihre Primfaktoren zerlegt werden soll: ');
readln(n);
writeln;
primfak(n,h,p);
writeln;
readln;
end.
--> Primfaktorzerlegung.

-> er bricht immer mit dem Exitcode 201 ab, doch ich kann keinen Fehler erkenn. Kann mit nur vorstellen, dass ich die eigentlich noch nicht benutzen "Array-Variablen" h und p falsch übergebe.
mfg Pyromane

Der.Kaktus 23. Apr 2008 17:33

Re: neues Thema: Primfaktorzerlegung bricht mit exitcode 201
 
Hallo,
der Fehler ist mir noch aus Turbo Pascal Zeiten in Erinnerung.."Range Check Error"...sozusagen überschreitet irgend ein Wert die Grenzen seiner Definition.

Luckie 23. Apr 2008 17:48

Re: neues Thema: Primfaktorzerlegung bricht mit exitcode 201
 
Wie oft wurde der Threadtitel denn jetzt schon geändert? Erst ging es um ungültige Gleitkommaoperationen und jetzt umd RangecheckErros. :?

r_kerber 24. Apr 2008 06:05

[team]
 
Zitat:

Zitat von Luckie
Wie oft wurde der Threadtitel denn jetzt schon geändert? Erst ging es um ungültige Gleitkommaoperationen und jetzt umd RangecheckErros. :?

Und genau aus diesem Grund mache ich hier zu. Neues Thema neuer Thread. Sonst blickt hier keiner mehr durch, worum es überhaupt geht!

* * * C L O S E D * * *


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:35 Uhr.
Seite 2 von 2     12   

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