Программа на C ++ для поиска GCD

Содержание

Примеры различных способов вычисления НОД двух целых чисел (как для положительных, так и для отрицательных целых чисел) с использованием циклов и операторов принятия решений.

Чтобы понять этот пример, вы должны знать следующие темы программирования на C ++:

  • C ++ if, if… else и Nested if… else
  • C ++ для цикла
  • C ++ while и do … while Цикл

Наибольшее целое число, которое может идеально делить два целых числа, называется GCD или HCF этих двух чисел.

Пример 1. Найдите GCD с помощью цикла while

 #include using namespace std; int main() ( int n1, n2; cout <> n1>> n2; while(n1 != n2) ( if(n1> n2) n1 -= n2; else n2 -= n1; ) cout << "HCF = " << n1; return 0; )

Вывод

 Введите два числа: 78 52 HCF = 26

В приведенной выше программе меньшее число вычитается из большего числа, и это число сохраняется вместо большего числа.

Этот процесс продолжается до тех пор, пока не сравняются два числа, которые будут HCF.

Пример: 2. Найдите HCF / GCD с помощью цикла for

 #include using namespace std; int main() ( int n1, n2, hcf; cout <> n1>> n2; // Swapping variables n1 and n2 if n2 is greater than n1. if ( n2> n1) ( int temp = n2; n2 = n1; n1 = temp; ) for (int i = 1; i <= n2; ++i) ( if (n1 % i == 0 && n2 % i ==0) ( hcf = i; ) ) cout << "HCF = " << hcf; return 0; )

Логика этой программы проста.

В этой программе небольшое целое число от n1 до n2 хранится в n2. Затем цикл повторяется от i = 1до, i <= n2и на каждой итерации значение i увеличивается на 1.

Если оба числа делятся на i, то это число сохраняется в переменной hcf.

По окончании итерации HCF будет сохранен в переменной hcf.

Интересные статьи...