Skip to main content

Find the GCD of two numbers

Using For Loop
#include<stdio.h>
int main(){
int x,y,m,i;
do
{
printf("Enter two number: ");
scanf("%d%d",&x,&y);
if(x==0 || y==0)
printf("Please check the input and try again...\n");
}while(x==0 || y==0);
if(x>y)
m=y;
else
m=x;

for(i=m;i>=1;i--){
if(x%i==0&&y%i==0){
printf("\nGCD of %d and %d is %d",x,y,i) ;
break;
}
}
return 0;
}
Using Recursion
#include <stdio.h>

int gcd(int a, int b)
{

if (a == b)
return a;
if (a > b)
return gcd(a-b, b);
return gcd(a, b-a);
}

int main()
{
int x,y,m,i;
do
{
printf("Enter two number: ");
scanf("%d%d",&x,&y);
if(x==0 || y==0)
printf("Please check the input and try again...\n");
}while(x==0 || y==0);
printf("GCD of %d and %d is %d ", x, y, gcd(x, y));
return 0;
}

   

Comments

Popular posts from this blog

Addition of two numbers on Server sent from Client [TCP] using C

/* tcpClient.c */ #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <netdb.h> #include <stdio.h> #include <unistd.h> #include <string.h> #include <strings.h> #define MAX_MSG 100 #define SERVER_ADDR "127.0.0.1" #define CLIENT_ADDR "127.0.0.1" #define SERVER_PORT 3786 #define CLIENT_PORT 8229  main () {   int sd, rc, i,n;   struct sockaddr_in clientAddr, servAddr;   char line[MAX_MSG];   /**********************************/   /* build server address structure */   /**********************************/   bzero((char *)&servAddr, sizeof(servAddr));   servAddr.sin_family = AF_INET;   servAddr.sin_addr.s_addr = inet_addr(SERVER_ADDR);   servAddr.sin_port = htons(SERVER_PORT); /*   bzero((char *)&servAddr, sizeof(servAddr));   servAddr.sin_family = AF_INET;   inet_aton(SERVER_ADDR, &servAddr.sin_addr);   servAddr.sin_port = htons(SERVER_PORT); */   /*****

Using the concept of Inheritance write a C++ Program to calculate the area and perimeter of rectangle

/* C++ Program to calculate the area and perimeter of rectangles using concept of inheritance. */ #include using namespace std; class Rectangle { protected: float length, breadth; public: Rectangle(): length(0.0), breadth(0.0) { cout<<"Enter length: "; cin>>length; cout<<"Enter breadth: "; cin>>breadth; } }; /* Area class is derived from base class Rectangle. */ class Area : public Rectangle { public: float calc() { return length*breadth; } }; /* Perimeter class is derived from base class Rectangle. */ class Perimeter : public Rectangle { public: float calc() { return 2*(length+breadth); } }; int main() { cout<<"Enter data for first rectangle to find area.\n"; Area a; cout<<"Area = "<

C program for Unit Conversion

/* Convert Celsius to Fahrenheit */ #include<stdio.h> void main() {     float c,f;     printf("Enter the temperature in Celcius: ");     scanf("%f",&c);     f = c * 9/5 + 32;     printf("Temperature in Farenheit: %f",f); } /* Convert Farenheit to Celcius */ #include<stdio.h> void main() {     float c,f;     printf("Farenheit : ");     scanf("%f",&f);     c = (f - 32) * 5/9;     printf("Celcius: %f",c);  } /*Convert Meter to Feet*/ #include<stdio.h> void main() {     float m,f;     printf("Meter : ");     scanf("%f",&m);     f = 3.2808399 * m;     printf("Feet: %f",f); } /* Convert Feet to Meter */ #include<stdio.h> void main() {     float m,f;     printf("Feet : ");     scanf("%f",&f);     m = f / 3.2808399;     printf("Meter: %f",m); } /*Convert Km to M/cm/mm*/ #include<stdio.h> void main() {   float km;   char v;   float