Matematika je důležitou součástí programování a informatiky. Je jádrem každého dobrého algoritmu a poskytuje analytické dovednosti potřebné v programování.

Matematické algoritmy jsou také velmi důležitým tématem pro programování rozhovorů. V tomto článku se naučíte, jak najít GCD a LCM dvou čísel pomocí C ++, Pythonu, C a JavaScriptu.

Jak najít GCD dvou čísel

Největší společný dělitel (GCD) nebo nejvyšší společný faktor (HCF) dvou čísel je největší kladné celé číslo, které dokonale dělí dvě uvedená čísla. GCD dvou čísel můžete najít pomocí euklidovského algoritmu.

V euklidovském algoritmu je větší číslo vyděleno menším číslem, pak je menší číslo vyděleno zbytkem předchozí operace. Tento proces se opakuje, dokud zbytek není 0.

Například pokud chcete najít GCD 75 a 50, musíte postupovat podle těchto kroků:

  • Vydělte větší číslo menším číslem a vezměte zbytek.
75 % 50 = 25
  • Vydělte menší číslo zbytkem předchozí operace.
50 % 25 = 0
  • Nyní bude zbytek 0, tedy GCD 75 a 50 je 25.

Program C ++ pro nalezení GCD dvou čísel

instagram viewer

Níže je program C ++ pro vyhledání GCD dvou čísel:

// Program C ++ k vyhledání GCD / HCF 2 čísel
#zahrnout
pomocí jmenného prostoru std;
// Rekurzivní funkce k nalezení GCD / HCF 2 čísel
int vypočítat GCD (int num1, int num2)
{
if (num2 == 0)
{
návrat num1;
}
jiný
{
návrat vypočítat GCD (num2, num1% num2);
}
}
// Kód ovladače
int main ()
{
int num1 = 34, num2 = 22;
cout << „GCD z„ << num1 << “a„ << num2 << “je„ << vypočítat GCD (num1, num2) << endl;
int num3 = 10, num4 = 2;
cout << „GCD z„ << num3 << “a„ << num4 << “je„ << vypočítat GCD (num3, num4) << endl;
int num5 = 88, num6 = 11;
cout << "GCD z" << num5 << "a" << num6 << "je" << vypocit GCD (num5, num6) << endl;
int num7 = 40, num8 = 32;
cout << "GCD z" << num7 << "a" << num8 << "je" << vypočítat GCD (num7, num8) << endl;
int num9 = 75, num10 = 50;
cout << "GCD z" << num9 << "a" << num10 << "je" << vypocit GCD (num9, num10) << endl;
návrat 0;
}

Výstup:

GCD 34 a 22 je 2
GCD 10 a 2 je 2
GCD 88 a 11 je 11
GCD 40 a 32 je 8
GCD 75 a 50 je 25

Program v Pythonu k nalezení GCD dvou čísel

Níže je program Python pro nalezení GCD dvou čísel:

Příbuzný: Co je rekurze a jak ji používáte?

# Program v Pythonu k vyhledání GCD / HCF dvou čísel
def vypočítat GCD (num1, num2):
pokud num2 == 0:
návrat číslo1
jiný:
návratnost vypočítat GCD (num2, num1% num2)
# Kód ovladače
num1 = 34
num2 = 22
print ("GCD of", num1, "and", num2, "is", spočítat GCD (num1, num2))
num3 = 10
num4 = 2
print ("GCD of", num3, "and", num4, "is", spočítat GCD (num3, num4))
num5 = 88
num6 = 11
print ("GCD of", num5, "and", num6, "is", Calculate GCD (num5, num6))
num7 = 40
num8 = 32
print ("GCD of", num7, "and", num8, "is", spočítat GCD (num7, num8))
num9 = 75
num10 = 50
print ("GCD of", num9, "and", num10, "is", spočítat GCD (num9, num10))

Výstup:

GCD 34 a 22 je 2
GCD 10 a 2 je 2
GCD 88 a 11 je 11
GCD 40 a 32 je 8
GCD 75 a 50 je 25

Program C k nalezení GCD dvou čísel

Níže je program C k vyhledání GCD dvou čísel:

// Program C k vyhledání GCD / HCF 2 čísel
#zahrnout
// Rekurzivní funkce k nalezení GCD / HCF 2 čísel
int vypočítat GCD (int num1, int num2)
{
if (num2 == 0)
{
návrat num1;
}
jiný
{
návrat vypočítat GCD (num2, num1% num2);
}
}
// Kód ovladače
int main ()
{
int num1 = 34, num2 = 22;
printf ("GCD% d a% d je% d \ ⁠⁠n", num1, num2, vypočítat GCD (num1, num2));
int num3 = 10, num4 = 2;
printf ("GCD% d a% d je% d \ ⁠⁠n", num3, num4, vypočítat GCD (num3, num4));
int num5 = 88, num6 = 11;
printf ("GCD% d a% d je% d \ ⁠⁠n", num5, num6, vypočítat GCD (num5, num6));
int num7 = 40, num8 = 32;
printf ("GCD% d a% d je% d \ ⁠⁠n", num7, num8, vypočítat GCD (num7, num8));
int num9 = 75, num10 = 50;
printf ("GCD% d a% d je% d \ ⁠⁠n", num9, num10, vypočítat GCD (num9, num10));
návrat 0;
}

