Răspuns :
Răspuns:
if (numar-10)*(99-numar)>=0
Explicație:
daca numarul este mai mare sau egal ca zece si mai mic sau egal ca 99 rezultatul inmultirii este intoteauna mai mare sau egal cu 0. Daca nr este mai mic ca zece sau mai mare ca 99 rezultatul inmultirii din if va fi negativ.
Generalizare: (x - min) * (max - x) >= 0
PLS COROANA
► Metoda I :
if(n>=10){
if(n<=99) cout << "DA";
else cout << "NU";
}
else cout << "NU".
Explicatie : Folosim doua if-uri imbricate. Daca ambele conditi sunt evaluate la adevarat atunci numarul are doua cifre. Daca una este falsa atunci numarul nu are doua cifre
► Metoda II :
if((n>=10)*(n<=99)) cout << "DA";
else cout << "NU";
Explicatie : Simulam operatorul logic && folosind *. In C/C++ valoarea TRUE este echivalenta cu orice valoare nenula iar valoarea FALSE este echivalenta cu valoarea 0. Expresia (n>=10) se va evalua la 1 daca conditia e adevarata si 0 daca e falsa. Idem pentru (n<=99).
Observam ca tabelul operatiei * pe multimea binara :
[tex]0*0=0\\1*0=0\\0*1=0\\1*1=1[/tex]
Este echivalent cu tabelul operatiei && pe multimea valorilor logice.
Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Ne bucurăm dacă informațiile oferite v-au fost de folos. Pentru întrebări sau asistență suplimentară, nu ezitați să ne contactați. Revenirea dumneavoastră ne onorează – adăugați-ne la favorite pentru a fi mereu la curent!