题库练习 数字反转(升级版)
← 上一题 下一题 →

A2123 | 数字反转(升级版)

时间限制1s
内存限制128MB
通过 / 提交0/0

题目描述

**以下为原题面,仅供参考:**

给定一个数,请将该数各个位上数字反转得到一个新数。

这次与 NOIp2011 普及组第一题不同的是:这个数可以是小数,分数,百分数,整数。整数反转是将所有数位对调;小数反转是把整数部分的数反转,再将小数部分的数反转,不交换整数部分与小数部分;分数反转是把分母的数反转,再把分子的数反转,不交换分子与分母;百分数的分子一定是整数,百分数只改变数字部分。整数新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零;小数新数的末尾不为 $0$(除非小数部分除了 $0$ 没有别的数,那么只保留1个 $0$);分数不约分,分子和分母都不是小数(约分滴童鞋抱歉了,不能过哦。输入数据保证分母不为 $0$),本次没有负数。
给定一个数,请将该数各个位上数字反转得到一个新数。

这次与 NOIp2011 普及组第一题不同的是:这个数可以是小数,分数,百分数,整数。

- 整数反转是将所有数位对调。

- 小数反转是把整数部分的数反转,再将小数部分的数反转,不交换整数部分与小数部分。

- 分数反转是把分母的数反转,再把分子的数反转,不交换分子与分母。

- 百分数的分子一定是整数,百分数只改变数字部分。

输入格式

一个实数 $s$

输出格式

一个实数,即 $s$ 的反转数

输入输出样例

输入 #1
5087462
输出 #1
2647805
输入 #2
600.084
输出 #2
6.48
输入 #3
700/27
输出 #3
7/72
输入 #4
8670%
输出 #4
768%
C++ 编辑器
输入
输出