Zemřel Rob Grant, spolutvůrce kultovního sci-fi seriálu Červený trpaslík.
Apple oznámil, že iPhone a iPad jako první a jediná zařízení pro koncové uživatele splňují požadavky členských států NATO na zabezpečení informací. Díky tomu je možné je používat pro práci s utajovanými informacemi až do stupně „NATO Restricted“, a to bez nutnosti instalovat speciální software nebo měnit nastavení. Žádné jiné běžně dostupné mobilní zařízení tak vysokou úroveň státní certifikace dosud nezískalo.
Americký provozovatel streamovací platformy Netflix odmítl zvýšit nabídku na převzetí filmových studií a streamovací divize konglomerátu Warner Bros. Discovery (WBD). Netflix to ve čtvrtek oznámil v tiskové zprávě. Jeho krok po několikaměsíčním boji o převzetí otevírá dveře k akvizici WBD mediální skupině Paramount Skydance, a to zhruba za 111 miliard dolarů (2,28 bilionu Kč).
Americká společnosti Apple přesune část výroby svého malého stolního počítače Mac mini z Asie do Spojených států. Výroba v závodě v Houstonu by měla začít ještě v letošním roce, uvedla firma na svém webu. Apple také plánuje rozšířit svůj závod v Houstonu o nové školicí centrum pro pokročilou výrobu. V Houstonu by měly vzniknout tisíce nových pracovních míst.
Vědci Biotechnologické společnosti Cortical Labs vytvořili biopočítač nazvaný CL1, který využívá živé lidské mozkové buňky vypěstované z kmenových buněk na čipu. Po úspěchu se hrou PONG se ho nyní snaží naučit hrát DOOM. Neurony přijímají signály podle toho, co se ve hře děje, a jejich reakce jsou převáděny na akce jako pohyb nebo střelba. V tuto chvíli systém hraje velmi špatně, ale dokáže reagovat, trochu se učit a v reálném čase se hrou
… více »Pro testování byl vydán 4. snapshot Ubuntu 26.04 LTS (Resolute Raccoon).
Ben Sturmfels oznámil vydání MediaGoblinu 0.15.0. Přehled novinek v poznámkách k vydání. MediaGoblin (Wikipedie) je svobodná multimediální publikační platforma a decentralizovaná alternativa ke službám jako Flickr, YouTube, SoundCloud atd. Ukázka například na LibrePlanet.
TerminalPhone (png) je skript v Bashi pro push-to-talk hlasovou a textovou komunikaci přes Tor využívající .onion adresy.
Před dvěma lety zavedli operátoři ochranu proti podvrženým hovorům, kdy volající falšuje čísla anebo se vydává za někoho jiného. Nyní v roce 2026 blokují operátoři díky nasazeným technologiím v průměru 3 miliony pokusů o podvodný hovor měsíčně (tzn., že k propojení na zákazníka vůbec nedojde). Ochrana před tzv. spoofingem je pro zákazníky a zákaznice všech tří operátorů zdarma, ať už jde o mobilní čísla nebo pevné linky.
Společnost Meta (Facebook) předává React, React Native a související projekty jako JSX nadaci React Foundation patřící pod Linux Foundation. Zakládajícími členy React Foundation jsou Amazon, Callstack, Expo, Huawei, Meta, Microsoft, Software Mansion a Vercel.
Diskuse byla administrátory uzamčena.
))
Generují náhodné číslo pro něž ověří je-lis jistou pravděpodobností
prvočíslo, pokud není generují znovu.
((prvočíslo * prvočíslo) + 1)věřím, že by se to dalo ještě vylopšit, ačkoliv už nevím jak
Wikipedie se u Eratosthenova síta zmiňuje o urychlování pomocí kruhové faktorizace, tak to můžeš zkusit 
Tvůj program je ± Eratosthenovo síto, to co je na wikipedii pod heslem wheel factorization je ale jedna z metod rychlých odhadů prvočíselnosti. (podobné používají třeba kryptografické programy při generování klíčů - teprve pokuď projde číslo některým z těchto testů, zkouší se dál, jestli je to skutečně prvočíslo)
#!/usr/bin/env ruby
nRozsah = 10000
puts (2..nRozsah).inject((2..nRozsah).to_a) {|res, i| res.select{|n|n==i||n%i!=0} }
#include <stdio.h>
#include <math.h>
#include "error.h"
#define N 100000000LU
#define UI \
(unsigned int)
#define SIZE(num) \
(num / (sizeof(long) * 8) + 2)
#define BITS \
(sizeof(long) * 8)
#define BITPOS(index) \
((index % BITS) + 1)
#define ArrayPos(index) \
(UI index/BITS+1)
#define OutArrayError(pole, index) \
Error("Index %ld mimo rozsah 0..%ld", (long) index, (long) pole[0])
#define OutArray(pole, index) \
(index < 0 || index > pole[0]) ? OutArrayError(pole, index),0 :
#define BitArray(jmeno_pole, velikost) \
unsigned long jmeno_pole[SIZE(velikost)] = {0}; \
jmeno_pole[0] = velikost
#ifndef USE_INLINE
#define GetBitIn(jmeno_pole, index) \
(jmeno_pole[ArrayPos(index)] & (1LU << BITPOS(index)) ? 1 : 0)
#define GetBit(jmeno_pole, index) \
OutArray(jmeno_pole, index) GetBitIn(jmeno_pole, index)
#define SetBit(pole, index, vyraz) \
if(!(index >= 0U && index <= pole[0]))\
OutArrayError(pole, index);\
if(vyraz != 0) \
pole[ArrayPos(index)] |= 1LU << BITPOS(index); \
else \
pole[ArrayPos(index)] ^= GetBit(pole, index) << BITPOS(index)
#endif
#ifdef USE_INLINE
inline int GetBit(unsigned long pole[], long index)
{
if(index < 1 || index > pole[0])
Error("Index %ld mimo rozsah 0..%ld", (long) index, (long) pole[0]);
return pole[ArrayPos(index)] & ((1LU << BITPOS(index)) ? 1 : 0);
}
inline void SetBit(unsigned long pole[], long index, int vyraz)
{
if(index < 0 || index > pole[0])
Error("Index %ld mimo rozsah 0..%ld", (long) index, (long) pole[0]);
if(vyraz != 0)
pole[ArrayPos(index)] |= 1LU << BITPOS(index);
else
pole[ArrayPos(index)] ^= GetBit(pole, index) << BITPOS(index);
}
#endif
int main()
{
BitArray(eSito, N);
SetBit(eSito, 0, 1);
SetBit(eSito, 1, 0);
for(unsigned int i = 2; i < N; i++)
{
SetBit(eSito, i, 0);
}
unsigned long sqrt_n = sqrt(N);
for(unsigned int i = 2; i < sqrt_n; i++)
{
if(GetBit(eSito, i) == 0)
{
for(unsigned int j = i * i; j < N; j += i)
{
SetBit(eSito, j, 1);
}
}
}
int count = 0;
int prvocisla[10] = {0};
for(unsigned int i = N - 1; i > 1; i--)
{
if(GetBit(eSito, i) == 0)
{
prvocisla[count] = i;
count += 1;
if(count == 10)
break;
}
}
for(int i = 0; i < 10; i++)
printf("%d\n", prvocisla[9-i]);
return 0;
}
Funkcni by to byt melo, nejrychlejsi je to pri pouziti maker, inlive funkce jsou tam pro porovnani (bylo v zadani) a je to cca o 1s pomalejsi. Jeste dodam, ze se vypisuje jen poslednich 10prvocisel, vypisovat vsechno by bylo pochopitelne znacne pomalejsi, kuli io operacim.
Tiskni
Sdílej: