蓝桥杯 n进制小数
n进制小数
将任意十进制正小数分别转换成2,3,4,5,6,7,8,9进制正小数,小数点后保留8位,并输出。例如:若十进制小数为0.795,则输出:
十进制正小数 0.795000 转换成 2 进制数为: 0.11001011
十进制正小数 0.795000 转换成 3 进制数为: 0.21011011
十进制正小数 0.795000 转换成 4 进制数为: 0.30232011
十进制正小数 0.795000 转换成 5 进制数为: 0.34414141
十进制正小数 0.795000 转换成 6 进制数为: 0.44341530
十进制正小数 0.795000 转换成 7 进制数为: 0.53645364
十进制正小数 0.795000 转换成 8 进制数为: 0.62702436
十进制正小数 0.795000 转换成 9 进制数为: 0.71348853
以下代码提供了这个功能。其中,dTestNo表示待转的十进制小数。iBase表示进制数。请填写缺失的部分。
void fun(double dTestNo, int iBase)
{
int iT[8];
int iNo;
printf("十进制正小数 %f 转换成 %d 进制数为: ",dTestNo, iBase);
for(iNo=0;iNo<8;iNo++)
{
dTestNo *= iBase;
iT[iNo] = ________________;
if(___________________) dTestNo -= iT[iNo];
}
printf("0.");
for(iNo=0; iNo<8; iNo++) printf("%d", iT[iNo]);
printf("\n");
}
void main ( )
{
double dTestNo= 0.795;
int iBase;
for(iBase=2;iBase<=9;iBase++)
fun(dTestNo,iBase);
printf("\n");
}
代码:
#include<iostream>
#include<cstring>
#include<cmath>
using namespace std;
void fun(double dTestNo,int iBase)
{int iT[8];int iNo;printf("十进制正小数 %f 转换成 %d 进制为:",dTestNo,iBase);for(iNo=0;iNo<8;iNo++){dTestNo *=iBase;iT[iNo]=floor(dTestNo); //cmath中的向下取整函数floor(),向上取整为ceil()if(iT[iNo]<iBase){dTestNo-=iT[iNo];}}printf("0.");for(iNo=0;iNo<8;iNo++){printf("%d",iT[iNo]);}printf("\n");
}void main()
{double dTestNo=0.795;int iBase;for(iBase=2;iBase<=9;iBase++){fun(dTestNo,iBase);}printf("\n");
}
蓝桥杯 n进制小数相关推荐
- 蓝桥杯_16进制转8进制算法
问题描述给定n个十六进制正整数,输出它们对应的八进制数.输入格式输入的第一行为一个正整数n (1<=n<=10).接下来n行,每行一个由0~9.大写字母A~F组成的字符串,表示要转换的十六 ...
- 准备蓝桥杯--dyx--十进制转换十六进制
问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15.十六进制的计数方法是满1 ...
- 蓝桥杯-python-十进制转十六进制-字母大小写转换|CSDN创作打卡
资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式.它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符 ...
- 蓝桥杯九进制转换为十进制
一.题目描述 二.解题思路 这个再简单不过了 将2*9的0次方+ 2 * 9的1次方 + 2* 9的3次方 = 1478 然后直接输出就好了 三.代码部分 #include <iostream& ...
- 十进制小数转换为R进制小数
十进制小数转R进制小数,方法为乘R取整,每次乘以相应之后基数后取结果的整数部分即可.需要注意的是并非所有的十进制小数都能完全转化为R进制小数,这时就需要取近似值. 例: 0.9032D转化成16进制小 ...
- 【蓝桥java】进制与整除之天平秤重
题目: 用天平称重时,我们希望用尽可能少的砝码组合称出尽可能多的重量. 如果只有5个砝码,重量分别是1,3,9,27,81 则它们可以组合称出1到121之间任意整数重量(砝码允许放在左右两个盘中). ...
- 10进制小数转化为任意进制小数
将任意十进制正小数分别转换成2,3,4,5,6,7,8,9进制正小数,小数点后保留8位,并输出.例如:若十进制小数为0.795,则输出: 十进制正小数 0.795000 转换成 2 进制数为: 0.1 ...
- Python四位一并法2进制小数转16进制数
下面是2进制整数或小数转成16进制数的代码 首先输入一个二进制字符串(正数),有无小数点都可,定义一个函数按四位分割. b=input("Please input a binary numb ...
- php 进制 小数,小数进制转换
二进制数与十进制数如何转换: (1) 二进制数-→十进制数 对于较小的二进制数: 对于较大的二进制数: 方法1:各位上的数乘权求和??例如: (101101)2=1×25+0×24+1×23+1×22 ...
最新文章
- BERT, ELMo, GPT-2: 这些上下文相关的表示到底有多上下文化?
- Android多媒体之GLES2战记第四集--移形换影
- 计算机显示时区怎么更改,电脑如何设置显示多时区时间?
- 从来富贵险中求 为何低学历的人能成为亿万富翁
- NYOJ 155 求高精度幂
- Final Cut Pro X如何去视频水印/视频去水印
- POJ 3744:Scout YYF I 概率DP+特征方程+快速幂
- oracle rodo 查看大小,Exadata — platforma bazodanowa | Oracle Polska
- 7.18 day13
- IIS和Tomcat共用80端口的解决方案
- 使用树莓派 Raspberry Pi 播放豆瓣 FM
- Vmware Workstation虚拟机规划
- Deqin-python计算器
- android 极光推送1011,极光推送 · OpenKit使用手册 · 看云
- PCB 设计流程(allegro 为例)
- speedoffice(Excel)表格如何添加边框?
- 银行面试之MySQL数据库
- 亲测有效!解决文件名过长无法删除的情况
- 淘宝sku API 接口(PHP示例)
- Linux下重启磁盘盘符会变,linux系统 重启盘符错乱问题
热门文章
- 51单片机有几个通用io口_51单片机IO口的四种使用方法
- php 执行 javascript,Bash/PHP/Javascript:如何运行输出javascript的php文件,并执行该javascript?...
- java 6 基础教程_Java小白入门教程(6)——循环语句
- mac lion 安装 mysql_mac osx下安装mysql
- 【渝粤教育】 国家开放大学2020年春季 1069中央银行理论与实务 参考试题
- 【渝粤教育】电大中专药剂学基础知识 (3)作业 题库
- 【渝粤题库】陕西师范大学164212 国际贸易实务 作业(专升本)
- 【指南】远程抄表系统(AMR/AMI)中无线模块选型
- 全局变量求平均分最高分最低分_想去江苏读大学,2021届山东考生需要多少分?...
- php 有 stringbuffer,String、StringBuffer、StringBulider三者介绍