| C++ | PHP |Forum |
| AKTUALNOŚCI | ARTYKUŁY | FORUM | PLIKI | PORADY |
Koderzy.pl » C++ » Artykuły » Algorytmy » Obliczanie NWD
Twoje konto

auto ukryj
Losowe porady
Buttony
koderzy.pl
xhtml
css


21 kwietnia 2005 22:24 Obliczanie NWD Obliczanie NWDPaweł Gniadkowski [Kardon]
Obliczanie NWD dwóch liczb polega na odejmowaniu od liczby większej tej mniejszej aż do czasu, gdy obie będą równe.

Zapewne powyższa formułka jest dla Ciebie kompletnie niezrozumiała (dla mnie za pierwszym razem też była). Rozpatrzmy przykład: Szukamy NWD liczb: 26 i 136 Odejmujemy od większej mniejszą: 136 - 26 = 110 >>> mamy liczby: 26 i 110 Odejmujemy od większej mniejszą: 110 - 26 = 84 >>> mamy liczby: 26 i 84 Odejmujemy od większej mniejszą: 84 - 26 = 58 >>> mamy liczby: 26 i 58 Odejmujemy od większej mniejszą: 58 - 26 = 32 >>> mamy liczby: 26 i 32 Odejmujemy od większej mniejszą: 32 - 26 = 6 >>> mamy liczby: 26 i 6 Odejmujemy od większej mniejszą: 26 - 6 = 20 >>> mamy liczby: 20 i 6 Odejmujemy od większej mniejszą: 20 - 6 = 14 >>> mamy liczby: 14 i 6 Odejmujemy od większej mniejszą: 14 - 6 = 8 >>> mamy liczby: 8 i 6 Odejmujemy od większej mniejszą: 8 - 6 = 2 >>> mamy liczby: 2 i 6 Odejmujemy od większej mniejszą: 6 - 2 = 4 >>> mamy liczby: 2 i 4 Odejmujemy od większej mniejszą: 4 - 2 = 2 >>> mamy liczby: 2 i 2 Kończymy odejmowanie, bo obie liczby są równe. Szukanym NWD jest liczba 2
Myslę, że algorym jest zrozumiały i nie trzeba niczego tlumaczyć. Implementacja w C++:#include <iostream> using namespace std; int main() { int n,m; cout << "Podaj liczby do NWD:\n"; cin >> n >> m; while (n!=m) { if (m>n) { m-=n; } else { n-=m; } } cout << n; }

© 2010 - Grupa BBN - wszelkie prawa zastrzeżone.
.