Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > pl.comp.programming > #32579 > unrolled thread

Porównywanie liczb, double float

Started by"Pszemol" <Pszemol@PolBox.com>
First post2019-06-12 07:17 -0500
Last post2019-06-13 17:28 +0200
Articles 20 on this page of 120 — 24 participants

Back to article view | Back to pl.comp.programming


Contents

  Porównywanie liczb, double float "Pszemol" <Pszemol@PolBox.com> - 2019-06-12 07:17 -0500
    Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-12 12:29 +0000
      Re: Porównywanie liczb, double float queequeg@trust.no1 (Queequeg) - 2019-06-12 14:53 +0000
      Re: Porównywanie liczb, double float Cezary Grądys <czarekgr@wa.onet.pl> - 2019-06-12 16:54 +0200
        Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-16 21:40 +0200
          Re: Porównywanie liczb, double float bartekltg <bartekltg@gmail.com> - 2019-06-16 18:44 -0700
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:15 +0200
          Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-17 09:43 +0200
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:20 +0200
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:59 +0200
          Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-17 16:14 +0200
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:32 +0200
          Re: Porównywanie liczb, double float DMR <mezzogm@gmail.com> - 2019-07-11 22:27 -0700
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-07-13 09:21 +0200
              Re: Porównywanie liczb, double float DMR <mezzogm@gmail.com> - 2019-07-14 01:16 -0700
                Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-07-16 00:05 +0200
            Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-22 08:24 -0700
              Re: Porównywanie liczb, double float DMR <mezzogm@gmail.com> - 2019-07-24 10:19 -0700
                Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-07-24 21:13 +0200
                Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-24 13:39 -0700
                  Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-07-26 20:35 +0200
            Re: Porównywanie liczb, double float DMR <mezzogm@gmail.com> - 2020-01-12 10:17 -0800
      Re: Porównywanie liczb, double float "Pszemol" <Pszemol@PolBox.com> - 2019-06-13 08:37 -0500
        Re: Porównywanie liczb, double float bartekltg <bartekltg@gmail.com> - 2019-06-13 14:22 -0700
          Re: Porównywanie liczb, double float JDX <jdx@onet.pl> - 2019-06-14 06:35 +0200
          Re: Porównywanie liczb, double float Mateusz Viste <mateusz@wont.tell> - 2019-06-14 06:19 +0000
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-16 21:53 +0200
              Re: Porównywanie liczb, double float Mateusz Viste <mateusz@wont.tell> - 2019-06-17 07:02 +0000
                Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:18 +0200
                  Re: Porównywanie liczb, double float Mateusz Viste <mateusz@wont.tell> - 2019-06-19 07:03 +0000
                    Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 21:32 +0200
                      Re: Porównywanie liczb, double float Mateusz Viste <mateusz@wont.tell> - 2019-06-25 20:05 +0000
                        Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 22:17 +0200
                          Re: Porównywanie liczb, double float Mateusz Viste <mateusz@wont.tell> - 2019-06-25 20:45 +0000
                            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 22:56 +0200
          Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-16 21:48 +0200
          Re: Porównywanie liczb, double float Tomasz Kaczanowski <kaczus@poczta.onet.pl> - 2019-06-19 11:21 +0200
        Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-16 21:43 +0200
          Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-17 07:21 +0000
          Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-17 09:48 +0200
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:21 +0200
              Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-19 09:17 +0200
          Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-17 16:09 +0200
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:27 +0200
              Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-19 11:45 +0200
                Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-19 11:40 +0000
                  Re: Porównywanie liczb, double float KLoSS <nospam.klossik@alchemy.com.pl> - 2019-06-19 21:51 +0200
                    Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 21:53 +0200
                      Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-26 06:38 +0200
                  Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 21:51 +0200
                Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 21:48 +0200
                  Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-26 06:10 +0200
          Re: Porównywanie liczb, double float "Pszemol" <Pszemol@PolBox.com> - 2019-06-19 19:52 -0500
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 21:58 +0200
      Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-17 09:39 +0200
        Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-17 07:53 +0000
          Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-17 12:59 +0200
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:23 +0200
          Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-17 16:05 +0200
          Re: Porównywanie liczb, double float "Grzegorz Niemirowski" <grzegorz@grzegorz.net> - 2019-06-17 16:25 +0200
            Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-18 01:33 +0200
              Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-18 06:32 +0000
                Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-18 12:04 +0200
                  Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-18 12:30 +0000
                    Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-18 15:45 +0200
                      Re: Porównywanie liczb, double float queequeg@trust.no1 (Queequeg) - 2019-06-18 14:38 +0000
                        Re: Porównywanie liczb, double float Piotr Wyderski <peter.pan@neverland.mil> - 2019-06-19 09:04 +0200
                      Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-18 16:52 +0200
                      Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-18 15:20 +0000
                        Re: Porównywanie liczb, double float Roman Tyczka <noemail@because.no> - 2019-06-18 17:54 +0200
                          Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-22 08:03 -0700
                        Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 21:25 +0200
                          Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-26 06:21 +0200
                            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-07-02 22:56 +0200
                              Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-07-03 00:42 +0200
                                Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-22 12:56 -0700
                    Re: Porównywanie liczb, double float Marek <fake@fakeemail.com> - 2019-06-18 22:10 +0200
                    Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-22 01:16 -0700
                Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-18 12:11 +0200
                  Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:48 +0200
                Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-22 00:47 -0700
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:43 +0200
          Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-22 00:37 -0700
        Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:19 +0200
    Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-12 14:44 +0200
      Re: Porównywanie liczb, double float "Pszemol" <Pszemol@PolBox.com> - 2019-06-13 08:39 -0500
      Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-16 21:19 +0200
        Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-17 16:20 +0200
          Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:37 +0200
            Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-19 11:35 +0200
              Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 21:37 +0200
                Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-26 06:17 +0200
    Re: Porównywanie liczb, double float Zbych <abuse@onet.pl> - 2019-06-12 14:48 +0200
      Re: Porównywanie liczb, double float "Irek.N." <tajny@jakis.taki.jest> - 2019-06-12 14:56 +0200
    Re: Porównywanie liczb, double float bartekltg <bartekltg@gmail.com> - 2019-06-12 06:07 -0700
      Re: Porównywanie liczb, double float "Pszemol" <Pszemol@PolBox.com> - 2019-06-13 08:43 -0500
      Re: Porównywanie liczb, double float bartekltg <bartekltg@gmail.com> - 2019-06-13 14:25 -0700
        Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-16 21:50 +0200
    Re: Porównywanie liczb, double float JDX <jdx@onet.pl> - 2019-06-12 15:21 +0200
      Re: Porównywanie liczb, double float "Pszemol" <Pszemol@PolBox.com> - 2019-06-13 08:24 -0500
    Re: Porównywanie liczb, double float Szyk Cech <szykcech@spoko.pl> - 2019-06-12 16:52 +0200
      Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-12 17:27 +0200
        Re: Porównywanie liczb, double float stary grzyb <starygrzyb@onet.pl> - 2019-06-12 18:17 +0200
        Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-16 21:21 +0200
          Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-17 16:15 +0200
            Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-19 08:34 +0200
        Re: Porównywanie liczb, double float Szyk Cech <szykcech@spoko.pl> - 2019-06-16 22:10 +0200
        Re: Porównywanie liczb, double float Piotrne <piotrne@poczta.onet.pl> - 2019-06-20 14:16 +0200
          Re: Porównywanie liczb, double float Mateusz Viste <mateusz@nie.pamietam> - 2019-06-20 12:38 +0000
            Re: Porównywanie liczb, double float Piotrne <piotrne@poczta.onet.pl> - 2019-06-22 13:36 +0200
            Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-23 14:57 +0200
              Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 22:09 +0200
                Re: Porównywanie liczb, double float "J.F." <jfox_xnospamx@poczta.onet.pl> - 2019-06-26 06:11 +0200
          Re: Porównywanie liczb, double float Janusz <janusz_kk@o2.pl> - 2019-06-20 20:39 +0200
            Re: Porównywanie liczb, double float Piotrne <piotrne@poczta.onet.pl> - 2019-06-22 14:47 +0200
              Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 22:07 +0200
          Re: Porównywanie liczb, double float AK <nobody@nowhere.net> - 2019-06-25 22:03 +0200
      Re: Porównywanie liczb, double float "Pszemol" <Pszemol@PolBox.com> - 2019-06-13 08:35 -0500
        Re: Porównywanie liczb, double float fir <profesor.fir@gmail.com> - 2019-07-22 00:17 -0700
    Re: Porównywanie liczb, double float Dariusz Dorochowicz <_dadoro_@wp.com> - 2019-06-13 17:28 +0200

Page 2 of 6 — ← Prev page 1 [2] 3 4 5 6  Next page →


#32737

FromAK <nobody@nowhere.net>
Date2019-07-26 20:35 +0200
Message-ID<qhfh51$vuf$1@gioia.aioe.org>
In reply to#32735
On 2019-07-24 22:39, fir wrote:

> to swietnie bo na wykłocanie sie z matolkami nie mam czasu

No jakze to?
Przecie tu na grupie "od lat" gadasz glownie sam z soba ?

AK

[toc] | [prev] | [next] | [standalone]


#33708

FromDMR <mezzogm@gmail.com>
Date2020-01-12 10:17 -0800
Message-ID<ac723793-4866-4d78-9149-ba8bee9f55fa@googlegroups.com>
In reply to#32718
Sorunia za crossa, ale tu też o tym pisałem. :-)



> Przykładowo, muszę zrobić: 12345.6789 zł -> 12345 zł 68 gr
> 
> Wiadomo:
> 
> double suma, f;
> int zlote, grosze;
> 
>    ...
> 
>    suma += 0.005;
> 
>    zlote = (int)suma;
>    f = suma - zlote;
>    grosze = (int)(f * 100.0);
> 
> Problemy mogą pojawić w przypadku wartości praktycznie równych
> wartościom całkowitym.
> Gdyby na skutek jakichś zaokrągleń wartość f okazała się ujemna,
> to nie ma problemu - (int) i tak "dociągnie" ją do zera.
> 
> Gorzej, gdyby np. suma = 1234.9999999999999997, za to teoretycznie
> f = 0.9999999999999997 za sprawą zabłąkanego bitu na końcu przeskoczyła
> na f = 1.0000000000000001.
> Wtedy wyjdzie 1234 zł 100 gr...


