c++ napisz program sprawdzający podzielność jednej liczby przez inną bez konieczności obliczania reszty z dzielenia zapisz program w pliku pod nazwą podzielność_inaczej

Odpowiedź :

Odpowiedź:

#include <iostream>

using namespace std;

int main() {

 int a,b,x,y;

 cout<<"Podaj większą liczbę: ";

 cin>>a;

 cout<<"Podaj mniejszą liczbę: ";

 cin>>b;

x=a;

y=b;

while (a!=b){

 if (a>b)

   a=a-b;

 else

   b=b-a;}

if (a==y)

 cout<<"Liczba "<<x<<" jest podzielna przez liczbę "<<y;

else

 cout<<"Liczba "<<x<<" nie jest podzielna przez liczbę "<<y;

}

Wyjaśnienie:

Możemy to zrobić przez znalezienie NWD (Największego Wspólnego Dzielnika) tych liczb. Jeżeli NWD będzie równy mniejszej liczbie, to będzie znaczyć, że większa jest przez nią podzielna.

Do znalezienia NWD dwóch liczb możemy zastosować Algorytm Euklidesa (wersja z odejmowaniem).