👤

Care dintre următoarele expresii C/C++ are valoarea 1 dacă şi numai dacă numărul natural nenul memorat în variabila x, de tip int, este divizibil cu 100?

Varianta 1
x%10+x/10%10==0

Varianta 2
x/100==0

Varianta 3
x%10+x/10==0

Varianta 4
x%10+x%10/10==0

Mizez intre v1 si v4, insa nu stiu de ce una ar fi buna si alta nu...


Răspuns :

Răspuns:

varianta 1

Explicație:

De fiecare data cand vrei sa afli ultima cifra, folosesti operatia x%10.

De aceea, si ultima cifra trebuie sa fie 0, adica x%10

si penultima trebuie sa fie 0, adica (x/10)%10.

Răspuns:

v4

Explicație:

O sa iti dau un contraexemplu si ai sa vezi e ce nu poate fi varianata 4

1340 nu este divizibil cu 100

v1: x%10+x/10%10= 1340%10+1340/10%10=0+134%10=0+4=4

v4:x%10+x%10/10=1340%10+1340%10/10=0+0/10=0+0=0 desi 1340 nu este divizibil cu 100

prin x%10 extragem cifra unitatilor

iar prin x/10%10 eliminam cifra unitatilor si extragem cifra zecilor

conditia ca un numar sa fie divizibil cu 100 este ca el sa aiba atat cifra zicilor cat si cea a sutelor egala cu 0