-
X-Received: by 10.157.20.6 with SMTP id h6mr386334oth.18.1476298742389; Wed, 12 Oct
2016 11:59:02 -0700 (PDT)
X-Received: by 10.157.20.6 with SMTP id h6mr386334oth.18.1476298742389; Wed, 12 Oct
2016 11:59:02 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!
l13no484198itl.0!news-out.google.com!203ni1036itk.0!nntp.google.com!o19no485349
ito.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Wed, 12 Oct 2016 11:59:02 -0700 (PDT)
In-Reply-To: <ntlujd$7ku$1@node2.news.atman.pl>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=77.254.35.87;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 77.254.35.87
References: <1...@g...com>
<ntlp6e$2bl$1@node2.news.atman.pl>
<a...@g...com>
<ntlujd$7ku$1@node2.news.atman.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <3...@g...com>
Subject: Re: jak posortować czynniki
From: "M.M." <m...@g...com>
Injection-Date: Wed, 12 Oct 2016 18:59:02 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:209923
[ ukryj nagłówki ]On Wednesday, October 12, 2016 at 8:15:10 PM UTC+2, bartekltg wrote:
> On 12.10.2016 19:55, M.M. wrote:
> > On Wednesday, October 12, 2016 at 6:42:55 PM UTC+2, bartekltg wrote:
> >> Nie ma znaczenia.
> >> Mnożysz mantysy, które zawsze są w przedziale [0.5,1)
> >> cechy dodajesz stałoprzecinkowo.
> >> ["Ty w sensie komputer jak mnożysz zmienne float/double",
> >> nie trzeba nic ręcznie poprawiać].
> >
> > Fajny sposób.
>
> Po to był nawias kwadratwy.
> To nie jest sposób.
> Tak komputer po prostu mnoży liczby zmiennoprzecinkowe.
No tak, ale w C++ (chyba) nie ma instrukcji która wymnoży w ten sposób
więcej niż dwie liczby? Powiedzmy że mamy 10 dużych liczb i 10 małych.
Gdy zacznę mnożyć od małych, to pewnie najpierw osiągnę zero, więc
potem mnożenie przez duże liczby da wynik zero.
Gdy zacznę mnożyć od dużych, to dojdzie do przepełnienia typu,
pewnie będzie +inf, i mnożenie z małymi zakończy się błędem.
Dobrze byłoby posortować: raz duża, raz mała, ale to trudne jest.
Lepiej wyciągnąć po każdym mnożeniu wykładnik sumować w osobnej
zmiennej, a w bieżącym wyniku go zerować. Coś mniej/więcej tak:
wynik = 1;
E = 0;
tab[N];
for( i=0 ; i<N ; i++ ) {
wynik *= tab[i];
E += wykladnik( wynik );
wynik /= baza ^ wykladnik( wynik );
}
return wynik *= baza ^ E;
Pozdrawiam
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz