首页 > 其他分享 >将真分数分解为埃及分数

将真分数分解为埃及分数

时间:2023-05-25 19:13:33浏览次数:36  
标签:分数 b% 真分数 cout else break 分解

现输入一个真分数,请将该分数分解为埃及分数。

#include<iostream>
using namespace std;
int main()
{
int a,b,c;
cout<<"请分别输入一个真分数的分母和分子:"<<endl;
cin>>a>>b;
cout<<"分解成埃及分数为:";
while(1)
{
if(b%a)
{
c=b/a+1;
}
else
{
c=b/a;
a=1;
}
if(a==1)
{
cout<<"1/"<<c<<endl;
break;
}
else
{
cout<<"1/"<<c<<"+";
}
a=a*c-b;
b=b*c;
if(a==3&&b%2==0)
{
cout<<"1/"<<b/2<<"+"<<"1/"<<b;
break;
}
}
return 0;
}

运行结果为:

 

标签:分数,b%,真分数,cout,else,break,分解
From: https://www.cnblogs.com/618zyk/p/17421607.html

相关文章

  • day 38 计算分数精度值
    1.计算M/N,用数组储存计算中的中间值;2.当中间值为0或数进入循环则结束计算;3.输出; #include<iostream>usingnamespacestd;voidg(intm,intn){inta[110],b[110]={0};intt=0;while(m){b[m]=t;a[t++]=(10*m)/n;m=(10*m)%n;if(b[m]){break;......
  • 列出真分数序列
    自然语言解决问题:分子、分母只有公因数1的分数叫做最简分数或者说分子和分母是互质数的分数,叫做最简分数,又称既约分数,如2/3,8/9,3/8等。方法一:求分子小于40的最简分数,对分子采用穷举的方法。根据最简分数定义知:分子分母的最大公约数为1,利用最大公约数的方法,判定分子与40......
  • 打卡 c语言趣味编程 列出真分数序列
    问题描述:按递增顺序依次列出所有分母为40,分子小于40的最简分数。分子、分母只有公因数1的分数叫做最简分数或者说分子和分母是互质数的分数,叫做最简分数,又称既约分数,如2/3,8/9,3/8等。思路:求分子小于40的最简分数,对分子采用穷举的方法。根据最简分数定义知:分子分母的......
  • 将真分数分解为埃及分数
    自然语言解决问题:真分数(aproperfraction):分子比分母小的分数,叫做真分数。真分数的分数值小于1。如1/2,3/5,8/9等。分子是1的分数,叫单位分数。古代埃及人在进行分数运算时,只使用分子是1的分数。因此这种分数也叫做埃及分数,或者叫单分子分数。如8/11=1/2+1/5+1/55+1/110。我......
  • #yyds干货盘点# LeetCode程序员面试金典:分数到小数
    1.简述:给定两个整数,分别表示分数的分子 numerator和分母denominator,以字符串形式返回小数。如果小数部分为循环小数,则将循环的部分括在括号内。如果存在多个答案,只需返回任意一个。对于所有给定的输入,保证答案字符串的长度小于104。 示例1:输入:numerator=1,denominat......
  • day 35 列出真分数序列
    1.从1遍历到40;2.若与40的最小公因数为1则输出 #include<iostream>usingnamespacestd;intg(intm,intn){if(m<m){swap(m,n);}intt=1;while(t){t=m%n;m=n;n=t;}returnm;}intmain(){intnum=0;for(inti=1;i<40;i++){if(g(40,i)==1){printf("%2d/40......
  • DolohinScheduler 分布式任务调度框架 代码流程分解
    一、DS-API模块-执行工作流 -定时任务执行 更新schedule参数 -/schedule新增schedule参数做了什么事? 将schedule参数用ScheduleParam类进行解析 有效性校验,而后解析保存到t_ds_schedules表内,更新t_ds_process_definition表 -/onlin......
  • 输出精确分数
    一问题描述输入分数输出他的精确值二设计思路将除法的结果存入数组,再将取余的数*10存入分子从新循环。三程序流程图 四伪代码实现#include<iostream>usingnamespacestd;intmain(){ intm,n,x,y; cin>>m>>n; inta[100]; for(inti=0;i<=100;i++){ x=m/n; y=m%n; a......
  • 分数比较
    一问题描述输入两个分数比较他们的大小二设计思路将分母换成相同的比较之后的分子的大小三程序流程图 四伪代码实现#include<iostream>usingnamespacestd;intmain(){ intx,y,m,n; cin>>x>>y; cin>>m>>n; if(x*n>m*y){ cout<<m<<"/"<<n<<"<......
  • 基于奇异值分解的点云配准RT计算原理
    问题描述假设在\(d\)维空间\(\mathbb{R}^d\)中,存在两个对应点集合\(P=\left\{{{{\mathbf{p}}_1},{{\mathbf{p}}_2},\cdots,{{\mathbf{p}}_n}}\right\}\),\(Q=\left\{{{{\mathbf{q}}_1},{{\mathbf{q}}_2},\cdots,{{\mathbf{q}}_n}}\right\}\),其中\(......