Ale jeśli zrobię tak:

grosze = (int)(f * 99.99);

to problem zniknie raz na zawsze.
Rzecz jasna, wtedy sumy typu x.9951 zł przejdą na x zł 99 gr, co oczywiście formalnie jest błędem, ale - z drugiej strony - jeszcze poważniejszym błędem jest zaokrąglanie sum do pełnych groszy, przy jednoczesnym rozbijaniu tematu o pojedyncze miligrosze.

No, ale pytanie jest zasadnicze - czy na skutek zaokrągleń, możliwe jest zajście przypadku:

(Double - (int)Double) * 1Ex >= 1Ex

dla "rozsądnych" wartości x (biorąc po uwagę zakresy typów, powiedzmy: 0-8)?
Ktoś może potwierdzić/zaprzeczyć?

[toc] | [prev] | [next] | [standalone]


#32594

From"Pszemol" <Pszemol@PolBox.com>
Date2019-06-13 08:37 -0500
Message-ID<qdtjje$5ng$1@dont-email.me>
In reply to#32580
"Mateusz Viste" <mateusz@nie.pamietam> wrote in message 
news:5d00f035$0$15194$426a74cc@news.free.fr...
> On Wed, 12 Jun 2019 07:17:45 -0500, Pszemol wrote:
>> Pisząc w Visual Basic 6 gostek porównywał rezultat konwersji CDbl()
>> stringu od którego odjął stałą numeryczną 1.8 do lokalnej zmiennej
>> double.
>
> Prawdziwi programiści nie używają liczb zmiennoprzecinkowych.

