7-4 数字加密分数 10

输入一个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10取余,做为该位上的新数字,最后将千位和十位上的数字互换,百位和个位上的数字互换,组成加密后的新四位数。例如输入1257,经过加9取余后得到新数字0146,再经过两次换位后得到4601。

输入格式:

输入在一行中给出一个四位的整数x,即要求被加密的数。

输出格式:

在一行中按照格式“The encrypted number is V”输出加密后得到的新数V。

输入样例:

1257

输出样例:

The encrypted number is 4601

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

#include<stdio.h>
int main()
{
    int number;
    int i;
    int a[4]={0};//数组初始化
    int b,c,d,e;//个、十、百、千
    int sum;
    scanf("%d",&number);//是四位数字
    for(i=0;i<4;i++)
    {
        a[i]=number%10;
        number=number/10;
        //从个位数字开始倒序输出,把四位数代入数组中
    }
     b=(a[0]+9)%10;//个
     c=(a[1]+9)%10;//十
     d=(a[2]+9)%10;//百
     e=(a[3]+9)%10;//千
     sum=c*1000+b*100+e*10+d;//注意乘的顺序
     printf("The encrypted number is %04d",sum);
    return 0;
}

好的,我们来看一下这道编程题的具体解答以及分析过程: ### 题目解析 我们需要编写一个程序实现对给定整数的加密操作。根据题目中的加密规则: ``` 加密结果 = (整数 * 10 + 5) / 2 + 3.14 ``` 需要注意的是,最终输出的结果需要是一个**整数**,因此我们在计算过程中可能会涉及到浮点运算,但在最后输出的时候要将结果转化为整数。 #### 示例计算 以 `整数=100` 为例: 1. 整数乘以10得到:`100 * 10 = 1000` 2. 再加5得到:`1000 + 5 = 1005` 3. 将其除以2得到:`1005 / 2 = 502.5` 4. 最后再加上3.14:`502.5 + 3.14 ≈ 505.64` 5. 因为要求结果是整数,所以取整即可得出:`505` --- ### 程序设计思路 按照上述步骤一步步实现功能: 1. 定义初始值为 `100` 的变量; 2. 根据公式完成计算; 3. 输出原始数据和加密后的结果; 以下是Python语言下的完整代码示例: ```python # 原始数据 original_number = 100 # 计算加密结果 encrypted_result = int((original_number * 10 + 5) / 2 + 3.14) # 打印输出 print("原始数据:%d" % original_number) print("加密结果:%d" % encrypted_result) ``` 运行该段代码可以得到预期的输出内容: ``` 原始数据:100 加密结果:505 ``` --- ### 注意事项 - **数据类型转换**:由于涉及了小数运算,在最后一步需明确地把结果转成整型。 - **四舍五入处理**:如果存在类似如 `.5` 或者其他接近边界的情况,默认采用向下取整的方式处理(即使用int()函数)。若希望调整为更精确的四舍五入,则可以用round()替代int()来进行封装转化。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值