1024 科学计数法 (20 分)

简介: 1024 科学计数法 (20 分)

1024 科学计数法 (20 分)


科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指数部分的正负号即使对正数也必定明确给出。


现以科学计数法的格式给出实数 A,请编写程序按普通数字表示法输出 A,并保证所有有效位都被保留。

输入格式:

每个输入包含 1 个测试用例,即一个以科学计数法表示的实数 A。该数字的存储长度不超过 9999 字节,且其指数的绝对值不超过 9999。

输出格式:

对每个测试用例,在一行中按普通数字表示法输出 A,并保证所有有效位都被保留,包括末尾的 0。

输入样例 1:

+1.23400E-03

输出样例 1:

0.00123400

输入样例 2:

-1.2E+10

输出样例 2:

-12000000000


E<0的时候很简单,直接在小数点前面补0,但是E>=0时要分2种情况:在后面补0和移动小数点。


 

//
 
#include<iostream>
#include<string>
using namespace std;
int main()
{
  string n;
  cin >> n;
  int n_len = n.length();
  string s = n.substr(1, n.find('E')-1); //s是E之前的字符串
  string s2 = n.substr(n.find('E')+1, n_len); //s2是E之后的字符串
  int n_s2 = stoi(s2);
 
 
  //输出正常数字
  //负号
  if (n[0] == '-')
    cout << '-';
  // E<0,只要在小数点前加0
  if (n_s2 < 0) {
    cout << "0.";
    for (int i = 1; i < -n_s2; i++)
      cout << 0;
    for (int i = 0; i < s.length(); i++) {
      if (s[i] != '.') {
        cout << s[i];
      }
    }
  }
  //E>=0时,要移动小数点,在补0
  else  {
    cout << s[0];
    int cnt, j;
    for (j = 2, cnt = 0; j < s.length() && cnt < n_s2; j++, cnt++)
      cout << s[j];
    //j == s.length 说明s中的数字已经输出完,后面位数用0补
    if (j == s.length()) {            
      for (int k = 0; k < n_s2 - cnt; k++)
        cout << 0;
    }
    //否则,小数点移动到这里,继续输出s剩下的数字
    else {
      cout << '.';
      cout << s.substr(j, s.length());
    }
  }
 
  return 0;
}


//感觉还可以简化


相关文章
|
XML 存储 jenkins
【实战】手把手教你部署敏捷数据开发环境
关注公众号“达摩院首座”,了解开发者最真实生活
564 0
【实战】手把手教你部署敏捷数据开发环境
|
4天前
|
弹性计算 人工智能 安全
云上十五年——「弹性计算十五周年」系列客户故事(第二期)
阿里云弹性计算十五年深耕,以第九代ECS g9i实例引领算力革新。携手海尔三翼鸟、小鹏汽车、微帧科技等企业,实现性能跃升与成本优化,赋能AI、物联网、智能驾驶等前沿场景,共绘云端增长新图景。
|
10天前
|
存储 弹性计算 人工智能
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
2025年9月24日,阿里云弹性计算团队多位产品、技术专家及服务器团队技术专家共同在【2025云栖大会】现场带来了《通用计算产品发布与行业实践》的专场论坛,本论坛聚焦弹性计算多款通用算力产品发布。同时,ECS云服务器安全能力、资源售卖模式、计算AI助手等用户体验关键环节也宣布升级,让用云更简单、更智能。海尔三翼鸟云服务负责人刘建锋先生作为特邀嘉宾,莅临现场分享了关于阿里云ECS g9i推动AIoT平台的场景落地实践。
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
|
1天前
|
云安全 人工智能 安全
Dify平台集成阿里云AI安全护栏,构建AI Runtime安全防线
阿里云 AI 安全护栏加入Dify平台,打造可信赖的 AI
|
9天前
|
人工智能 自然语言处理 自动驾驶
关于举办首届全国大学生“启真问智”人工智能模型&智能体大赛决赛的通知
关于举办首届全国大学生“启真问智”人工智能模型&智能体大赛决赛的通知
|
4天前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
447 11
|
3天前
|
编解码 文字识别 算法
一张图能装下“千言万语”?DeepSeek-OCR 用视觉压缩长文本,效率提升10倍!
一张图能装下“千言万语”?DeepSeek-OCR 用视觉压缩长文本,效率提升10倍!
351 10
|
9天前
|
编解码 自然语言处理 文字识别
Qwen3-VL再添丁!4B/8B Dense模型开源,更轻量,仍强大
凌晨,Qwen3-VL系列再添新成员——Dense架构的Qwen3-VL-8B、Qwen3-VL-4B 模型,本地部署友好,并完整保留了Qwen3-VL的全部表现,评测指标表现优秀。
672 7
Qwen3-VL再添丁!4B/8B Dense模型开源,更轻量,仍强大