Faktem jest, że gdy zmienne nie skaczą dynamicznie od e-15 do e+15 to
warto znaleźć zakres wariacji mierzonej zmiennej, oczekwianą dokładność
i zamiast na float operować na long integer * 10000 na przykład...

> Obowiązkowa lektura na wieczór:
> http://perso.ens-lyon.fr/jean-michel.muller/goldberg.pdf

Dzięki za linka, zapoznam się w wolnym czasie. 

[toc] | [prev] | [next] | [standalone]


#32598

Frombartekltg <bartekltg@gmail.com>
Date2019-06-13 14:22 -0700
Message-ID<5111c357-e83d-4204-a4db-cfbabc27be5e@googlegroups.com>
In reply to#32594
On Thursday, June 13, 2019 at 3:37:52 PM UTC+2, Pszemol wrote:
> "Mateusz Viste" <mateusz@nie.pamietam> wrote in message 
> news:5d00f035$0$15194$426a74cc@news.free.fr...
> > On Wed, 12 Jun 2019 07:17:45 -0500, Pszemol wrote:
> >> Pisząc w Visual Basic 6 gostek porównywał rezultat konwersji CDbl()
> >> stringu od którego odjął stałą numeryczną 1.8 do lokalnej zmiennej
> >> double.
> >
> > Prawdziwi programiści nie używają liczb zmiennoprzecinkowych.

Pieprzenie. No, czyba, że programowanie = frontend.

> Faktem jest, że gdy zmienne nie skaczą dynamicznie od e-15 do e+15 to
> warto znaleźć zakres wariacji mierzonej zmiennej, oczekwianą dokładność
> i zamiast na float operować na long integer * 10000 na przykład...

Co najwyżęj, jak obracasz walutą. Standard to chyba 1/10000 jednostki
(złotówki, dolara...).

BTW, long int to raz 32, raz 64 bity. A teoretycznie może mieć i inną wartość;-) 

pzdr
bartekltg

[toc] | [prev] | [next] | [standalone]


#32600

FromJDX <jdx@onet.pl>
Date2019-06-14 06:35 +0200
Message-ID<5d032432$0$500$65785112@news.neostrada.pl>
In reply to#32598
On 2019-06-13 23:22, bartekltg wrote:
[...]
> BTW, long int to raz 32, raz 64 bity. A teoretycznie może mieć i inną wartość;-) 
A czasami zwykły int to raz 16, a raz 32 bity. :-) W zależności od
ustawień kompilatora – vide MCU z rodziny H8/300H, H8S i pokrewne.

[toc] | [prev] | [next] | [standalone]


#32601

FromMateusz Viste <mateusz@wont.tell>
Date2019-06-14 06:19 +0000
Message-ID<5d033c64$0$20313$426a74cc@news.free.fr>
In reply to#32598
On Thu, 13 Jun 2019 14:22:06 -0700, bartekltg wrote:
> On Thursday, June 13, 2019 at 3:37:52 PM UTC+2, Pszemol wrote:
>> "Mateusz Viste" <mateusz@nie.pamietam> wrote in message
>> news:5d00f035$0$15194$426a74cc@news.free.fr...
>> > On Wed, 12 Jun 2019 07:17:45 -0500, Pszemol wrote:
>> >> Pisząc w Visual Basic 6 gostek porównywał rezultat konwersji CDbl()
>> >> stringu od którego odjął stałą numeryczną 1.8 do lokalnej zmiennej
>> >> double.
>> >
>> > Prawdziwi programiści nie używają liczb zmiennoprzecinkowych.
> 
> Pieprzenie. No, czyba, że programowanie = frontend.
> 
>> Faktem jest, że gdy zmienne nie skaczą dynamicznie od e-15 do e+15 to
>> warto znaleźć zakres wariacji mierzonej zmiennej, oczekwianą dokładność
>> i zamiast na float operować na long integer * 10000 na przykład...
> 
> Co najwyżęj, jak obracasz walutą. Standard to chyba 1/10000 jednostki
> (złotówki, dolara...).
> 
> BTW, long int to raz 32, raz 64 bity. A teoretycznie może mieć i inną
> wartość;-)

Prawdziwi programiści zakładają, że typ danych jest najwęższy możliwy: 
int=16, long=32, long long=64. A jeśli chcą czegoś konkretnego to znają 
stdint.h i potrafią korzystać z uint32_t i jemu podobnych.

Mateusz

[toc] | [prev] | [next] | [standalone]


#32611

FromAK <nobody@nowhere.net>
Date2019-06-16 21:53 +0200
Message-ID<qe66nj$18po$5@gioia.aioe.org>
In reply to#32601
On 2019-06-14 08:19, Mateusz Viste wrote:

> Prawdziwi programiści zakładają, że typ danych jest najwęższy możliwy:
> int=16, long=32, long long=64.

Niestety to duzy blad :(

AK

[toc] | [prev] | [next] | [standalone]


#32616

FromMateusz Viste <mateusz@wont.tell>
Date2019-06-17 07:02 +0000
Message-ID<5d073b08$0$14392$426a74cc@news.free.fr>
In reply to#32611
On Sun, 16 Jun 2019 21:53:24 +0200, AK wrote:
> On 2019-06-14 08:19, Mateusz Viste wrote:
>> Prawdziwi programiści zakładają, że typ danych jest najwęższy możliwy:
>> int=16, long=32, long long=64.
> 
> Niestety to duzy blad :(

Jakieś argumenty?

Mateusz

[toc] | [prev] | [next] | [standalone]


#32641

FromAK <nobody@nowhere.net>
Date2019-06-19 08:18 +0200
Message-ID<qeck34$1jvs$2@gioia.aioe.org>
In reply to#32616
On 2019-06-17 09:02, Mateusz Viste wrote:
> On Sun, 16 Jun 2019 21:53:24 +0200, AK wrote:
>> On 2019-06-14 08:19, Mateusz Viste wrote:
>>> Prawdziwi programiści zakładają, że typ danych jest najwęższy możliwy:
>>> int=16, long=32, long long=64.
>>
>> Niestety to duzy blad :(
> 
> Jakieś argumenty?

Pogłówkuj:)

No dobra...
Bo piszą np. potem takie z gruntu błędne konstrukcje.

int a = cus_tak;

if ( x & 0xFFDF )

AK

[toc] | [prev] | [next] | [standalone]


#32653

FromMateusz Viste <mateusz@wont.tell>
Date2019-06-19 07:03 +0000
Message-ID<5d09de30$0$21608$426a34cc@news.free.fr>
In reply to#32641
On Wed, 19 Jun 2019 08:18:11 +0200, AK wrote:
> On 2019-06-17 09:02, Mateusz Viste wrote:
>> On Sun, 16 Jun 2019 21:53:24 +0200, AK wrote:
>>> On 2019-06-14 08:19, Mateusz Viste wrote:
>>>> Prawdziwi programiści zakładają, że typ danych jest najwęższy
>>>> możliwy:
>>>> int=16, long=32, long long=64.
>>>
>>> Niestety to duzy blad :(
>> 
>> Jakieś argumenty?
> 
> Pogłówkuj:)
> 
> No dobra...
> Bo piszą np. potem takie z gruntu błędne konstrukcje.
> 
> int a = cus_tak;
> 
> if ( x & 0xFFDF )

I to jest argument z tym, by nigdy nie zakładać że typ zmiennej jest 
najwęższy możliwy? Naprawdę nie rozumiem, co próbujesz przekazać.

Miej litość nad głupszym kolegą i podkręć proszę jasność.

Mateusz

[toc] | [prev] | [next] | [standalone]


#32677

FromAK <nobody@nowhere.net>
Date2019-06-25 21:32 +0200
Message-ID<qetst7$861$1@gioia.aioe.org>
In reply to#32653
On 2019-06-19 09:03, Mateusz Viste wrote:
>> No dobra...
>> Bo piszą np. potem takie z gruntu błędne konstrukcje.
>>
>> int a = cus_tak;
>>
>> if ( x & 0xFFDF )
> 
> I to jest argument z tym, by nigdy nie zakładać że typ zmiennej jest
> najwęższy możliwy? Naprawdę nie rozumiem, co próbujesz przekazać.
> 
> Miej litość nad głupszym kolegą i podkręć proszę jasność.

To, ze przyjecie takiego zalozenia czyni ten kod (jak najbardziej
zgodny z tym zalozeniem) _zwyczajnie bledny_ !
Jesli nie wiesz dlaczego, to Ci zwyczajnie wspolczuję.

AK

[toc] | [prev] | [next] | [standalone]


#32684

FromMateusz Viste <mateusz@wont.tell>
Date2019-06-25 20:05 +0000
Message-ID<5d127e90$0$21614$426a74cc@news.free.fr>
In reply to#32677
On Tue, 25 Jun 2019 21:32:56 +0200, AK wrote:
> On 2019-06-19 09:03, Mateusz Viste wrote:
>>> No dobra...
>>> Bo piszą np. potem takie z gruntu błędne konstrukcje.
>>>
>>> int a = cus_tak;
>>>
>>> if ( x & 0xFFDF )
>> 
>> I to jest argument za tym, by nigdy nie zakładać że typ zmiennej jest
>> najwęższy możliwy? Naprawdę nie rozumiem, co próbujesz przekazać.
>> 
>> Miej litość nad głupszym kolegą i podkręć proszę jasność.
> 
> To, ze przyjecie takiego zalozenia czyni ten kod (jak najbardziej zgodny
> z tym zalozeniem) _zwyczajnie bledny_ !
> Jesli nie wiesz dlaczego, to Ci zwyczajnie wspolczuję.

To potwierdza moje przypuszczenia: kolega ma po prostu trudności z 
rozumieniem słowa pisanego, lub z ogólnie pojętą logiką. Nie będę zatem 
ciągnął tego wątku, bo mija się to z celem.

Tymczasem mogę tylko życzyć szybkiego powrotu do zdrowia.

Mateusz

[toc] | [prev] | [next] | [standalone]


#32687

FromAK <nobody@nowhere.net>
Date2019-06-25 22:17 +0200
Message-ID<qetvgc$jts$1@gioia.aioe.org>
In reply to#32684
On 2019-06-25 22:05, Mateusz Viste wrote:
> On Tue, 25 Jun 2019 21:32:56 +0200, AK wrote:
>> On 2019-06-19 09:03, Mateusz Viste wrote:
>>>> No dobra...
>>>> Bo piszą np. potem takie z gruntu błędne konstrukcje.
>>>>
>>>> int a = cus_tak;
>>>>
>>>> if ( x & 0xFFDF )
>>>
>>> I to jest argument za tym, by nigdy nie zakładać że typ zmiennej jest
>>> najwęższy możliwy? Naprawdę nie rozumiem, co próbujesz przekazać.
>>>
>>> Miej litość nad głupszym kolegą i podkręć proszę jasność.
>>
>> To, ze przyjecie takiego zalozenia czyni ten kod (jak najbardziej zgodny
>> z tym zalozeniem) _zwyczajnie bledny_ !
>> Jesli nie wiesz dlaczego, to Ci zwyczajnie wspolczuję.
> 
> To potwierdza moje przypuszczenia: kolega ma po prostu trudności z
> rozumieniem słowa pisanego, lub z ogólnie pojętą logiką. Nie będę zatem
> ciągnął tego wątku, bo mija się to z celem.

"Czyli zwuczajnie nie wiem "osochodzi"/dlaczego w/w kod jest bledny."

> Tymczasem mogę tylko życzyć szybkiego powrotu do zdrowia.

Lekarzem tez jestes rownie "dobrym" jak programista :)?

AK

[toc] | [prev] | [next] | [standalone]


#32688

FromMateusz Viste <mateusz@wont.tell>
Date2019-06-25 20:45 +0000
Message-ID<5d1287da$0$15513$426a74cc@news.free.fr>
In reply to#32687
On Tue, 25 Jun 2019 22:17:17 +0200, AK wrote:
> "Czyli zwuczajnie nie wiem "osochodzi"/dlaczego w/w kod jest bledny."

Miałeś wyjaśnić dlaczego zakładanie że sizeof(int) == 2 jest błędem. Ty 
natomiast podajesz kod, który jest błędny właśnie dlatego, że programista 
tak nie postąpił. Słowem - strzeliłeś samobója, a teraz pajacujesz.

> Lekarzem tez jestes rownie "dobrym" jak programista :)?

Nie trzeba być lekarzem aby dostrzec oczywistą patologię. Co innego aby 
ją nazwać i wyleczyć - ale ja nie mam takich ambicji.

Mateusz

[toc] | [prev] | [next] | [standalone]


#32689

FromAK <nobody@nowhere.net>
Date2019-06-25 22:56 +0200
Message-ID<qeu1qq$u5c$1@gioia.aioe.org>
In reply to#32688
On 2019-06-25 22:45, Mateusz Viste wrote:
> On Tue, 25 Jun 2019 22:17:17 +0200, AK wrote:
>> "Czyli zwuczajnie nie wiem "osochodzi"/dlaczego w/w kod jest bledny."
> 
> Miałeś wyjaśnić dlaczego zakładanie że sizeof(int) == 2 jest błędem. Ty
> natomiast podajesz kod, który jest błędny właśnie dlatego, że programista
> tak nie postąpił.

Otóż postąpił tu: if ( x & 0xFFDF )
Wlasnie tu przyjal, ze sizeof(int) == 2
No i opierajac sie na tym "przyjeciu" wyprodukowal klasyczny bledny kod.

> Nie trzeba być lekarzem aby dostrzec oczywistą patologię. Co innego aby
> ją nazwać i wyleczyć - ale ja nie mam takich ambicji.

