Informatică, întrebare adresată de elenamuresan73, 9 ani în urmă

Se dă un număr natural n. Să se afle câte dintre numerele obţinute din n prin ştergerea unei cifre, sunt divizibile cu 3.


laurentiuc123: In pseudocod sau c++?
elenamuresan73: c++

Răspunsuri la întrebare

Răspuns de rossetta
8
Numaram cate cifre are n. Pentru fiecare cifra o sa formam un nou numar eliminand cifra respectiva. Testam daca numarul obtinut este divizibil cu 3.

Ex : n = 123456
Testam daca 12345, 12346, 12356, 12456, 13456 si 23456 sunt divizibile cu 3.

#include <iostream>

using namespace std;

int main() {
  int n, nr = 0;
  cin >> n;
  int cn = n;
  while(cn > 0) {
    nr++;
    cn = cn / 10;
  }
  int cnt = 0;
  for(int i = 0; i < nr; i++){
    cn = n;
    int poz = 0, nnou = 0, p = 1;
    while(cn > 0) {
      if(poz != i) {
        nnou = nnou +  (cn % 10 )* p;
        p = p * 10;
      }
      cn = cn / 10;
      poz++;
    }
    if(nnou % 3 == 0)
      cnt++;
  }
  cout << cnt;
  return 0;
}

Alte întrebări interesante