![]() |
Re: LZW Komprimierung für texte - zugriffsverletzung
@gammatester
Auch wenn Du recht hast, jetzt hast Du ihn verscheucht. (Irgendwie hab ich das Gefühl, das ist alles wild zusammenkopiert) Gruß K-H |
Re: LZW Komprimierung für texte - zugriffsverletzung
Zitat:
Gruß Gammatester |
Re: LZW Komprimierung für texte - zugriffsverletzung
Liste der Anhänge anzeigen (Anzahl: 1)
ich denke jetzt sollte es funktionieren - probiert es mal aus
auch mit selbst erstellten arrays |
Re: LZW Komprimierung für texte - zugriffsverletzung
Zitat:
Allerdings hat sich Dein Programmier- und Posting-Stil nicht geändert. Was ist so schwierig daran, .pas + .dfm + .dpr in ein ZIP zu packen :?: Ich befürchte fast, daß das wieder mal nicht der eigentliche Code ist. Aber um etwas guten Willen zu zeigen, gleich ohne Umschweife einige Fehler: 1. Unkompilierbar also gibt's nix auszuprobieren. Es fehlen - Units.dfm - in TForm1 = class(TForm): Edit1, Edit2, Edit3, memo1, Button2...Button8 2. Bubblesort greift auf ar[length(ar)] zu also BUMM! 3. In Quicksort steht immer noch der Schrott wb[j]:=wb[i]; wb[i]:=b; nach der while Schleife. Gruß Gammatester |
Re: LZW Komprimierung für texte - zugriffsverletzung
Liste der Anhänge anzeigen (Anzahl: 1)
Danke für die Rückmeldung. Doch möchte ich folgendes anmerken:
1) Zitat:
Delphi-Quellcode:
dadurch, dass in der while schleife nicht "<=" steht, läuft sie bis length(ar)-1. Es macht auch nicht "BUMM!" - sondern es gibt die korrekte Reihenfolge aus.
while i<length(ar) do //hier
begin a:=ar[i]; b:=ar[i+1]; if a<=b then i:=i+1 else begin c:=a; a:=b; b:=c; ar[i]:=a; ar[i+1]:=b; i:=i+1; end; end; 2) Zitat:
3) im anhang jetze eine zip mit dpr, dcu, pas, exe,dfm,dcu,cfg etc |
Re: LZW Komprimierung für texte - zugriffsverletzung
Zitat:
Gammatester PS: Scheint so, als wenn der "Schrott in Quicksort" notwendig ist, weil Du eine ungewöhnliche Implementation hats, die vor der While-Schleife i := l-1; und j := r+1; setzt und nach den repeats immer tauscht. Also lass Ar[j]:=Ar[i]; Ar[i]:=b; drin. |
Re: LZW Komprimierung für texte - zugriffsverletzung
wie ist es denn möglich, doppelte einträge nach dem sortieren zu eliminieren?
habe es wie folgt versucht, doch leider ohne erfolg:
Delphi-Quellcode:
function tform1.clean(ar:sy):sy; var i,j:int64; begin i:=0; setlength(result.zahl,length(ar.zahl)); init(strtoint(edit1.Text)); quicksort(ar,low(ar.zahl),high(ar.zahl)); while i<high(ar.zahl) do begin if ar.zahl[i]<>ar.zahl[i+1] then begin result.zahl[i]:=ar.zahl[i]; end else begin result.zahl[i]:=ar.zahl[i+1]; end; i:=i+1; end; write(result); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:34 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