Najpierw ulecz swoja "logike" i "wiedze" "programisto"

AK

[toc] | [prev] | [next] | [standalone]


#32609

FromAK <nobody@nowhere.net>
Date2019-06-16 21:48 +0200
Message-ID<qe66f8$18po$3@gioia.aioe.org>
In reply to#32598
On 2019-06-13 23:22, bartekltg wrote:

>>> Prawdziwi programiści nie używają liczb zmiennoprzecinkowych.
> 
> Pieprzenie. No, czyba, że programowanie = frontend.

100% zgody :) Uzyte slowo tez wlasciwe/adekwatne ;)

AK

[toc] | [prev] | [next] | [standalone]


#32657

FromTomasz Kaczanowski <kaczus@poczta.onet.pl>
Date2019-06-19 11:21 +0200
Message-ID<qecuql$5n9$1@node1.news.atman.pl>
In reply to#32598
W dniu 2019-06-13 o 23:22, bartekltg pisze:
> On Thursday, June 13, 2019 at 3:37:52 PM UTC+2, Pszemol wrote:
>> "Mateusz Viste" <mateusz@nie.pamietam> wrote in message
>> news:5d00f035$0$15194$426a74cc@news.free.fr...
>>> On Wed, 12 Jun 2019 07:17:45 -0500, Pszemol wrote:
>>>> Pisząc w Visual Basic 6 gostek porównywał rezultat konwersji CDbl()
>>>> stringu od którego odjął stałą numeryczną 1.8 do lokalnej zmiennej
>>>> double.
>>>
>>> Prawdziwi programiści nie używają liczb zmiennoprzecinkowych.
> 
> Pieprzenie. No, czyba, że programowanie = frontend.

nie da się, w webówce np część języków wszystkie liczby to 
zmiennoprzecinkowe

-- 
http://kaczus.ppa.pl

[toc] | [prev] | [next] | [standalone]


#32608

