Informatică, întrebare adresată de satanaluca, 8 ani în urmă

Afisati cate cifre pare are un numar citit de la tastatura codeblocks c++

Răspunsuri la întrebare

Răspuns de cosmaandra2000
2

Programul este in poza

Anexe:

cosmaandra2000: iti poti lua un numar exemplu sa vezi ca merge :) Programul verifica daca e numar par, si numara atunci cand este ultima cifra para, iar apoi elimina acea cifra din numar. Si face chestia asta in continuare cu numarul ramas pana devine 0
Răspuns de ModFriendly
4

programul e mai jos. daca il scriu aici   imi dispar  cuvinte

#include<iostream>

using namespace std;

int main()

{   int n, nr, uc; /* eclaram variabilele */

   cin>>n;  /* citim numarul de la tastatura */

   nr=0; /* il initializam pe nr cu 0, pentru ca acesta este un contr care va creste*/

   while(n!=0) /* se interpreteaza ca " cat timp n mai are cifre*/

     { uc=n%10; /* uc vine de la ultima cifra a numarului n*/

        if(uc%2==0) /* verificam caca cifra este para*/

            { nr=nr+1;} /* in caz afirmativ, nr creste cu 1 */

       n=n/10; /* se interpreteaza ca si ca  si cand am elimina ultima cifra a lui n, daca n este 56,

                dupa operatia aceea  devine 5*/

     }

  cout<<nr; /* se afiseaza numarul de cifre pare ale numarului n*/

return 0;

}

l-am scris, totusi

Anexe:

CinevaFaraNume: Poti rescrie partea cu uc%2==0 cu (uc&1) == 0. Aproape la fel dar a 2-a varianta se traduce la mai putine instructiuni assembly.
ModFriendly: Nu am intalnit notatia. Fac informatica dpar de un an..
CinevaFaraNume: E and pe biti
n % 2^k are acelasi rezultat cu n&(2^k - 1)
CinevaFaraNume: E doar o exploatare a sistemului binar
ModFriendly: Ok, multumesc
CinevaFaraNume: Ok... din cate vad complilatorul le traduce pe ambele la varianta cu and pe biti
Alte întrebări interesante