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

将真分数分解为埃及分数

时间:2023-05-24 16:55:57浏览次数:41  
标签:分数 分子 真分数 分解 1d printf 分母

自然语言解决问题:

真分数 (a proper fraction): 分子比分母小的分数,叫做真分数。真分数的分数值小于1。如 1/2,3/5,8/9等。
分子是 1的分数,叫单位分数。古代埃及人在进行分数运算时,只使用分子是 1的分数。因此这种分数也叫做埃及分数,或者叫单分子分数。
如8/11=1/2+1/5+1/55+1/110。我们约定分子分母都是自然数,分数的分子用 a 表示,分母用b表示。若真分数的分子 a 能整除分母 b,则真分数经过化简就可以得到埃及分数:若真分数的分子不能整除分母,则可以从原来的分数中分解出一个分母为 (b/a) +1 的埃及分数。用这种方法将剩余部分反复分解,最后可得到结果。

流程图:

 

具体代码:

#include<stdio.h>
int main(){
long int a,b,c;
printf("Please enter a optional fraction(a/b):");
scanf("%1d/%1d",&a,&b);
printf("It can be decomposed to:");
while(1){

if(b%a)
c=b/a+1;
else
{

c=b/a;
a=1;
}
if(a==1)
{
printf("1/%1d\n",c);
break;
}
else
printf("1/%1d +",c);
a=a*c-b;
b=b*c;
if(a==3&&b%2==0)
{

printf("1/%1d + 1/%1d\n",b/2,b);
break;
}


}
}

标签:分数,分子,真分数,分解,1d,printf,分母
From: https://www.cnblogs.com/Mini-Q/p/17428855.html

相关文章

  • #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\}\),其中\(......
  • python day 06 部分循环和部分数据类型内置方法
    while+continue#请听题:循环打印出0-10之间的数字#请听题:循环打印出0-9之间的数字,但是不打印6count=0whilecount<10:ifcount==6:count+=1continue#是跳出本次循环,整体循环还在继续print(count)count+=1while+elsecount......
  • 将真分数转化为埃及分数
    一问题描述现输入一个真分数,请将该分数分解为埃及分数。2二问题分析真分数(aproperfraction):分子比分母小的分数,叫做真分数。真分数的分数值小于1.如1/2,3/5,8/9等。分子是1的分数,叫单位分数。古代埃及人在进行分数运算时,只使用分子是1的分数。因此这种分数也叫做埃及分数,或者叫单......
  • 玉米根际微生物可分解土壤有机质、促进植物的养分吸收,还可以做什么?
    除了分解土壤有机质和促进植物的养分吸收,玉米根际微生物还可以发挥以下功能:生物控制植物病原菌:一些根际微生物具有抗菌活性,可以抑制植物病原菌的生长和繁殖,从而减少植物病害的发生。这些有益微生物可以通过竞争营养资源、产生抗生素和产生抗菌物质等方式发挥生物防治的作用。......
  • 分解商业周期时间序列:线性滤波器、HP滤波器、Baxter滤波器、Beveridge Nelson分解等去
    原文链接:http://tecdat.cn/?p=23000最近我们被客户要求撰写关于分解商业周期时间序列的研究报告,包括一些图形和统计输出。本文包含各种过滤器,可用于分解南非GDP的方法。我们做的第一件事是清除当前环境中的所有变量。这可以通过以下命令进行分解南非GDP数据本文包含各种过滤器......