FromAK <nobody@nowhere.net>
Date2019-06-16 21:43 +0200
Message-ID<qe665k$18po$2@gioia.aioe.org>
In reply to#32594
On 2019-06-13 15:37, Pszemol wrote:
> "Mateusz Viste" <mateusz@nie.pamietam> wrote in message 
> news:5d00f035$0$15194$426a74cc@news.free.fr...
>> On Wed, 12 Jun 2019 07:17:45 -0500, Pszemol wrote:
>>> Pisząc w Visual Basic 6 gostek porównywał rezultat konwersji CDbl()
>>> stringu od którego odjął stałą numeryczną 1.8 do lokalnej zmiennej
>>> double.
>>
>> Prawdziwi programiści nie używają liczb zmiennoprzecinkowych.
> 
> Faktem jest, że gdy zmienne nie skaczą dynamicznie od e-15 do e+15 to
> warto znaleźć zakres wariacji mierzonej zmiennej, oczekwianą dokładność
> i zamiast na float operować na long integer * 10000 na przykład...

1. ile masz takich przypadkow w zyciu (owszem, fraktale).
2. przy dzisiejszych koprocesorach ? Na pewno warto ?
/Kiedys zdecydowanie tak, wiec absolutnie podejscia nie potępiam/.

AK

[toc] | [prev] | [next] | [standalone]


#32617

FromMateusz Viste <mateusz@nie.pamietam>
Date2019-06-17 07:21 +0000
Message-ID<5d073f61$0$6467$426a74cc@news.free.fr>
In reply to#32608
On Sun, 16 Jun 2019 21:43:50 +0200, AK wrote:
> On 2019-06-13 15:37, Pszemol wrote:
>> "Mateusz Viste" <mateusz@nie.pamietam> wrote in message
>> news:5d00f035$0$15194$426a74cc@news.free.fr...
>>> On Wed, 12 Jun 2019 07:17:45 -0500, Pszemol wrote:
>>>> Pisząc w Visual Basic 6 gostek porównywał rezultat konwersji CDbl()
>>>> stringu od którego odjął stałą numeryczną 1.8 do lokalnej zmiennej
>>>> double.
>>>
>>> Prawdziwi programiści nie używają liczb zmiennoprzecinkowych.
>> 
>> Faktem jest, że gdy zmienne nie skaczą dynamicznie od e-15 do e+15 to
>> warto znaleźć zakres wariacji mierzonej zmiennej, oczekwianą dokładność
>> i zamiast na float operować na long integer * 10000 na przykład...
> 
> 1. ile masz takich przypadkow w zyciu (owszem, fraktale).
> 2. przy dzisiejszych koprocesorach ? Na pewno warto ?
> /Kiedys zdecydowanie tak, wiec absolutnie podejscia nie potępiam/.

Koprocesory nie mają tu nic do rzeczy - na 386SX też dało się korzystać z 
float, mimo braku FPU. Oczywiście kosztem wydajności, ale nie o tym 
przecież mówimy.

Float/Double ze swojej natury nie zapewnia dokładności i dlatego to je 
skreśla w większości zastosowań w których ludzie intuicyjnie z nich 
korzystają (głównie: liczenie pieniędzy). Fakt - są sytuacje kiedy float 
*może* być dobrym rozwiązaniem: fraktale, przetwarzanie grafiki lub 
dźwięku i generalnie wszystko, co nie wymaga ścisłego wyniku. Ale to - 
przynajmniej z mojego punktu widzenia - specjalistyczne wyjątki.

Mateusz

[toc] | [prev] | [next] | [standalone]


#32620

FromPiotr Wyderski <peter.pan@neverland.mil>
Date2019-06-17 09:48 +0200
Message-ID<qe7gio$t3h$2@gioia.aioe.org>
In reply to#32608
AK wrote:

> 1. ile masz takich przypadkow w zyciu (owszem, fraktale).

Z okolic "numerków", to filtry Hogenauera chyba tylko. Tam przepełnienia 
stałoprzecinkowe i ich wzajemna kompensacja
są podstawą całej sztuczki.

	Pozdrawiam, Piotr

[toc] | [prev] | [next] | [standalone]


Page 2 of 6 — ← Prev page 1 [2] 3 4 5 6  Next page →

Back to top | Article view | pl.comp.programming


csiph-web