Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



Výpis čísla

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Výpis čísla

Autor: pmy

13:50:31 29.08.2011

Co oddelit vypocty a prezentaci/vypis cisel?
Ukladani a nacitani v internim formatu pres pickle probiha v realnem case.

--pm

Citovat příspěvek

 

Re: Výpis čísla

Autor: johnnash

14:15:25 29.07.2011

Vypis to do souboru, stejne nema smysl to cpat do konzole.

Citovat příspěvek

 

Re: Výpis čísla

Autor: Dolkar

23:25:28 25.07.2011

Bohužel ten převod je nevyhnutelný. Stejně by byla šílenost vypsat něco kolem 100000 znaků najednou vzhledem k tomu jak je stdout pomalý. Co takhle číslo převést a vypsat po menších kouscích, třeba 1000 znaků? Vypsat to celé sice bude trvat delší dobu, zato ale uvidíte výsledek v kratším čase.

Libovolnou část čísla bez převodu na string můžete získat takto:
(n / 10 ** (int(math.log10(n)) + 1 - p)) % 10 ** d
kde n je dané číslo, p je pozice z leva a d je délka (bráno z leva)
Takže, pokud chcete 2000 až 3000tou cifru z čísla n:
(n / 10 ** (int(math.log10(n)) + 1 - 3000)) % 10 ** 1000

Citovat příspěvek

 

Re: Výpis čísla

Autor: ��?�,(q�[

12:26:36 20.07.2011

Je to longint.

Zkoušel jsem vypočítat a vypsat 2^524288. Výpočet trval asi desetinu sekundy.
A výpis trval, právě kvůli tomuto převodu na string, deset sekund.

(Použil jsem k tomu následující kód:
a = 2**524288
print(a)
)
Bez druhého řádku skript skončí za řečenou desetinu. S ním za oněch deset.

Těm dlouhým deseti sekundám bych se rád vyhnul, tedy pokud je to možné.
Počítám i s čísly, která mají desetitisíce cifer, a ta vypsat...

Děkuji za pokus o pomoc

Citovat příspěvek

 

Re: Výpis čísla

Autor: radil

11:28:27 20.07.2011

To velké číslo je float nebo int?

Pokud je to int, doporučuji použít longint, tj. číslo ukončené znakem "L" či "l", které může nabývat libovolné velikosti s omezením pouze pamětí počítače. Např. a = 654654361514351465162163136513510351L, viz google ;-)

Pokud je to float tak rovnou googlit něco ;-)

Citovat příspěvek

 

Výpis čísla

Autor: ��?�,(q�[

13:44:02 17.07.2011

Hezký den,

potřebuji vypsat velké číslo, aniž bych ho musel převádět na string.
Převod čísla, které vypočítám za 0.1 sekundy, trvá asi 10 sekund.
Spokojím se i s výpisem do souboru.
Lze to?

Děkuji

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: