Maison  >  Article  >  développement back-end  >  Code C++ qui réduit les fractions à leur forme la plus simple

Code C++ qui réduit les fractions à leur forme la plus simple

王林
王林avant
2023-09-05 19:37:061810parcourir

Code C++ qui réduit les fractions à leur forme la plus simple

Étant donné deux entiers Num1 et Num2 en entrée. Ces deux entiers peuvent être représentés sous forme de fractions Num1/Num2. Le but est de réduire cette fraction à sa forme la plus simple.

Trouvez le plus grand dénominateur en utilisant le plus grand diviseur commun (PGCD)

  • Nous calculerons le PGCD de ces deux nombres.

  • Divisez les deux nombres par leur plus grand diviseur commun.

  • Réglez ces deux variables sur le quotient après division.

  • La fraction la plus simple sera Num1/Num2.

Exemple

Entrée - Num1=22 Num2=10

Sortie - Num1 = 11 Num2 = 5

La fraction la plus simple est 11/5

Explication - 22 et 10 maximum Le le diviseur commun est 2.

22/2=11, 10/2=5

La fraction la plus simple est 11/5

Entrée- Num1=36 Num2=40

Sortie- Num1 = 9 Num2 = 10

Le plus simple La note est : 9/10

Explication - Le plus grand diviseur commun de 36 et 40 est 4.

40/4=10, 36/4=9

La fraction la plus simple est 9/10

La méthode utilisée dans le programme ci-dessous est la suivante

Dans cette méthode, nous utilisons d'abord la méthode récursive pour calculer le plus grand diviseur commun des nombres d'entrée. Divisez deux nombres par leur plus grand diviseur commun et obtenez les quotients qui feront partie de la fraction la plus simple.

  • Obtenir les variables d'entrée Num1 et Num2.

  • La fonction findGCD(int a, int b) accepte num1 et num2 et renvoie le plus grand diviseur commun des deux.

  • Si b est 0, renvoie a, sinon renvoie findGCD(b,a%b).

  • La fonction lowerFraction(int num1, int num2) accepte deux nombres en entrée et imprime la fraction la plus simple.

  • Utilisez le dénomination variable pour représenter le plus grand diviseur commun.

  • Définissez num1=num1/denom et num2=num2/denom.

  • Imprimez num1 et num2.

  • Imprimez la fraction la plus simple sous la forme num1/num2.

Exemple

#include <bits/stdc++.h>
using namespace std;
int findGCD(int a, int b) {
   if (b == 0)
      return a;
      return findGCD(b, a % b);
   }
   void lowestFraction(int num1, int num2){
      int denom;
      denom = findGCD(num1,num2);
      num1/=denom;
      num2/=denom;
      cout<< "Num1 = " << num1<<endl;
      cout<< "Num2 = " << num2<<endl;
      cout<< "Lowest Fraction : "<<num1<<"/"<<num2;
}
int main(){
   int Num1 = 14;
   int Num2 = 8;
   lowestFraction(Num1,Num2);
   return 0;
}

Output

Si nous exécutons le code ci-dessus, il générera la sortie suivante

Num1 = 7
Num2 = 4
Lowest Fraction : 7/4

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer