Uses crt; Type TRozmiary = (Bytes,KiloBytes,MegaBytes,GigaBytes); function Zamien (Wartosc Real; Z, Na : TRozmiary); var WspZ,WspNa : Real; begin case Z of Bytes : WspZ := 1; KiloBytes : WspZ := 1024; MegaBytes: WspZ := 1024*1024; GigaBytes : WspZ := 1024*1024*1024 end;
case Na of Bytes : WspNa := 1; KiloBytes : WspNa := 1024; MegaBytes:WspNa := 1024*1024; GigaBytes : WspNa := 1024*1024*1024 end; Zamien:= (WspZ/WspNa) *Wartosc end;
Const Liczba Real = 512; begin ClrScr; {Zmiana z Gigabajtów na kolejno: Bajty,KiloBajty i MegaBajty} Writeln(Liczba:0:0,' GB = ',Zamien(Liczba, GigaBytes,Bytes) :0:0,' B' ); Writeln(Liczba:0:0,' GB = ',Zamien(Liczba, GigaBytes,KiloBytes) :0:0,' KB' ); Writeln(Liczba:0:0,' GB = ',Zamien(Liczba, GigaBytes,MegaBytes) :0:0,' MB' );
Writeln; {Zmiana z Bajtów na kolejno : KiloBajty,MegaBajty i gigaBajty} Writeln(Liczba:0:0,' B = ',Zamien(Liczba,Bytes,KiloBytes) :0:20,' KB' ); Writeln(Liczba:0:0,' B = ',Zamien(Liczba,Bytes,MegaBytes) :0:20,' MB' ); Writeln(Liczba:0:0,' B = ',Zamien(Liczba,Bytes,GigaBytes) :0:20,' GB' ); Readln End.
Złotko - proponuję zastosować kopiuj wklej do notatnika, pomaga w 100%
np.:
u Ciebie
function Zamien (Wartosc Real; Z, Na : TRozmiary); u mnie
function Zamien(Wartosc : Real; Z, Na : TRozmiary) : Real;
lub zastosować metodę znajdź trzy elementy którymi różnią się dwa teksty a program zadziala napewno.
Kolejna rzecz - przy kompilacji kursor zatrzymuje się w miejscu gdzie popełniłaś błąd i podpowiada co powinno się w danym miejscu znaleźć, warto z tej funkcji skożystać przy przepisywaniu.
P.S. staraj się na przyszłość odpowiadać w jednym wątku, zamiast tworzyć kolejny wątek o tej samej tematyce - tyle w temacie Forum.