mam problem jak napisać program który znajdzie NWD dwóch (TRZECH) podanych liczb...w C++....siedze myśle jak to zrobić......
błagam pomocy...informatyka
Obliczanie NWD dwóch liczb polega na odejmowaniu od liczby większej tej mniejszej aż do czasu, gdy obie będą równe. 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
Implementacja w c++
#include
using namespace std;
int main()
{
int n,m;
cout > n >> m;
while (n!=m)
{
if (m>n)
{
m-=n;
} else
{
n-=m;
}
}
cout
ehhh... leczą mnie te znaki na tym forum... wrrr....
jeszcze raz implementacja, zamiast znaków nierówności użyję znaku nawiasu kwadratowego, ty użyj znaku nierówności:
#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;
}
hehe... no dobra, dziwacznie teraz ten kod wygląda, dobrze że nie jest skomplikowany;). Dodam jeszcze że się kompiluje pod Builderem, nie wiem czy pod Dev_cpp.