Canonical vydal Ubuntu 25.04 Plucky Puffin. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do ledna 2026.
Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.2.0. Přehled novinek v poznámkách k vydání.
Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.04. Přehled novinek i s náhledy a videi v oficiálním oznámení.
Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 152 (pdf) a Hello World 26 (pdf).
Zajímá vás Open Build Service (OBS) a vývoj linuxového jádra pro IBM Mainframe? V rámci Informatických večerů na FIT ČVUT v Praze proběhne v pondělí 28. dubna přednáška Linux on Z Development s podtitulem „From packaging in the openSUSE Build Service until Linux Kernel Development at IBM“. Přednáška proběhne v anglickém jazyce. Vstup je zdarma a bez předchozí registrace.
Vyšla nová verze XMPP (Jabber) klienta Dino. Mezi novinky patří vylepšený přenos souborů (XEP-0447: Stateless file sharing), přepracované dialogy a další. Vyzkoušet lze i na (linuxových) telefonech.
Vyšla nová verze XMPP (Jabber) klienta Gajim, která přidává podporu nového způsobu synchronizace informací o přečtení zpráv (XEP-0490: Message Displayed Synchronization jako nástupce XEP-0333: Displayed Markers), dále centrální stránku pro přehled všech aktivit (Activity feed) nebo vylepšení přepínání mezi více účty. Přehled dalších změn je k dispozici na oficiálních stránkách.
Mobilní operátoři společně chrání zákazníky proti podvodným hovorům v pevné i mobilní síti. Vodafone, T-Mobile a O2 vybudovali proti takzvanému spoofingu vzájemně propojené zabezpečení. Podvodníkům zabraňuje schovávat se za čísla jiných lidí nebo institucí, jako jsou banky a policie.
Na minihoneypotech Turrisu se objevil poměrně rozsáhlý útok na FTP servery. Je zvláštní tím, že probíhá z mnoha IP adres zároveň, je relativně pomalý a k pokusům o přihlášení používá objemný slovník. Útok probíhá z rozsahu IP adres 45.78.4.1-45.78.7.254. Rozsah je registrován na společnost IT7 Networks Inc., která poskytuje hostingové služby. Mezi zasláním každé kombinace jména hesla může oběhnout od několika, do nižších desítek sekund
… více »Po 5 měsících vývoje od vydání verze 6.7 byla vydána nová verze 6.8 svobodného open source redakčního systému WordPress. Kódové jméno Cecil bylo vybráno na počest amerického jazzového klavíristy a inovátora Cecila Taylora (YouTube).
#include <iostream> int main(int argc, char **argv) { unsigned long int c = 0; float t = 0; while (t < 3000) { if (c % 1000000 == 0) { std::cout << t << "\n"; } c++; t += 0.0001; } return 0; }Kompilace
g++ -ansi -Wall -pedantic test.cpp -o test
Cyklus by mel pridavat k float promenne t
konstantu 1e-4
dokud t
nedosahne hodnoty 3000
. To se vsak nestane, protoze hodnota t
se zastavi na cisle 2048
a dal nejde (i kdyz je inkrementovana, zustava konstantni). Tato limitni hodnota roste s krokem, napr. pro krok 1e-3
se inkrementace zastavi az na 32768
, pro 1e-2
to je 262144
.
What gives?
No a nebude to tým, že číslo 2048.0001 nie je možné reprezentovať dátovým typom float?
Pohraj sa na http://www.h-schmidt.net/FloatApplet/IEEE754.html
binárne 01000101000000000000000000000000 je float 2048.0
binárne 01000101000000000000000000000001 je float 2048.0002
a+b==a
pokud b<epsilon/2*a
je docela normální. Spíš mě překvapuje, že to neví někdo, kdo o IEEE754 evidentně ví.
float
- 7 platných číslic (jestli se nepletu je zaručeno 6) + exponent(desetinná čárka cca. ± 38míst)double
- 15 platných číslic + exponent(desetinná čárka cca. ± 300míst)long double
- 19 platných číslic + exponent (Pozor: v případě M$ je to jako double) g++ -o inforeal inforeal.cpp
) a spustíte dostanete základní informace:
#include <iostream> #include <float.h> int main(int argc, char **argv) { std::cout.precision(FLT_DIG); std::cout.flags(std::ios::scientific); std::cout << "float:" << std::endl; std::cout << " min: " << FLT_MIN << std::endl; std::cout << " max: " << FLT_MAX << std::endl; std::cout << " 10 exponent min: " << FLT_MIN_10_EXP << std::endl; std::cout << " 10 exponent max: " << FLT_MAX_10_EXP << std::endl; std::cout << " digits: " << FLT_DIG << std::endl; std::cout << " Epsilon: " << FLT_EPSILON << std::endl; std::cout.precision(DBL_DIG); std::cout << "double:" << std::endl; std::cout << " min: " << DBL_MIN << std::endl; std::cout << " max: " << DBL_MAX << std::endl; std::cout << " 10 exponent min: " << DBL_MIN_10_EXP << std::endl; std::cout << " 10 exponent max: " << DBL_MAX_10_EXP << std::endl; std::cout << " digits: " << DBL_DIG << std::endl; std::cout << " Epsilon: " << DBL_EPSILON << std::endl; std::cout.precision(LDBL_DIG); std::cout << "long double:" << std::endl; std::cout << " min: " << LDBL_MIN << std::endl; std::cout << " max: " << LDBL_MAX << std::endl; std::cout << " 10 exponent min: " << LDBL_MIN_10_EXP << std::endl; std::cout << " 10 exponent max: " << LDBL_MAX_10_EXP << std::endl; std::cout << " digits: " << LDBL_DIG << std::endl; std::cout << " Epsilon: " << LDBL_EPSILON << std::endl; #if defined FLT_ROUNDS std::cout << std::endl; std::cout << "Type of rounding floating numbers: "; switch(FLT_ROUNDS){ case -1 : std::cout << "indeterminable"; break; case 0 : std::cout << "towards zero"; break; case 1 : std::cout << "to the nearest number"; break; case 2 : std::cout << "towards positive infinity"; break; case 3 : std::cout << "towards negative infinity"; break; default : std::cout << "? - no standard definition"; break; } std::cout << std::endl; #endif return 0; }
Tiskni
Sdílej: