Skip to content

Instantly share code, notes, and snippets.

@numa08
Created June 17, 2012 03:29
Show Gist options
  • Save numa08/2943296 to your computer and use it in GitHub Desktop.
Save numa08/2943296 to your computer and use it in GitHub Desktop.
Euclid
#include <stdio.h>
void change(int *numA, int *numB){
int temp;
temp = *numB;
*numB = *numA;
*numA = temp;
}
//
//メインの実装
//割り算を行なって、余りを保存。
//割り切れるかどうかによって、分岐を行う
//再起の関数
//
int eucrid(int numA, int numB)
{
int rest;
if(numA < numB)
{
change(&numA,&numB);
}
rest = numA % numB;
if(rest == 0){
return numB;
}
return eucrid(numB, rest);
}
int main(void){
int numA = 18, numB = 30;
printf("%d\n",eucrid(numA,numB));
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment