Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Stránky: 1
Dobrý den, prosím, jak mám v C napsat, že nějaká proměnná např.proměnná vysledek může nabývat hodnot od 0 do 1760. Zkusila jsem to udělat přes pole int vysledek[1761], ale to mi nijak neomezilo ty hodnoty. Spíš mi přišlo, že to může mít rozměr 1760 čísel (proměnná brala i hodnotu 9999, což je blbost), ale ne 1760 jako maximální hodnotu.
Offline

↑ Shalinka:
Omezení hodnot je dané použitým typem, zde tedy typem int. Dá se určitě dohledat na internetu, jaké přesně to omezení je.
Na co takové omezení potřebuješ? Pokud chceš omezit hodnoty vstupu, tak tam dáš podmínku, pokud ji vstup nesplní, tak třeba vypíšeš "neplatný vstup" a zeptáš se na vstup znovu.
Offline
↑ Pavel Brožek:
Právěže to není na vstup, na vstupu budu pracovat s jinými hodnotami, např. a=100 b=780 a ty se třeba budou násobit takže vysledek=a*b což je 78000, což nepatří do toho intervalu od 0 do 1760.
Napadlo mě udělat podmínku, ale musela bych jí tam psát asi 20x protože se tam pracuje s vícero omezeními a doufala jsem, že to jde nějak omezit hned na začátku, když si tu proměnnou deklarujeme.
Offline
Dopředu to nenastavíš. Budeš to muset pokaždé porovnávat.
Abys nemusela pořád opisovat konstrukci if-else, můžeš si na to napsat porovnávací funkci, která ti bude vracet nějaký chybový stav v případě překročení intervalu... Ale jestli se jedná o nějaký malý prográmek ne nějaký projekt, tak to už asi zbytečně komplikuju a jen bych to porovnával...
Offline

nebo staré dobré céčkové makro, přes #define, případně inline funkce (budeš mít rychlejší volání)
Offline
Stránky: 1