Ĺadny brzuch
Witam,
chce w jednym labelu wyswietlic wynik jakiegos dzialania , ktory znajduje sie w zmiennej wynik typu float.
czyli cos takiegO:
Label1->Caption = wynik;
jednak co zrobić żeby wyświetlało mi ten wynik z zaokragleniem do 2 miejsc po przecinku, a nie ile wlezie;P?
pozdro
Witam,
chce w jednym labelu wyswietlic wynik jakiegos dzialania , ktory znajduje sie w zmiennej wynik typu float.
czyli cos takiegO:
Label1->Caption = wynik;
jednak co zrobić żeby wyświetlało mi ten wynik z zaokragleniem do 2 miejsc po przecinku, a nie ile wlezie;P?
pozdro
w delphi bedzie Label1.Caption := Format('%f', [wynik]); - tak sie sklada ze format daje domyslnie do dwoch miejsc po przecinku :)
(...)
http://komputery.kat....pl/temat51825/
http://www.coderscit...9164.html#19164
http://www.forum.web...opic.php?p=2536
(...)
Przecież zauważyłeś
Label1->Caption = wynik; :P
A co ma Delphi do Ce ??? :P
Użytkownik DJ_ProG edytował ten post 30 sierpień 2006, 17:59
#include <math.hpp> float wynik = 12.234523; Label1->Caption = FloatToStr(RoundTo(wynik,-2));
Użytkownik Cyrkiel edytował ten post 30 sierpień 2006, 19:32
A co ma Delphi do Ce ??? :P
w przypadku VCL - bardzo duzo :>
@Cyrkiel
Twój sposób nie zaokrągla do 2 liczb po przecinku tylko do 3 liczb ogólnie (jak liczba będzie 1.02250 to będzie do 2 liczb po przecinku, ale jak 10.252 to juz bedzie do jednego:/ a ja chce zeby zawsze bylo do 2 lizb )
@migajek - To Twoje mi nie działa...
i wcale nie jest automatycznie do 2 miejsc po przecinku :) przynajmniej u mnie...
probowalem wynik*=100; ceil(wynik); Label1->Caption = wynik/100;
i taka dziwna sprawa, ze wynik = 9.090908...
i mi to po tym kodzie zaokraglilo do 9.1 a przeciez powinno 9.09... nie mam pojecia czemu, bo jak mnoze i dziele prezz 1000, to zaokragla do 9.091...
a wjednym z tych linkow tu podanych jest funkcja sprintf
sprintf(text,"%.2f",Value);
to jak mialo by wygladac to wywolanie zeby zaokraglilo do 2 miejsc po przecinku?
pozdro i dzieki za dotychczasowe odpowiedzi.
Użytkownik Ka-lolek edytował ten post 30 sierpień 2006, 18:39
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
chce w jednym labelu wyswietlic wynik jakiegos dzialania , ktory znajduje sie w zmiennej wynik typu float.
czyli cos takiegO:
Label1->Caption = wynik;
jednak co zrobić żeby wyświetlało mi ten wynik z zaokragleniem do 2 miejsc po przecinku, a nie ile wlezie;P?
pozdro
Witam,
chce w jednym labelu wyswietlic wynik jakiegos dzialania , ktory znajduje sie w zmiennej wynik typu float.
czyli cos takiegO:
Label1->Caption = wynik;
jednak co zrobić żeby wyświetlało mi ten wynik z zaokragleniem do 2 miejsc po przecinku, a nie ile wlezie;P?
pozdro
w delphi bedzie Label1.Caption := Format('%f', [wynik]); - tak sie sklada ze format daje domyslnie do dwoch miejsc po przecinku :)
(...)
http://komputery.kat....pl/temat51825/
http://www.coderscit...9164.html#19164
http://www.forum.web...opic.php?p=2536
(...)
Przecież zauważyłeś
Label1->Caption = wynik; :P
A co ma Delphi do Ce ??? :P
Użytkownik DJ_ProG edytował ten post 30 sierpień 2006, 17:59
#include <math.hpp> float wynik = 12.234523; Label1->Caption = FloatToStr(RoundTo(wynik,-2));
Użytkownik Cyrkiel edytował ten post 30 sierpień 2006, 19:32
A co ma Delphi do Ce ??? :P
w przypadku VCL - bardzo duzo :>
@Cyrkiel
Twój sposób nie zaokrągla do 2 liczb po przecinku tylko do 3 liczb ogólnie (jak liczba będzie 1.02250 to będzie do 2 liczb po przecinku, ale jak 10.252 to juz bedzie do jednego:/ a ja chce zeby zawsze bylo do 2 lizb )
@migajek - To Twoje mi nie działa...
i wcale nie jest automatycznie do 2 miejsc po przecinku :) przynajmniej u mnie...
probowalem wynik*=100; ceil(wynik); Label1->Caption = wynik/100;
i taka dziwna sprawa, ze wynik = 9.090908...
i mi to po tym kodzie zaokraglilo do 9.1 a przeciez powinno 9.09... nie mam pojecia czemu, bo jak mnoze i dziele prezz 1000, to zaokragla do 9.091...
a wjednym z tych linkow tu podanych jest funkcja sprintf
sprintf(text,"%.2f",Value);
to jak mialo by wygladac to wywolanie zeby zaokraglilo do 2 miejsc po przecinku?
pozdro i dzieki za dotychczasowe odpowiedzi.
Użytkownik Ka-lolek edytował ten post 30 sierpień 2006, 18:39