Dănuţ este foarte pasionat de probleme de divizibilitate. El a descoperit că unele numere, ca de exemplu 2316, au proprietatea că se divid cu toate cifrele lor. El verifică această proprietate doar pentru cifrele nenule, deoarece ştie că împărţirea la 0 nu este definită. Andrei ar dori să afle câte numere cu proprietatea precizată se găsesc într-un interval dat dar i-ar lua prea mult timp să verifice singur, în cazul în care intervalul ar fi prea mare. Ajutaţi-l să utilizeze calculatorul pentru aflarea rezultatului.
Cerinţă
Scrieţi un program care, pentru un interval dat [a,b], determină câte numere din interval sunt divizibile cu toate cifrele nenule ale lor.
Date de intrare
Fişierul de intrare numere12.in conţine pe prima linie două numere naturale a şi b separate prin spaţiu, reprezentând extremităţile intervalului.
Date de ieşire
Fişierul de ieşire numere12.out va conţine numărul de numere din intervalul [a,b] care sunt divizibile cu toate cifrele nenule ale lor.
Restricţii
• 1 ≤ a ≤ b ≤ 1000000
Exemple
numere12.in numere12.out Explicaţii
8 20
7
În intervalul [8,20] sunt 7 numere care sunt divizibile cu toate cifrele nenule ale lor : 8 9 10 11 12 15 20.
47 80
8
În intervalul [47,80] sunt 8 numere care sunt divizibile cu toate cifrele nenule ale lor : 48 50 55 60 66 70 77 80.
numere12 de pe campion.ro va rog urgent! in c++ neaparat de clasa a 9-a
Răspunsuri la întrebare
Răspuns de
0
Răspuns:
#include <iostream>
using namespace std;
int main() {
int n, nr, uc, a, b, i, ok, x;
cout <<"a=";
cin >> a;
cout <<"b=";
cin >> b;
nr = 0;
for(i = a; i<= b; i++)
{
ok = 1; // pp ca nr se imparte la toate cifrele nenule
x = i;
while(x > 0 && ok == 1) // cat timp mai avem cifre de verificat in nr si nu am gasit o cifra care sa nu divida nr
{
uc = x % 10;
x = x / 10;
if (uc > 0 && i % uc > 0) // daca ultima cifra > 0 si nr nostru impartit la cifra da un rest > 0
{
ok = 0;
}
}
if(ok == 1)
{
cout<< i << " ";
nr++;
}
}
cout <<endl<< "nr = " << nr;
return 0;
}
Mghetes:
nu am facut cu fisiere, dar se poate ajusta citirea si scrierea in fisier
Alte întrebări interesante
Franceza,
8 ani în urmă
Engleza,
8 ani în urmă
Studii sociale,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă