uva11809浮点数 题目分析:第三章3-12 如果每组数都要计算比较找到对应的m和e运算量太大,所以先打表,涉及浮点数表示的一些数学知识。 假设当前一层M和E的值为m和e,它们的位数分别为i和j。 首先计算m的值,用二进制表示的话,m的值为0.11…,也就是m = 2^(-1) + 2^(-2) + … + 2^(-1 - i)(...
③考虑精度 浮点数据的精度,以及题目要求的精度,等等,因此对应数组中的数据,和B未必严格相等,要做1e-4的精度处理 ④特殊情况的考虑: 题目只是保证输入中 A范围为(0, 10),而不是我们按照十进制的数据规则期待的[1,10),那么对于(0,1)的数据情况,就需要先变成[1,10)这个范围了(应先做这个处理: A *= 10...
输入科学计数法的十进制 跟 二进制数 作比较,(注意题意是正数,按正规数格式来 所以小数是以0.1开始 所以尾数尾数起始是1) 思想: 打表,C D 和 表里作比较,如果小于即可输出下标 思路: A * 2^B = C * 10^D 取对数 log10(A) + B * log10(2) = log10(C) + D; 令X = log10(A) + B * ...
UVA - 11809 思路&实现 这道题首先的突破口在于,给出的十进制数过于巨大,不仅 long long 很难存下,而且就算存下来,处理成浮点数还是非常麻烦的。所以,应当...
UVA 11809 - Floating-Point Numbers 好了,两张贴图扔上来了(第一次试),大概说一下什么意思,浮点数的储存方式(阶码和尾数,尾数是少一个1的,阶码有表示正负的0/1),然后举个栗子姐姐:double是8个字节,我们现在随便malloc,然后尾数和阶码的数量随便定(0,9闭区间和1,30闭区间)我们输入一个最大值,再去判定...
uva11809floating-point numbers浮点数 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=93800#problem/L 题意:输入表示尾数位数为M阶码尾数为E的最大浮点数AeB的A和B,输出M和E。 思路:M的范围为0到9,E的范围为1到30,打表储存其对应的A和B:尾数表示的数m=1-2^(-1-M),阶码表示的数e=2^...
UVA 11809 Floating-Point Numbers 题目链接:https://vjudge.net/problem/UVA-11809 题目翻译摘自《算法禁赛入门经典》 题目大意 计算机常用阶码-尾数的方法保存浮点数。如图所示,如果阶码有 6 位,尾数有 8 位, 可以表达的最大浮点数为0.1111111112∗211111120.1111111112∗21111112。注意小数点后第一位必须为 1...
一:题目 尴尬的非会员水印 二:题目摘要 1.int和float比较 int共32位,可以表示的最大的数为2^32次方 float虽然也是32位,但是是以指数形式保存,指数占8位(含符号),最大127,则表示最大数为2^127,可以表示到10^38次方数 2.float在内存中存在形式
UVA - 11809 Floating-Point Numbers #include<bits/stdc++.h>#defineDET 1e-4usingnamespacestd;doubleA[16][64];longlongintB[16][64];voidinit(){for(inti =0; i <=9; i++){for(intj =1; j <=30; j++){doubleE =1-pow(2, -(i+1));longlongintM =pow(2, j) -1;doubleX =log...
Floating-Point Numbers, UVa11809 文章末尾附上英文题目 这道题在“紫书”的第三章,难度应该不大(水题),可是做了好久…… 题目大意 计算机用阶码-尾数的方式保存浮点数。 如图,尾数(Mantissa)有8位,阶码(exponent)有6位,可以表示的最大浮点数为0.1111111112∗21111112。(文中所有数的下标表示进制,如前面的...