2つの数の最大公約数(C言語)を求めます
896 ワード
転送減算:
転がり相殺法:
#include
#include
int main()
{
int a, b;
printf(" :");
scanf("%d %d",&a,&b);
if (a < b)
{
a = a^b;
b = a^b;
a = a^b;
}
while ( (a-b) > b)
{
a = a - b;
}
while ( (a-b) != 0 )
{
int temp = a - b;
a = b;
b = temp;
if (a < b)
{
a = a^b;
b = a^b;
a = a^b;
}
}
printf(" :%d
",b);
system("pause");
return 0;
}
転がり相殺法:
#include
#include
int main()
{
int a, b;
printf(" :");
scanf("%d %d",&a,&b);
if (a < b)
{
a = a^b;
b = a^b;
a = a^b;
}
while (a%b != 0)
{
int temp = a%b;
a = b;
b = temp;
}
printf(" :%d
",b);
system("pause");
return 0;
}