Výstup:

GCD 34 a 22 je 2
GCD 10 a 2 je 2
GCD 88 a 11 je 11
GCD 40 a 32 je 8
GCD 75 a 50 je 25

Program JavaScript k vyhledání GCD dvou čísel

Níže je JavaScript program pro nalezení GCD dvou čísel:

// JavaScriptový program pro vyhledání GCD / HCF 2 čísel
// Rekurzivní funkce k nalezení GCD / HCF 2 čísel
funkce vypočítat GCD (num1, num2) {
if (num2 == 0)
{
návrat num1;
}
jiný
{
návrat vypočítat GCD (num2, num1% num2);
}
}
// Kód ovladače
var num1 = 34, num2 = 22;
document.write ("GCD z" + num1 + "a" + num2 + "je" + vypočítat GCD (num1, num2) + "
");
var num3 = 10, num4 = 2;
document.write ("GCD z" + num3 + "a" + num4 + "je" + vypočítat GCD (num3, num4) + "
");
var num5 = 88, num6 = 11;
document.write ("GCD z" + num5 + "a" + num6 + "je" + vypočítat GCD (num5, num6) + "
");
var num7 = 40, num8 = 32;
document.write ("GCD z" + num7 + "a" + num8 + "je" + vypočítat GCD (num7, num8) + "
");
var num9 = 75, num10 = 50;
document.write ("GCD z" + num9 + "a" + num10 + "je" + vypočítat GCD (num9, num10) + "
");

Výstup:

GCD 34 a 22 je 2
GCD 10 a 2 je 2
GCD 88 a 11 je 11
GCD 40 a 32 je 8
GCD 75 a 50 je 25

Jak najít LCM dvou čísel

Nejmenší společný násobek (LCM) dvou čísel je nejmenší kladné celé číslo, které je dokonale dělitelné dvěma danými čísly. LCM dvou čísel najdete pomocí následujícího matematického vzorce:

num1 * num2 = LCM (num1, num2) * GCD (num1, num2)
LCM (num1, num2) = (num1 * num2) / GCD (num1, num2)

Chcete-li programově najít LCM dvou čísel, musíte pomocí funkce najít GCD dvou čísel.

Příbuzný: Jak přidat a odečíst dvě matice v C ++, Pythonu a JavaScriptu

Program C ++ pro nalezení LCM dvou čísel

Níže je program C ++ pro nalezení LCM dvou čísel:

// Program C ++ pro nalezení LCM dvou čísel
#zahrnout
pomocí jmenného prostoru std;
// Rekurzivní funkce k nalezení LCM 2 čísel
int vypočítat GCD (int num1, int num2)
{
if (num2 == 0)
{
návrat num1;
}
jiný
{
návrat vypočítat GCD (num2, num1% num2);
}
}
int vypočítat LCM (int num1, int num2)
{
návrat (num1 / vypočítat GCD (num1, num2)) * num2;
}
// Kód ovladače
int main ()
{
int num1 = 34, num2 = 22;
cout << "LCM" << num1 << "a" << num2 << "je" << vypočítat LCM (num1, num2) << endl;
int num3 = 10, num4 = 2;
cout << "LCM" << num3 << "a" << num4 << "je" << vypočítat LCM (num3, num4) << endl;
int num5 = 88, num6 = 11;
cout << "LCM" << num5 << "a" << num6 << "je" << vypocitLCM (num5, num6) << endl;
int num7 = 40, num8 = 32;
cout << "LCM" << num7 << "a" << num8 << "je" << vypocitLCM (num7, num8) << endl;
int num9 = 75, num10 = 50;
cout << „LCM z„ << num9 << “a„ << num10 << “je„ << vypočítat LCM (num9, num10) << endl;
návrat 0;
}

Výstup:

LCM 34 a 22 je 374
LCM 10 a 2 je 10
LCM 88 a 11 je 88
LCM 40 a 32 je 160
LCM 75 a 50 je 150

Program Python k nalezení LCM dvou čísel

Níže je program Python pro nalezení LCM dvou čísel:

# Program v Pythonu k nalezení LCM dvou čísel
def vypočítat GCD (num1, num2):
pokud num2 == 0:
návrat číslo1
jiný:
návratnost vypočítat GCD (num2, num1% num2)
def CalcLCM (num1, num2):
návrat (num1 // vypočítatGCD (num1, num2)) * num2
# Kód ovladače
num1 = 34
num2 = 22
print ("LCM of", num1, "and", num2, "is", spočítat LCM (num1, num2))
num3 = 10
num4 = 2
print ("LCM of", num3, "and", num4, "is", spočítat LCM (num3, num4))
num5 = 88
num6 = 11
print ("LCM of", num5, "and", num6, "is", spočítat LCM (num5, num6))
num7 = 40
num8 = 32
print ("LCM of", num7, "and", num8, "is", spočítat LCM (num7, num8))
num9 = 75
num10 = 50
print ("LCM of", num9, "and", num10, "is", spočítat LCM (num9, num10))

Výstup:

LCM 34 a 22 je 374
LCM 10 a 2 je 10
LCM 88 a 11 je 88
LCM 40 a 32 je 160
LCM 75 a 50 je 150

Program C k nalezení LCM dvou čísel

Níže je program C pro nalezení LCM dvou čísel:

// Program C k nalezení LCM 2 čísel
#zahrnout
// Rekurzivní funkce k nalezení LCM 2 čísel
int vypočítat GCD (int num1, int num2)
{
if (num2 == 0)
{
návrat num1;
}
jiný
{
návrat vypočítat GCD (num2, num1% num2);
}
}
int vypočítat LCM (int num1, int num2)
{
návrat (num1 / vypočítat GCD (num1, num2)) * num2;
}
// Kód ovladače
int main ()
{
int num1 = 34, num2 = 22;
printf ("LCM% d a% d je% d \ ⁠n", num1, num2, vypočítat LCM (num1, num2));
int num3 = 10, num4 = 2;
printf ("LCM% d a% d je% d \ ⁠n", num3, num4, CalcLCM (num3, num4));
int num5 = 88, num6 = 11;
printf ("LCM% d a% d je% d \ ⁠n", num5, num6, vypočítat LCM (num5, num6));
int num7 = 40, num8 = 32;
printf ("LCM% d a% d je% d \ ⁠n", num7, num8, vypočítat LCM (num7, num8));
int num9 = 75, num10 = 50;
printf ("LCM% d a% d je% d \ ⁠n", num9, num10, vypočítat LCM (num9, num10));
návrat 0;
}

Výstup:

LCM 34 a 22 je 374
LCM 10 a 2 je 10
LCM 88 a 11 je 88
LCM 40 a 32 je 160
LCM 75 a 50 je 150

Program JavaScript k nalezení LCM dvou čísel

Níže je uveden program JavaScript, který umožňuje najít LCM dvou čísel:

// JavaScriptový program pro nalezení LCM dvou čísel
// Rekurzivní funkce k nalezení LCM 2 čísel
funkce vypočítat GCD (num1, num2) {
if (num2 == 0)
{
návrat num1;
}
jiný
{
návrat vypočítat GCD (num2, num1% num2);
}
}
funkce vypočítat LCM (num1, num2)
{
návrat (num1 / vypočítat GCD (num1, num2)) * num2;
}
// Kód ovladače
var num1 = 34, num2 = 22;
document.write ("LCM of" + num1 + "a" + num2 + "je" + vypočítat LCM (num1, num2) + "
");
var num3 = 10, num4 = 2;
document.write ("LCM of" + num3 + "a" + num4 + "je" + vypočítat LCM (num3, num4) + "
");
var num5 = 88, num6 = 11;
document.write ("LCM of" + num5 + "a" + num6 + "je" + vypočítat LCM (num5, num6) + "
");
var num7 = 40, num8 = 32;
document.write ("LCM of" + num7 + "a" + num8 + "je" + vypočítat LCM (num7, num8) + "
");
var num9 = 75, num10 = 50;
document.write ("LCM of" + num9 + "a" + num10 + "je" + vypočítat LCM (num9, num10) + "
");

Výstup:

LCM 34 a 22 je 374
LCM 10 a 2 je 10
LCM 88 a 11 je 88
LCM 40 a 32 je 160
LCM 75 a 50 je 150

Další informace o matematických algoritmech

Matematické algoritmy hrají při programování zásadní roli. Je rozumné vědět o některých základních programech založených na matematických algoritmech, jako jsou Sieve Algorithms, Prime Factorization, Divisors, Fibonacci Numbers, nCr Computations atd.

V současné době je funkční programování na vrcholu programovacích trendů na internetu. Paradigma funkčního programování zachází s výpočty jako s matematickými funkcemi a tento koncept je v programování velmi užitečný. Musíte vědět o funkčním programování a o tom, které programovací jazyky ho podporují, aby byl nejefektivnějším programátorem, jaký můžete být.

E-mailem
5 jazyků funkčního programování, které byste měli znát

Chcete vědět více o programování? Stojí za to se naučit o funkčním programování a o tom, jaké programovací jazyky ho podporují.

Přečtěte si další

Související témata
  • Programování
  • JavaScript
  • Krajta
  • Výukové programy pro kódování
  • C Programování
O autorovi
Yuvraj Chandra (32 článků publikováno)

Yuvraj je vysokoškolský student výpočetní techniky na univerzitě v Dillí v Indii. Je vášnivým vývojářem Full Stack Web Development. Když nepíše, zkoumá hloubku různých technologií.

Více od Yuvraj Chandry

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!

Ještě jeden krok…!

V e-mailu, který jsme vám právě poslali, potvrďte svou e-mailovou adresu.

.