> 백엔드 개발 > C++ > 본문

유클리드 알고리즘을 구현하는 C 프로그램

WBOY
풀어 주다: 2023-09-17 12:41:02
앞으로
1017명이 탐색했습니다.

유클리드 알고리즘을 구현하는 C 프로그램

Problem

두 정수의 최대 공약수(GCD)와 최소 공배수(LCM)를 구하고 그 결과를 주어진 정수로 출력하는 유클리드 알고리즘을 구현합니다.

해결 방법

두 정수의 최대 공약수(GCD)와 최소 공배수(LCM)를 구하는 유클리드 알고리즘을 구현하는 솔루션은 다음과 같습니다. -

GCD와 LCM을 구하는 논리는 다음과 같습니다. -라는 함수 by
if(firstno*secondno!=0){
   gcd=gcd_rec(firstno,secondno);
   printf("</p><p>The GCD of %d and %d is %d</p><p>",firstno,secondno,gcd);
   printf("</p><p>The LCM of %d and %d is %d</p><p>",firstno,secondno,(firstno*secondno)/gcd);
}
로그인 후 복사

다음과 같습니다 -

int gcd_rec(int x, int y){
   if (y == 0)
      return x;
   return gcd_rec(y, x % y);
}
로그인 후 복사

Program

다음은 두 정수의 최대 공약수(GCD)와 최소 공배수(LCM)를 찾기 위한 유클리드 알고리즘을구현하는 C 프로그램입니다 -< /p>

라이브 시연

#include<stdio.h>
int gcd_rec(int,int);
void main(){
   int firstno,secondno,gcd;
   printf("Enter the two no.s to find GCD and LCM:");
   scanf("%d%d",&firstno,&secondno);
   if(firstno*secondno!=0){
      gcd=gcd_rec(firstno,secondno);
      printf("</p><p>The GCD of %d and %d is %d</p><p>",firstno,secondno,gcd);
      printf("</p><p>The LCM of %d and %d is %d</p><p>",firstno,secondno,(firstno*secondno)/gcd);
   }
   else
      printf("One of the entered no. is zero:Quitting</p><p>");
   }
   /*Function for Euclid&#39;s Procedure*/
   int gcd_rec(int x, int y){
   if (y == 0)
      return x;
   return gcd_rec(y, x % y);
}
로그인 후 복사

출력

위 프로그램을 실행하면 다음과 같은 결과가 나옵니다 -

Enter the two no.s to find GCD and LCM:4 8

The GCD of 4 and 8 is 4

The LCM of 4 and 8 is 8
로그인 후 복사

위 내용은 유클리드 알고리즘을 구현하는 C 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