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 vizitat site-ul nostru dedicat Informatică. Sperăm că informațiile oferite v-au fost de ajutor. Dacă aveți întrebări sau nevoie de asistență suplimentară, nu ezitați să ne contactați. Ne vedem curând și nu uitați să ne adăugați la marcaje!