Математика - важная часть программирования и информатики. Это ядро любого хорошего алгоритма, обеспечивающее аналитические навыки, необходимые для программирования.
Математические алгоритмы также являются очень важной темой для собеседований по программированию. В этой статье вы узнаете, как найти НОД и НОК двух чисел с помощью C ++, Python, C и JavaScript.
Как найти НОД двух чисел
Наибольший общий делитель (GCD) или наивысший общий делитель (HCF) двух чисел - это наибольшее положительное целое число, которое идеально делит два заданных числа. Вы можете найти НОД двух чисел, используя алгоритм Евклида.
В алгоритме Евклида большее число делится на меньшее число, затем меньшее число делится на остаток от предыдущей операции. Этот процесс повторяется до тех пор, пока остаток не станет 0.
Например, если вы хотите найти НОД 75 и 50, вам необходимо выполнить следующие действия:
- Разделите большее число на меньшее и возьмите остаток.
75 % 50 = 25
- Разделите меньшее число на остаток от предыдущей операции.
50 % 25 = 0
- Теперь остаток становится 0, таким образом, НОД 75 и 50 равны 25.
Программа на C ++ для поиска НОД двух чисел
Ниже приведена программа на C ++ для поиска НОД двух чисел:
// Программа на C ++ для поиска GCD / HCF из 2 чисел
#включать
используя пространство имен std;
// Рекурсивная функция для поиска GCD / HCF из 2 чисел
int CalculateGCD (целое число1, целое число2)
{
если (число2 == 0)
{
return num1;
}
еще
{
вернуть calculateGCD (num2, num1% num2);
}
}
// Код драйвера
int main ()
{
int num1 = 34, num2 = 22;
cout << "GCD of" << num1 << "и" << num2 << "is" << calculateGCD (num1, num2) << endl;
int num3 = 10, num4 = 2;
cout << "GCD of" << num3 << "и" << num4 << "is" << calculateGCD (num3, num4) << endl;
int num5 = 88, num6 = 11;
cout << "GCD of" << num5 << "и" << num6 << "is" << calculateGCD (num5, num6) << endl;
int num7 = 40, num8 = 32;
cout << "GCD of" << num7 << "и" << num8 << "is" << calculateGCD (num7, num8) << endl;
int num9 = 75, num10 = 50;
cout << "GCD of" << num9 << "и" << num10 << "is" << calculateGCD (num9, num10) << endl;
возврат 0;
}
Выход:
НОД 34 и 22 равно 2
НОД 10 и 2 равно 2
НОД 88 и 11 равно 11
НОД 40 и 32 равно 8
НОД 75 и 50 равно 25
Программа Python для поиска НОД двух чисел
Ниже приведена программа Python для поиска НОД двух чисел:
Связанный: Что такое рекурсия и как ее использовать?
# Программа Python для поиска GCD / HCF из 2 чисел
def calculateGCD (число1, число2):
если num2 == 0:
return num1
еще:
вернуть calculateGCD (num2, num1% num2)
# Код драйвера
число1 = 34
число2 = 22
print ("НОД из", число1, "и", число2, "равно", вычислить НОД (число1, число2))
число3 = 10
num4 = 2
print ("НОД из", число3, "и", число4, "равно", вычислить НОД (число3, число4))
num5 = 88
num6 = 11
print ("НОД из", число5, "и", число6, "равно", вычислить НОД (число5, число6))
num7 = 40
num8 = 32
print ("НОД из", num7, "and", num8, "is", calculateGCD (num7, num8))
num9 = 75
num10 = 50
print ("GCD of", num9, "and", num10, "is", calculateGCD (num9, num10))
Выход:
НОД 34 и 22 равно 2
НОД 10 и 2 равно 2
НОД 88 и 11 равно 11
НОД 40 и 32 равно 8
НОД 75 и 50 равно 25
Программа на C для поиска НОД двух чисел
Ниже приведена программа на языке C для поиска НОД двух чисел:
// Программа на C для поиска GCD / HCF из 2 чисел
#включать
// Рекурсивная функция для поиска GCD / HCF из 2 чисел
int CalculateGCD (целое число1, целое число2)
{
если (число2 == 0)
{
return num1;
}
еще
{
вернуть calculateGCD (num2, num1% num2);
}
}
// Код драйвера
int main ()
{
int num1 = 34, num2 = 22;
printf ("НОД% d и% d равно% d \ n", num1, num2, calculateGCD (num1, num2));
int num3 = 10, num4 = 2;
printf ("НОД% d и% d равно% d \ n", num3, num4, calculateGCD (num3, num4));
int num5 = 88, num6 = 11;
printf ("НОД% d и% d равно% d \ n", num5, num6, calculateGCD (num5, num6));
int num7 = 40, num8 = 32;
printf ("НОД% d и% d равно% d \ n", num7, num8, calculateGCD (num7, num8));
int num9 = 75, num10 = 50;
printf ("НОД% d и% d равно% d \ n", num9, num10, calculateGCD (num9, num10));
возврат 0;
}
Выход:
НОД 34 и 22 равно 2
НОД 10 и 2 равно 2
НОД 88 и 11 равно 11
НОД 40 и 32 равно 8
НОД 75 и 50 равно 25
Программа на JavaScript для поиска НОД двух чисел
Ниже JavaScript программа для нахождения НОД двух чисел:
// Программа на JavaScript для поиска GCD / HCF из 2 чисел
// Рекурсивная функция для поиска GCD / HCF из 2 чисел
function calculateGCD (num1, num2) {
если (число2 == 0)
{
return num1;
}
еще
{
вернуть calculateGCD (num2, num1% num2);
}
}
// Код драйвера
var num1 = 34, num2 = 22;
document.write ("GCD of" + num1 + "и" + num2 + "равно" + calculateGCD (num1, num2) + "
");
var num3 = 10, num4 = 2;
document.write ("GCD of" + num3 + "и" + num4 + "равно" + calculateGCD (num3, num4) + "
");
var num5 = 88, num6 = 11;
document.write ("GCD of" + num5 + "и" + num6 + "равно" + calculateGCD (num5, num6) + "
");
var num7 = 40, num8 = 32;
document.write ("GCD of" + num7 + "и" + num8 + "равно" + calculateGCD (num7, num8) + "
");
var num9 = 75, num10 = 50;
document.write ("GCD of" + num9 + "и" + num10 + "равно" + calculateGCD (num9, num10) + "
");
Выход:
НОД 34 и 22 равно 2
НОД 10 и 2 равно 2
НОД 88 и 11 равно 11
НОД 40 и 32 равно 8
НОД 75 и 50 равно 25
Как найти НОК двух чисел
Наименьшее общее кратное (НОК) двух чисел - это наименьшее положительное целое число, которое полностью делится на два заданных числа. Вы можете найти НОК двух чисел, используя следующую математическую формулу:
число1 * число2 = НОК (число1, число2) * НОД (число1, число2)
НОК (число1, число2) = (число1 * число2) / НОД (число1, число2)
Чтобы найти НОК двух чисел программным способом, вам нужно использовать функцию, чтобы найти НОД двух чисел.
Связанный: Как сложить и вычесть две матрицы в C ++, Python и JavaScript
Программа на C ++ для поиска НОК двух чисел
Ниже приведена программа на C ++ для поиска НОК двух чисел:
// Программа на C ++ для поиска НОК двух чисел
#включать
используя пространство имен std;
// Рекурсивная функция для поиска НОК 2 чисел
int CalculateGCD (целое число1, целое число2)
{
если (число2 == 0)
{
return num1;
}
еще
{
вернуть calculateGCD (num2, num1% num2);
}
}
интервал вычисленияLCM (интервал числа1, интервал числа2)
{
return (число1 / вычислитьGCD (число1, число2)) * число2;
}
// Код драйвера
int main ()
{
int num1 = 34, num2 = 22;
cout << "LCM of" << num1 << "и" << num2 << "is" << calculateLCM (num1, num2) << endl;
int num3 = 10, num4 = 2;
cout << "LCM of" << num3 << "и" << num4 << "is" << calculateLCM (num3, num4) << endl;
int num5 = 88, num6 = 11;
cout << "LCM of" << num5 << "и" << num6 << "is" << calculateLCM (num5, num6) << endl;
int num7 = 40, num8 = 32;
cout << "LCM of" << num7 << "и" << num8 << "is" << calculateLCM (num7, num8) << endl;
int num9 = 75, num10 = 50;
cout << "LCM of" << num9 << "и" << num10 << "is" << calculateLCM (num9, num10) << endl;
возврат 0;
}
Выход:
НОК 34 и 22 равно 374
НОК 10 и 2 равно 10
НОК 88 и 11 равно 88
НОК 40 и 32 равно 160
НОК 75 и 50 равно 150
Программа Python для поиска НОК двух чисел
Ниже приведена программа Python для поиска НОК двух чисел:
# Программа Python для поиска НОК 2 чисел
def calculateGCD (число1, число2):
если num2 == 0:
return num1
еще:
вернуть calculateGCD (num2, num1% num2)
def calculateLCM (число1, число2):
return (num1 // вычислитьGCD (num1, num2)) * num2
# Код драйвера
число1 = 34
число2 = 22
print ("НОК из", число1, "и", число2, "равно", calculateLCM (число1, число2))
число3 = 10
num4 = 2
print ("НОК из", число3, "и", число4, "равно", calculateLCM (число3, число4))
num5 = 88
num6 = 11
print ("LCM из", num5, "and", num6, "is", calculateLCM (num5, num6))
num7 = 40
num8 = 32
print ("LCM из", num7, "and", num8, "is", calculateLCM (num7, num8))
num9 = 75
num10 = 50
print ("LCM of", num9, "and", num10, "is", calculateLCM (num9, num10))
Выход:
НОК 34 и 22 равно 374
НОК 10 и 2 равно 10
НОК 88 и 11 равно 88
НОК 40 и 32 равно 160
НОК 75 и 50 равно 150
Программа на C для поиска НОК двух чисел
Ниже приведена программа на языке C для поиска НОК двух чисел:
// Программа на C для поиска НОК двух чисел
#включать
// Рекурсивная функция для поиска НОК 2 чисел
int CalculateGCD (целое число1, целое число2)
{
если (число2 == 0)
{
return num1;
}
еще
{
вернуть calculateGCD (num2, num1% num2);
}
}
интервал вычисленияLCM (интервал числа1, интервал числа2)
{
return (число1 / вычислитьGCD (число1, число2)) * число2;
}
// Код драйвера
int main ()
{
int num1 = 34, num2 = 22;
printf ("НОК% d и% d равно% d \ n", num1, num2, calculateLCM (num1, num2));
int num3 = 10, num4 = 2;
printf ("НОК% d и% d равно% d \ n", num3, num4, calculateLCM (num3, num4));
int num5 = 88, num6 = 11;
printf ("НОК% d и% d равно% d \ n", num5, num6, calculateLCM (num5, num6));
int num7 = 40, num8 = 32;
printf ("НОК% d и% d равно% d \ n", num7, num8, calculateLCM (num7, num8));
int num9 = 75, num10 = 50;
printf ("НОК% d и% d равно% d \ n", num9, num10, calculateLCM (num9, num10));
возврат 0;
}
Выход:
НОК 34 и 22 равно 374
НОК 10 и 2 равно 10
НОК 88 и 11 равно 88
НОК 40 и 32 равно 160
НОК 75 и 50 равно 150
Программа на JavaScript для поиска НОК двух чисел
Ниже приведена программа на JavaScript для поиска НОК двух чисел:
// Программа на JavaScript для поиска НОК двух чисел
// Рекурсивная функция для поиска НОК 2 чисел
function calculateGCD (num1, num2) {
если (число2 == 0)
{
return num1;
}
еще
{
вернуть calculateGCD (num2, num1% num2);
}
}
функция calculateLCM (число1, число2)
{
return (число1 / вычислитьGCD (число1, число2)) * число2;
}
// Код драйвера
var num1 = 34, num2 = 22;
document.write ("LCM of" + num1 + "и" + num2 + "равно" + calculateLCM (num1, num2) + "
");
var num3 = 10, num4 = 2;
document.write ("НОК" + num3 + "и" + num4 + "равно" + calculateLCM (num3, num4) + "
");
var num5 = 88, num6 = 11;
document.write ("НОК" + num5 + "и" + num6 + "равно" + calculateLCM (num5, num6) + "
");
var num7 = 40, num8 = 32;
document.write ("НОК" + num7 + "и" + num8 + "равно" + calculateLCM (num7, num8) + "
");
var num9 = 75, num10 = 50;
document.write ("LCM of" + num9 + "и" + num10 + "равно" + calculateLCM (num9, num10) + "
");
Выход:
НОК 34 и 22 равно 374
НОК 10 и 2 равно 10
НОК 88 и 11 равно 88
НОК 40 и 32 равно 160
НОК 75 и 50 равно 150
Узнать больше о математических алгоритмах
Математические алгоритмы играют жизненно важную роль в программировании. Целесообразно знать о некоторых основных программах, основанных на математических алгоритмах, таких как ситовые алгоритмы, простое факторизация, делители, числа Фибоначчи, вычисления nCr и т. Д.
В настоящее время функциональное программирование находится на вершине тенденций программирования в Интернете. Парадигма функционального программирования рассматривает вычисления как математические функции, и эта концепция очень полезна в программировании. Вы должны знать о функциональном программировании и о том, какие языки программирования поддерживают его, чтобы стать наиболее эффективным программистом.
Хотите узнать больше о программировании? Стоит узнать о функциональном программировании и о том, какие языки программирования его поддерживают.
Читать далее
- Программирование
- JavaScript
- Python
- Учебники по кодированию
- Программирование на C

Юврадж - студент бакалавриата по информатике в Университете Дели, Индия. Он увлечен веб-разработкой Full Stack. Когда он не пишет, он исследует глубину различных технологий.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!
Еще один шаг…!
Пожалуйста, подтвердите свой адрес электронной почты в электронном письме, которое мы вам только что отправили.