Richard Biener oznámil vydání verze 16.1 (16.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 16. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.
Zulip Server z open source komunikační platformy Zulip (Wikipedie, GitHub) byl vydán ve verzi 12.0. Přehled novinek v příspěvku na blogu.
Před 30 lety, tj. v úterý 30. dubna 1996, byl spuštěn Seznam.cz.
Byly zpracovány a zveřejněny všechny videozáznamy, které stojí za zveřejnění, z konference FOSDEM 2026.
Od úterý 28. dubna musí nově uváděné notebooky v Evropské unii podporovat nabíjení přes USB-C. Jednotná nabíječka byla schválena Evropským parlamentem v říjnu 2022.
Byly publikovány informace o kritické zranitelnosti CVE-2026-31431 pojmenované Copy Fail v Linuxu, konkrétně v kryptografii (AF_ALG). Běžný uživatel může získat práva roota (lokální eskalaci práv). Na všech distribucích Linuxu vydaných od roku 2017. Pomocí 732bajtového skriptu. V upstreamu je již opraveno. Zranitelnost byla nalezena pomocí AI Xint Code.
Textový editor Zed dospěl do verze 1.0. Představení v příspěvku na blogu.
Vývojáři svobodného 3D softwaru Blender představili (𝕏, Mastodon, Bluesky) nejnovějšího firemního sponzora Blenderu. Je ním společnost Anthropic stojící za AI Claude a úroveň sponzoringu je Patron, tj. minimálně 240 tisíc eur ročně. Anthropic oznámil sponzorství v tiskové zprávě Claude for Creative Work.
VNC server wayvnc pro Wayland kompozitory postavené nad wlroots - ne GNOME, KDE nebo Weston - byl vydán ve verzi 0.10.0. Vydána byla také verze 1.0.0 související knihovny neatvnc.
Bylo oznámeno vydání Fedora Linuxu 44. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora IoT pro internet věcí, Fedora Cloud pro cloudové nasazení a Fedora CoreOS pro ty, kteří preferují neměnné systémy. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách
… více »assert(min_teplota < max_teplota);
while (true) {
teplota = getTeplota();
if (teplota <= min_teplota) {
setRele(true);
} else if (teplota >= max_teplota) {
setRele(false);
}
}
Četl jsi špatně otázku... Kdyby to bylo tak primitivní, tak to zvládnu sám....Vzhledem k řazení příspěvků v diskusi není úplně jisté, jestli reaguješ na to, co psal AraxoN, nebo na moji odpověď. Jirka
Mimochodem, myslím, že to, co radil AraxoN, s doplněním počátečního sepnutí, dává smysl, pokud by to běželo na nějakém jednoduchém řídícím čipu, který nedělá nic jiného. Problém by mohly být případné výjimečné situace.Četl jsi špatně otázku... Kdyby to bylo tak primitivní, tak to zvládnu sám....Vzhledem k řazení příspěvků v diskusi není úplně jisté, jestli reaguješ na to, co psal AraxoN, nebo na moji odpověď. Jirka
if aktualni_teplota <= minimalni_teplota || ( rele == 1 && aktualni_teplota < maximalni_teplota) {
rele = 1;
} else {
rele = 0;
}
if (kotel(teplota) < maxtep) zapnout(ohřev);
do {
if (kotel(teplota) > maxtep) vypnout(ohřev);
if (kotel(teplota) < mintep) zapnout(ohřev);
} while(topit());
vypnout(ohřev);
Přidat tam hlídání hladiny a tlaku je triviální.
#include <stdio.h>
#include <stdbool.h>
bool regulace_kotle(float aktualni_teplota, float minimalni_teplota, float maximalni_teplota) {
/*
Funkce pro regulaci kotle.
Argumenty:
aktualni_teplota: Aktuální teplota.
minimalni_teplota: Minimální požadovaná teplota.
maximalni_teplota: Maximální požadovaná teplota.
Vrací:
Stav relé kotle (true/false).
*/
if (aktualni_teplota < minimalni_teplota) {
// Teplota je nízká, zapneme relé.
return true;
} else if (aktualni_teplota >= maximalni_teplota) {
// Teplota je vysoká, vypneme relé.
return false;
} else {
// Teplota je v požadovaném rozmezí, relé zůstane beze změny.
return false; // Předpokládám, že chcete prozatím relé vypnout
}
}
int main() {
float aktualni_teplota = 22.5;
float minimalni_teplota = 20;
float maximalni_teplota = 25;
bool stav_rele = regulace_kotle(aktualni_teplota, minimalni_teplota, maximalni_teplota);
printf("Aktualni teplota: %.1f°C\n", aktualni_teplota);
printf("Minimalni teplota: %.1f°C\n", minimalni_teplota);
printf("Maximalni teplota: %.1f°C\n", maximalni_teplota);
printf("Stav rele: %s\n", stav_rele ? "zapnuto" : "vypnuto");
return 0;
}
if (aktualni_teplota >= maximalni_teplota) {
// Teplota je vysoká, vypneme relé.
return false;
} else {
// Teplota je v požadovaném rozmezí, relé zůstane beze změny.
return false; // Předpokládám, že chcete prozatím relé vypnout
}
jde nahradit za
return false;
#include <stdio.h>
int main() {
int minimalni_teplota = 2050;
int maximalni_teplota = 2400;
int aktualni_teplota;
int rele_stav = 0; // 0 pro vypnuto, 1 pro zapnuto
while (1) { // Nekonečná smyčka
printf("Rele stav: %d\n", rele_stav); // Výpis stavu relé
printf("Teplota v 0.01°C: ");
scanf("%d", &aktualni_teplota);
if (aktualni_teplota < minimalni_teplota) {
rele_stav = 1; // Sepnout relé
} else if (aktualni_teplota >= maximalni_teplota) {
rele_stav = 0; // Rozepnout relé
}
}
return 0;
}
Tento kód vypisuje stav relé a čeká na uživatelský vstup teploty v jednotkách setin stupňů Celsia. Pokud je teplota nižší než minimální teplota, relé se spustí; pokud je teplota rovna nebo vyšší než maximální teplota, relé se vypne.
if (aktualni_teplota < maximalni_teplota) rele_stav = 1; // Sepnout reléNic jednoduššího mě nenapadá. A) Začínat se zapnutým relé
int rele_stav = 1; není úplně čisté řešení. Po spuštění, při (aktualni_teplota >= maximalni_teplota) by relé bylo zapnuto jen na okamžik, v rámci jednoho cyklu - v případě pomalého taktu procesoru, rychlého relé a velkého spínaného výkonu by to teoreticky mohlo způsobit potíže. Šlo by to ošetřit, ale to by bylo zbytečně krkolomné.
B) Testovaní prvního běhu v nekonečném cyklu je nepraktické, zbytečně by se opakovalo a kód by byl složitější.
Tiskni
Sdílej: