Byla vydána betaverze Fedora Linuxu 43 (ChangeSet), tj. poslední zastávka před vydáním finální verze, která je naplánována na úterý 21. října.
Multiplatformní emulátor terminálu Ghostty byl vydán ve verzi 1.2 (𝕏, Mastodon). Přehled novinek, vylepšení a nových efektů v poznámkách k vydání.
Byla vydána nová verze 4.5 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.
Byla vydána verze 3.0 (Mastodon) nástroje pro záznam a sdílení terminálových sezení asciinema (GitHub). S novou verzí formátu záznamu asciicast v3, podporou live streamingu a především kompletním přepisem z Pythonu do Rustu.
Canonical oznámil, že bude podporovat a distribuovat toolkit NVIDIA CUDA (Wikipedie) v Ubuntu.
Tržní hodnota americké společnosti Alphabet, která je majitelem internetového vyhledávače Google, dnes poprvé překonala hranici tří bilionů dolarů (62,1 bilionu Kč). Alphabet se připojil k malé skupině společností, které tuto hranici pokořily. Jsou mezi nimi zatím americké firmy Nvidia, Microsoft a Apple.
Spojené státy a Čína dosáhly dohody ohledně pokračování populární čínské platformy pro sdílení krátkých videí TikTok v USA. V příspěvku na síti Truth Social to dnes naznačil americký prezident Donald Trump. Dosažení rámcové dohody o TikToku vzápětí oznámil americký ministr financí Scott Bessent, který v Madridu jedná s čínskými představiteli o vzájemných obchodních vztazích mezi USA a Čínou. Bessentova slova později potvrdila také čínská strana.
MKVToolNix, tj. sada nástrojů pro práci s formátem (medialnym kontajnerom) Matroska, byl vydán ve verzi 95.0. Podpora přehrávání formátu Matroska míří do Firefoxu [Bug 1422891, Technický popis]. Přehrávání lze již testovat ve Firefoxu Nightly.
Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 211. sraz, který proběhne v pátek 19. září od 18:00 ve Studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Na srazu proběhne přednáška Jiřího Eischmanna o nové verzi prostředí GNOME 49. Nemáte-li možnost se zúčastnit osobně, přednáškový blok bude opět streamován živě na server VHSky.cz a následně i zpřístupněn záznam.
Microsoft se vyhnul pokutě od Evropské komise za zneužívání svého dominantního postavení na trhu v souvislosti s aplikací Teams. S komisí se dohodl na závazcích, které slíbil splnit. Unijní exekutivě se nelíbilo, že firma svazuje svůj nástroj pro chatování a videohovory Teams se sadou kancelářských programů Office. Microsoft nyní slíbil jasné oddělení aplikace od kancelářských nástrojů, jako jsou Word, Excel a Outlook. Na Microsoft si
… více »Řešení dotazu:
IF „hlad“ GOTO „lednice“
if
není funkce. A když už bys to rád dělal nějak divně složitě, proč to neuděláš pomocí operátorů & | ^
?
if
? Chceš efektivní algoritmus pro celočíselné mocniny? Všechno lze zařídit!
double mocnina(double x, int i) { double r = 1.0; if (!i) return 1.0; bool negative = false; if (i < 0) { negative = true; i = -i; } for ( ; ; ) { if (i & 1) r *= x; if (!(i >>= 1)) break; x *= x; } return negative ? 1.0/r : r; }Jen nevím, jak budeš vysvětlovat, jak to funguje...
double mocnina(double x,int y) { return x*(y>1?mocnina(x,--y):1); }
if
. Cílem bylo mít tam nějaké if
y ;)
double mocnina(double x,int y) { if (y>1) return x*mocnina(x,--y); else return 1; }Ale jinak je to blbost dobrá akorát na hraní.
Je tam chyba.
Má tam byť:
else
return x;
if (y>0)
Jirka
if
y ;)
template <int base, int pow> struct mocnina { enum { value = base * mocnina<base, pow - 1>::value }; }; template <int base> struct mocnina<base, 0> { enum { value = 1 }; };
error: template instantiation depth exceeds maximum of 900
jsem zkoušel vytvořitAno? A ako ďaleko si sa dostal?
int mocnina(int x,y) { if (y == 2) return x*x; if (y == 3) return x*x*x; if (y == 4) return x*x*x*x; if (y == 5) return x*x*x*x*x; if (y == 6) return x*x*x*x*x*x; if (y == 7) return x*x*x*x*x*x*x; if (y == 8) return x*x*x*x*x*x*x*x; if (y == 9) return x*x*x*x*x*x*x*x*x; if (y == 10) return x*x*x*x*x*x*x*x*x*x; if (y == 11) return x*x*x*x*x*x*x*x*x*x*x; if (y == 12) return x*x*x*x*x*x*x*x*x*x*x*x; if (y == 13) return x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 14) return x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 15) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 16) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 17) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 18) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 19) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; return x; }Je to najlepsia verzia lebo obsahuje najviac ifov. Pre profesionalnu verziu si na zaciatok mozes doplnit assert(y<20);
void setup() { int x=10; int y=10; int q=mocnina(x,y); Serial.println(q); } int mocnina(int x,int y) { if (y == 2) return x*x; if (y == 3) return x*x*x; if (y == 4) return x*x*x*x; if (y == 5) return x*x*x*x*x; if (y == 6) return x*x*x*x*x*x; if (y == 7) return x*x*x*x*x*x*x; if (y == 8) return x*x*x*x*x*x*x*x; if (y == 9) return x*x*x*x*x*x*x*x*x; if (y == 10) return x*x*x*x*x*x*x*x*x*x; if (y == 11) return x*x*x*x*x*x*x*x*x*x*x; if (y == 12) return x*x*x*x*x*x*x*x*x*x*x*x; if (y == 13) return x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 14) return x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 15) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 16) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 17) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 18) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; if (y == 19) return x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x*x; return x; } void loop() { }Binary sketch size: 4,084 bytes
void setup() { int x=10; int y=10; int q=mocnina(x,y); Serial.println(q); } int mocnina(int c,int y) { int x=c; if (y >= 2) x*=c; if (y >= 3) x*=c; if (y >= 4) x*=c; if (y >= 5) x*=c; if (y >= 6) x*=c; if (y >= 7) x*=c; if (y >= 8) x*=c; if (y >= 9) x*=c; if (y >= 10) x*=c; if (y >= 11) x*=c; if (y >= 12) x*=c; if (y >= 13) x*=c; if (y >= 14) x*=c; if (y >= 15) x*=c; if (y >= 16) x*=c; if (y >= 17) x*=c; if (y >= 18) x*=c; if (y >= 19) x*=c; return x; } void loop() { }Binary sketch size: 3,856 bytes
void setup() { int x=10; int y=10; int q=mocnina(x,y); Serial.println(q); } double mocnina(double cislo, int umocni_na) { int i, vysledok = 1; for (i = 1; i <= umocni_na; i++) vysledok *= cislo; return vysledok; } void loop() { }Binary sketch size: 4,068 bytes
void setup() { int x=10; int y=10; int q=mocnina(x,y); Serial.println(q); } int mocnina(int cislo, int umocni_na) { int i, vysledok = 1; for (i = 1; i <= umocni_na; i++) vysledok *= cislo; return vysledok; } void loop() { }Binary sketch size: 3,454 bytes
void setup() { int x=10; int y=10; int q=mocnina(x,y); Serial.println(q); } double mocnina(double x,int y) { return x*(y>1?mocnina(x,--y):1); } void loop() { }Binary sketch size: 3,950 bytes
void setup() { int x=10; int y=10; int q=mocnina(x,y); Serial.println(q); } int mocnina(int x,int y) { return x*(y>1?mocnina(x,--y):1); } void loop() { }Binary sketch size: 3,474 bytes
0000000000400578 <main>: 400578: 48 83 ec 08 sub $0x8,%rsp 40057c: 48 be 00 e4 0b 54 02 mov $0x2540be400,%rsi 400583: 00 00 00 400586: bf 98 06 40 00 mov $0x400698,%edi 40058b: 31 c0 xor %eax,%eax 40058d: e8 d6 fe ff ff callq 400468 <printf@plt> 400592: 5a pop %rdx 400593: 31 c0 xor %eax,%eax 400595: c3 retq0x2540be400 = 10^10
Tiskni
Sdílej: