首页 > 试题广场 >

特殊的科学计数法

[编程题]特殊的科学计数法
  • 热度指数:11548 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\hspace{15pt}给定一个正整数 N(位数可达 10^5),请将其转写为科学计数法形式,形如:

a.b\times10^c

\hspace{15pt}具体而言,有如下要求:
\hspace{23pt}\bullet\, a[1,9] 之间的整数;
\hspace{23pt}\bullet\, b 为对 N 的第二位数字进行四舍五入后的小数部分(保留一位小数);
\hspace{23pt}\bullet\, c 为整数指数;
\hspace{23pt}\bullet\, 输出格式严格为 ``\text{a.b*10^c}``,无多余空格。

输入描述:
\hspace{15pt}一行输入正整数 N\left(10 ^2\leqq N\leqq10^{100000}\right),不含前导零。


输出描述:
\hspace{15pt}输出 N 的科学计数法表示 ``\text{a.b*10^c}``
示例1

输入

299792458

输出

3.0*10^8
示例2

输入

602214129000000000000000

输出

6.0*10^23
头像 Silencer76
发表于 2025-08-09 00:33:06
题目链接 特殊的科学计数法 题目描述 给定一个正整数 (位数可达 ),请将其转写为科学计数法形式,形如:a.b*10^e 具体而言,有如下要求: 为 到 之间的整数; 为对 的第二位数字进行四舍五入后的小数部分(保留一位小数); 为整数指数; 输出格式严格为 a.b*10^e,无多余 展开全文
头像 BraveCoder
发表于 2025-08-28 16:45:11
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); 展开全文
头像 牛客202971093号
发表于 2025-09-15 18:29:58
import java.text.DecimalFormat; import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(Strin 展开全文
头像 玄骨
发表于 2025-11-01 21:15:29
#include<bits/stdc++.h> using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(0); string s; cin>>s; in 展开全文
头像 yfyujiu
发表于 2026-01-31 00:20:26
本题最主要在于进位,已知N >= 100,因此至少有首位为d1,二位为d2,指数c至少为N的长度-1因为d2为对第二位数字进行四舍五入的小数部分,所以需要第三位d3判断是否进位,如果d3>=5,则d2 = d2 + 1,否则d2不变如果d2 == 10,那么进位给d1,d2变为0,d1 展开全文
头像 牛客469793929号
发表于 2025-06-26 10:55:41
import java.text.DecimalFormat; import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(Strin 展开全文
头像 carson_flute
发表于 2026-01-31 21:10:43
题目描述 本题是高精度字符串处理的题,难度简单 给定一个正整数 (位数可达 ),请将其转写为科学计数法形式: 要求: 为整数; 是对 的第二位数字四舍五入后保留的一位小数; 为整数指数; 输出格式严格为:a.b*10^c(无空格)。 输入保证 ,即 至少有 3 位,且无前导零。 展开全文
头像 Xiettt
发表于 2026-02-11 20:48:39
#include<bits/stdc++.h> using namespace std; using ll=long long; using ull=unsigned long long; using i128=__int128_t; using u128=__uint128_t; u 展开全文
头像 我是芭芭拉的狗
发表于 2025-12-24 19:38:32
n = input() c = len(n) - 1 x = int(n[1]) j = 0 if int(n[2]) >= 5: x = x + 1 if x == 10: x = 0 j = 1 z = int(n[0]) + j if z 展开全文
头像 pandaC222
发表于 2026-01-31 05:51:30
#include<bits/stdc++.h> using namespace std; #define int long long const int INF = 0x3f3f3f3f3f3f3f3f; void solve(){ string s;cin>>s; 展开全文