用c语言求最大公约数的流程图,如何用c语言求最大公约数和最小公倍数

a=g_cd(m,n);

if (m>n) //最小公倍数=较大的数*(较小的数/最大公约数)

{

b=n;

b/=a;

return m*b;

}

else

{

b=m;

b/=a;

return n*b;

}

}

main()

{

int p,r,n,m,temp;

printf("Please enter 2 numbers n,m:");

scanf("%d,%d",&n,&m);//输入两个正整数.

if(n

在m中.

{temp=n;

n=m;

m=temp;

}

p=n*m;//P是原来两个数n,m的乘积.

while(m!=0)//求两个数n,m的最大公约数.

{

r=n%m;

n=m;

m=r;

}

printf("Its MAXGongYueShu:%d\n",n);//打印最大公约数.

printf("Its MINGongBeiShu:%d\n",p/n);打印最小公倍数.

基本原理如下:

用欧几里德算法(辗转相除法)求两个数的最大公约数的步骤如下:

先用小的一个数除大的一个数,得第一个余数;

再用第一个余数除小的一个数,得第二个余数;

又用第二个余数除第一个余数,得第三个余数;

这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(如果最后的除数是1,那么原来的两个数是互质数)。

例如求1515和600的最大公约数,

第一次:用600除1515,商2余315;

第二次:用315除600,商1余285;

第三次:用285除315,商1余30;

第四次:用30除285,商9余15;

第五次:用15除30,商2余0。

1515和600的最大公约数是15。

两个正整数的最小公倍数=两个数的乘积÷两个数的最大公约数

由于两个数的乘积等于这两个数的最大公约数与最小公倍数的积。这就是说,求两个数的最小公倍数,可以先求出两个数的最大公约数,再用这两个数的最大公约数去除这两个数的积,所得的商就是两个数的最小公倍数。

例 求105和42的最小公倍数。

因为105和42的最大公约数是21,

105和42的积是4410,4410÷21=210,

所以,105和42的最小公倍数是210。

#include

void main()

{

int i,j,k;

long m;

printf("please input i,j:\n");

scanf("%d%d",&i,&j);

m=i*j;

if(i

{i=i^j;

j=j^i;

i=i^j;}

while(i%j!=0)

{k=i%j;

i=j;

j=k;}

printf("gcd=%d,lcm=%ld\n",j,m/j);

}

给,已经编译运行确认:

#include

#include

int main()

{

int p,r,n,m,temp;

printf("Please enter 2 numbers n,m:");

scanf("%d %d",&n,&m);//输入两个正整数.

if(n

{

temp=n;

n=m;

m=temp;

}

p=n*m;//P是原来两个数n,m的乘积.

while(m!=0)//求两个数n,m的最大公约数.

{

r=n%m;

n=m;

m=r;

}

printf("最大公约数为: %d\n",n);//打印最大公约数.

printf("最小公倍数为: %d\n&qu

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/507104.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

visio图标_弱电间机柜原型图整理,可编辑!(Excel,visio,CAD)

有朋友问到机柜原型图,这个我们在弱电vip技术群里面也有朋友提到过,今天我们就整理了弱电系统中常用的机柜原型图,有Excel,visio,CAD版本,可以修改编辑!1、Excel机柜原型图(可编辑)机柜布局-1机…

c语言字节强制对齐,C语言的那些小秘密之字节对齐

为了让读者加深印象,我们这里在代码中没有使用0,而是使用的4,所以在最终计算出的结果部分减去了一个4才是偏移地址,当然实际使用中我们都是用的是0。懂了上面的宏offsetof之后我们再来看看下面的代码:#include #define…

xshell 6 连接debian系统拒绝了密码_原来连接Linux,还有这个方法

你是不是以为电脑的操作系统只有Windows和IOS系统,其实不是的,还有一个Linux系统,这个系统不是很常见,导致很多人连怎么连接Linux系统都不太清楚明白。Windows系统可以用远程桌面,Linux系统怎么来远程桌面呢&#xff1…

ctf up怎么写 write_软件测试工程师要不要写工具?

Fintech概念正受到不少互联网金融公司的热捧,主要是指代那些可用于撕裂传统金融服务方式的高新技术。越来越多的企业开辟了新的部门去研究各种各样能让自己产品增值的科技类产品。尤其是在很多互联网金融公司,业务分析师BA(Business Analyst)&#xff0c…

c语言时间错误的是什么意思,C语言中,如何验证输入日期的正确性!~

就这么写的&#xff0c;没调试&#xff0c;你自己调一下#include<stdio.h>voidmain(){intyear,month,date;scanf("%d-%d-%d",&year,&month,&date);printf("%d-%d-%d",year,month,date);if(year<0||year>3000)printf("Error!&…

c语言中数据存储在文件中,急求如何将下列C语言程序数据存储到文件中?

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼求如何改动才能将下列程序的存储输入或输出数据(或两者一起)到指定的文件(或运行时直接创立一个文件)如Arrangement中。#include int n0;int rest[7][7]; //全局声明,以供全局调用int main(){void perm(int list[],int ,int );int …

th标签能包裹select吗_电影《八佰》过后,他能摘掉马思纯前男友标签了吗?

文/温青青提到欧豪&#xff0c;大多数人第一时间想到的还是“马思纯前男友”、“快乐男声选秀出道歌手”这些身份。原因嘛很简单&#xff0c;只因为男方在娱乐圈的名气地位暂时还不如女方。类似情况分手的情侣还有很多&#xff0c;杨紫的前男友秦俊杰&#xff0c;蓝盈莹的前男友…

c语言 浮点数误差,[扫盲]为什么浮点数运算会有误差

在开始阅读本文之前&#xff0c;请猜测一下下面程序的输出结果&#xff1a;float a0.0f;for(int i0;i<10;i){a0.1;}cout<true? Youre too young, too simple, sometimes naive.虽然乍看上去很不可思议&#xff0c;但是0.1叠加10遍的确是和1.0不等的。这种诡异的情况是由…

h3c防火墙u200配置命令_h3c 防火墙清除配置

reset saved-configuration 重置配置文件。The saved configuration file will be erased. Are you sure? [Y/N]:YConfiguration file in cfa0 is being cleared. Please wait ...Configuration file is cleared.reboot 重新防火墙Start to check configuration with next sta…

c语言库快速幂函数,C语言 - 快速幂 - 迭代法+递归法 - 详细讲解

快速幂的作用&#xff1a;解决 求 a ^ n 的问题 (n可以大于1e18)&#xff0c; 如果用for循环的话&#xff0c;毫无疑问直接炸掉 …… 所以也就用了算法复杂度在 o(log n)的快速幂算法来解决此类问题。快速幂递归法(基于二分思想)&#xff1a;那么既然要用到二分法那么怎么二分&…

python virtualenv_python开发之virtualenv与virtualenvwrapper讲解

在使用 Python 开发的过程中&#xff0c;工程一多&#xff0c;难免会碰到不同的工程依赖不同版本的库的问题&#xff1b;亦或者是在开发过程中不想让物理环境里充斥各种各样的库&#xff0c;引发未来的依赖灾难。此时&#xff0c;我们需要对于不同的工程使用不同的虚拟环境来保…

android 自定义 popupwindow,Android自定义弹出窗口PopupWindow使用技巧

PopupWindow是Android上自定义弹出窗口&#xff0c;使用起来很方便。PopupWindow的构造函数为public PopupWindow(View contentView, int width, int height, boolean focusable)contentView为要显示的view&#xff0c;width和height为宽和高&#xff0c;值为像素值&#xff0c…

python花萼长度表_python描述性统计实践

1、加载相关库和数据集使用的库主要有&#xff1a;pandas、numpy、sklearn、matplotlib、seaborn使用的数据集&#xff1a;sklearn库中的鸢尾花数据集import pandas as pdimport numpy as npfrom sklearn.datasets import load_irisimport matplotlib.pyplot as pltimport seab…

android lottie字体json,Android 动画深入Lottie

image.png如果现在有需求,让这个小人做出拳击动作你应该如何做? 传统方法会写一大堆的路径值做路径动画&#xff0c;不好调试代码臃肿并且麻烦&#xff0c;那么有简单方法吗 有&#xff01; SVG 和 Lottie 可以胜任 SVG编辑麻烦美工不太会弄&#xff0c;那么我们用Lottie 下面…

android 搜索工具栏,Android记事本在菜单栏添加搜索按钮方法

效果图这个app结构和我之前将记事本开发的博客基本一致&#xff0c;我这里直接讲一下怎样添加使用的开发软件为android studio首先在res目录下新建文件夹menu&#xff0c;添加目录布局文件main_menu之后在main_menu中添加如下代码xmlns:app"http://schemas.android.com/ap…

5分钟k线数据 存储_成功率极高的“分时K线战法”:15分钟K线战法+30分钟K线战法...

实战看盘最常用的就是日、周、月等K线图。这些图形对于我们分析个股走势的确帮助很大&#xff0c;然而遇到调整时&#xff0c;就显示了其宏观有余、微观不足的缺点。但假如我们用分时K线图进行微观的观察与分析&#xff0c;就可以找到一些个股在调整中的规律&#xff0c;比如15…

python redis模块常用_python-Redis模块常用的方法汇总

Redes模块常用的方法汇总一.创建建Redis对象1.直接使用import redisr redis.Redis(host127.0.0.1, port6379)2.连接池使用import redispool redis.ConnectionPool(host127.0.0.1, port6379)r redis.Redis(connection_poolpool)3.库的选择import redisr redis.Redis(db0) #第…

android camera 显示过程,Android Camera2 API显示已处理的预览图像

澄清问题后编辑;最初的答案在底部取决于您在哪里进行处理.如果您正在使用RenderScript,则可以将Surface从SurfaceView或TextureView连接到分配(使用setSurface),然后将处理后的输出写入该分配并使用Allocation.ioSend()将其发送出去. HDR Viewfinder demo使用这种方法.如果您正…

android布局的属性,android

第一类:属性值为true或falseandroid:layout_centerHrizontal 水平居中android:layout_centerVertical 垂直居中android:layout_centerInparent 相对于父元素完全居中android:layout_alignParentBottom 贴紧父元素的下边缘android:layout_alignParentLeft 贴紧父元素的左…

python旋转排序数组_LeetCode(力扣)——Search in Rotated Sorted Array 搜索旋转排序数组 python实现...

题目描述&#xff1a;python实现Search in Rotated Sorted Array 搜索旋转排序数组中文&#xff1a;假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如&#xff0c;数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。搜索一个给定的目标值&#xff0c;如果数组中…