高精度小数

中国大学MOOC-翁恺-C语言程序设计习题集-解答汇总 中国大学MOOC-翁恺-C语言程序设计习题集 PAT 习题集 02-0. 整数四则运算(10) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 乔林(清华大学) 本题要求编写程序,计算2个正整数的和、差、积、商并输出。题目保证输入和输出全部在整型范围内。 输入格式: 输入在一行中给出2... 阅读详情

题目内容:

由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法。

(0,1)之间的任何浮点数都可以表达为两个正整数的商,为了表达这样两个数的商,可以将相除的结果以多个整数来表示,每个整数表示结果的一位。即商的第一位用一个整数来表示,第二位用另一个整数来表示,以此类推,就可以输出一个高精度的除法结果了。

如16/19的结果0.8421052631...就可以依次输出8、4、2、1、0、5、2、6、3、1...。

而除法的过程,则可以模仿人工列竖式做除法的方式,先将被除数乘以10,得到一位商以后,将余数乘以10作为下一轮计算的被除数:

    160/19->8余8

    80/19->4余4

    ...

当某次余数为0时,则表明除尽。

现在,请写一个程序,输入一个分数,计算出它的小数形式。无论是否可以除尽,输出最多小数点后200位。


输入格式:

形如

    a/b

的两个数,其中10<=a<b<100。也就是说,这个小数一定是小于1的正数。


提示:输入是带着两个数中间的“/”的,所以scanf应采用“%d/%d”这样的输入格式。


输出格式:

形如

    0.xxxxxxxxx

的小数,小数点后最多200位。输出结束的时候要带着回车换行。如果a/b是一个有限不循环小数,则输出完所有的有效位就可以了,不需要再输出后面的0来凑满200位。


输入样例:

16/19


输出样例:

0.84210526315789473684210526315789473684210526315789473684210526315789473684210526315789473684210526315789473684210526315789473684210526315789473684210526315789473684210526315789473684210526315789473684


时间限制:500ms内存限制:32000kb

#include <stdio.h>
//高精度小数
int main()
{
	int a,b,sum=0;
	scanf("%d/%d",&a,&b);
	printf("0.");
	do
	{
		sum+=1;
		printf("%d",a*10/b);
		a=a*10%b;	
	}while(a!=0 && sum!=200);
	printf("\n");
	return 0;
} 



C语言趣味问题系列【4】计算分数的精确值 1. 问题描述 计算分数的精确值 在C语言中, int m, n; res = m/n; // res = 0 要求不通过(float)强制转换,计算一些真分数的值,如果是循环小数,就截断在循环点之前,如1/3=0.3333… 在这里就表示为0.3就可以了。 2. 问题分析 根据除法的规则,以1/6为例 Step 1. 1 ÷ 6 = 0 … 1 小数点前一位就是商——0 Step 2. 1 * 10 = 10 余数乘上10 10 ÷ 6 = 1 … 4 小数点后第一位就是商——1 Step 3. 阅读详情

相关推荐

c语言:高精度小数(10分)

题目内容: 由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法。 (0,1)之间的任何浮点数都可以表达为两个正整数的商,为了表达这样两个数的商,可以将相除的结果以多个整数来表示,每个整数表示结果的一位。即商的第一位用一个整数来表示,第二位用另一个整数来表示,以此类推,就可以输出一个高精度的除法结果了。 如16/19的结果0.8421052631…就可以依次输出8、4、2、1、0、5、2、6、3、1…。 而除法的过程,则可以模仿人工列竖式做除法的方式,先将被除

weixin_46009474的博客 4102

浙大OJ网址及ACM题目分类

浙大OJ网址及ACM题目分类

lmp890的专栏 3363

带小数点的高精度运算

前段日子,组长在写一个学科测试的排名逻辑,也不知怎么的,就涉及了大量的小数运算,可能乘上一个小数,然后再除了很大的数字,但是最后的结果,php只给了一个整数,而忽略了小数。然后组长问我,我也一脸懵逼的。于是从网上找呀找,得知高精度运算时,可以使用bc库带的一些高精度的运算方法,如下:(复制过来的)bcadd — 将两个高精度数字相加 bccomp — 比较两个高精度数字,返回-1, 0, 1 b

程序媛的日常 1613

高精度小数相加

本来x

被虐的goshawk 1069

C实现高精度小数

高精度小数(10分) 题目内容: 由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法。 (0,1)之间的任何浮点数都可以表达为两个正整数的商,为了表达这样两个数的商,可以将相除的结果以多个整数来表示,每个整数表示结果的一位。即商的第一位用一个整数来表示,第二位用另一个整数来表示,以此类推,就可以输出一个高精度的除法结果...

Dev-Liangjian的博客 1285

【C语言】高精度小数

中国大学MOOC平台浙江大学翁恺老师,“程序设计入门——C语言” 第6周编程练习 高精度小数

hnustcjj的博客 2204

C语言——高精度小数

算法题目已给出了。。 题目内容: 由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法。 (0,1)之间的任何浮点数都可以表达为两个正整数的商,为了表达这样两个数的商,可以将相除的结果以多个整数来表示,每个整数表示结果的一位。即商的第一位用一个整数来表示,第二位用另一个整数来表示,以此类推,就可以输出一个高精度的除法结果了。 如16/19的结

心丶木的博客 9489

昇腾910安装驱动出错,降低Centos7.6的内核版本

Centos7.6 启动内核修改,解决昇腾910安装驱动错误的问题。

深蓝 3300

【白书之路】 分数化小数 高精度小数运算

2-5:分数化小数 输入和正整数a,b,c,输出a/b的小数形式,精确到小数点后c位。a,b 样例输入: 1 6 4 0 0 0 样例输出 Case 1: 0.1667 高精度小数运算,注意小数的运算原理,模拟手算,关键是最后的进位要回传给整数部分,使用数组保存小数部分。 #include #include using namespace std; int get_

colorfulshark 830

单细胞测序中pseudo bulk差异分析的实战指南与审稿人应对策略

本文提供了单细胞测序中pseudo bulk差异分析的完整实战指南,旨在应对审稿人对样本量统计效力的质疑。文章详细解析了从数据聚合、使用DESeq2进行差异分析,到与单细胞水平结果进行交叉验证的全流程,并给出了应对常见问题与撰写回复的策略,帮助研究者提升结论的稳健性与说服力。

weixin_29214199的博客 820

西门子S7-200 SMART PLC高速计数器与增量式编码器实战配置指南

在工业自动化控制系统中,传感器是将物理量转换为电信号的关键组件,其中编码器作为核心的位置与速度检测元件,其工作原理基于光电或磁电效应,将机械位移转换为脉冲序列。增量式编码器通过输出相位差90度的A/B两相脉冲,不仅能实现精确的位移测量,还能通过相位关系自动判别运动方向,并通过倍频技术提升分辨率。其技术价值在于为PLC等控制器提供了实时、高精度的位置反馈,是实现闭环控制、提升系统精度与可靠性的基础。在包装机械、物料输送、绕线设备等应用场景中,编码器与PLC高速计数器的协同工作是实现精确定位、定长切割与速度控制

weixin_29178069的博客 395

使用c++实现高精度小数计算(30位小数)

/ 多保留几位提高精度。" << endl;cout << "结果: " << result << endl;cout << "无效运算符!" << endl;cout << "请输入运算符(+ - * /): ";cout << "是否继续计算?cout << "请输入第一个高精度小数: ";cout << "请输入第二个高精度小数: ";" << endl;// 字符串减法(假设num1 >= num2)// 询问是否继续计算。// 字符串除法(保留SCALE位)// 判断字符串大小(忽略符号)

2301_80261407的博客 1042

人大金仓的‘影子表’sys_user:搞懂Schema优先级,告别字段不存在的报错

本文深入解析人大金仓数据库中‘影子表’sys_user的Schema优先级问题,帮助开发者解决字段不存在的报错。通过分析Schema搜索路径机制,提供四种解决方案,包括连接时指定Schema、动态调整搜索路径、永久修改用户设置和使用完全限定表名,确保查询准确无误。

weixin_30329623的博客 596

高精度小数加法

高精度小数加法标签(空格分隔): 算法竞赛 高精度原题在HDU 1753.当时不知道这类题叫高精度运算,只觉得是大数的运算,于是将大数的四则运算起了个名字叫“大数全家桶”,现在想想也很好玩。 Problem Description 话说,经过了漫长的一个多月,小明已经成长了许多,所以他改了一个名字叫“大明”。 这时他已经不是那个只会做100以内加法的那个“小明”了,现在他甚至会

辣鸡的博客 3501

半导体领域知识 - 初级入门

半导体领域知识 - 初级入门 知识问答 1. 一个晶圆上根据芯片的大小,可以生产几百、几千、几万个芯片。如下图: 2. 8寸晶圆指的是什么?5nm工艺指的是什么? 8寸晶圆指的是直径为175mm(17.5cm)的晶圆,下面是6/812/18寸晶圆的尺寸以及相关发展历程。目前拥有12寸线的厂商只有5家,一个12寸晶圆厂的成本需要上百亿美金。 5nm工艺指的是在一个具体的芯片上,有很多微型结构(千万、亿级别的晶体管),这些核心基本单元MOS管的栅极宽度尺寸来衡量工艺的精细程度,如果是5nm就被称为5nm工艺

Hello World! 2万+

华为OD机试真题 新系统 - WIFI设备网络规划 (Java/Py/C/C++/Js/Go)

本文整理华为 OD 机试新系统机考真题库,涵盖高频考点精析与完整题目内容,提供 C 语言、Java、C++、Python、Go、JavaScript 多语言源码实现,搭配详细解题思路讲解,并支持在线 OJ 刷题练习,助力高效备考华为 OD 机试新系统。

算法大师! 2017

高精度加、减、乘、除及小数详解

关于高精度加、减、乘、除及小数的思想及代码模板

xiaozhu0602的博客 1159

CPA-7-资产减值

摘要:本文系统梳理了资产减值会计处理规范,涵盖六大要点:1)不同资产适用的减值准则(存货、长期资产、金融资产);2)减值测试触发条件与例外情形(商誉等需年度强制测试);3)存货可变现净值计算方法及特殊考量;4)可收回金额的双重判定标准(公允价值净额与现值孰高);5)资产组认定标准及减值分摊顺序(先商誉后按比例);6)含少数股东商誉的减值测试方法(需调整包含完全商誉的账面价值)。文中通过具体案例演示了合并报表中商誉减值的计算过程,强调比较基准应包含少数股东权益对应的商誉价值。

qq_34047402的博客 203

C语言高精度小数

题目内容: 由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法。 (0,1)之间的任何浮点数都可以表达为两个正整数的商,为了表达这样两个数的商,可以将相除的结果以多个整数来表示,每个整数表示结果的一位。即商的第一位用一个整数来表示,第二位用另一个整数来表示,以此类推,就可以输出一个高精度的除法结果了。 如16/19的结果0.8421052631...就可以依次输出8、4、2、1、0、5、2、6、3、1...。 而除法的过程,则可以模仿人工列竖式做除法

Shenrunchen的博客 753

“/usr/lib/wsl/wsl-setup“ failed, exiting

WSL2安装Ubuntu时出现"wsl-setup failed"错误的解决方法 摘要:当Windows用户名包含中文字符时,安装WSL2+Ubuntu会出现"wsl-setup failed"错误。本文提供两种解决方案:1)修改中文用户名(风险较大);2)通过命令手动配置。推荐第二种方法:先使用"wsl -l -v"查看Ubuntu名称,再通过"wsl -d Ubuntu20.04 -e /bin/bash"命令启动WSL2系

猿小白的博客 995

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

C语言 PTA 高精度小数

题目内容: 由于计算机内部表达方式的限制,浮点运算都有精度问题,为了得到高精度的计算结果,就需要自己设计实现方法。 (0,1)之间的任何浮点数都可以表达为两个正整数的商,为了表达这样两个数的商,可以将相除的结果以多个整数来表示,每个整数表示结果的一位。即商的第一位用一个整数来表示,第二位用另一个整数来表示,以此类推,就可以输出一个高精度的除法结果了。 如16/19的结果0.8421052631…就可以依次输出8、4、2、1、0、5、2、6、3、1…。 而除法的过程,则可以模仿人工列竖式做除法的方式,先将被除

pliang68的博客 630

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

高精度小数求和

高精度小数求和

m0_72720964的博客 249

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

java 高精度小数_Java中的高精度整数和高精度小数

在实际编码中,会遇到很多高精度的事例,比如,在计算金钱的时候就需要保留高精度小数,这样计算才不会有太大误差:在下面的代码中,我们验证了,当两个float型的数字相加,得到的结果和我们的预期结果是有误差的,为了减小和防止这种误差的出现,我们需要使用BigInteger类和BigDecimal类来计算。package com.ietree.base.number;import Java.math.Bi...

weixin_35804557的博客 449

高精度运算板子(包括小数的高精度乘方)

#include <iostream> #include <string> #include <algorithm> using namespace std; inline bool compare(string a,string b) { int i; ///消除前导0 for(i=0;a[i]=='0'&&i<a...

Spidy_harker的博客 549
上一篇: 分别以十进制、八进制和十六进制输出一个字符的ASCII
下一篇: 分解质因数
PAT-python-zjw
博客等级 码龄10年 381粉丝 408原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值