数组-14. 数字加密(15)

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

输入格式:

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

输出格式:

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

输入样例:

1257

输出样例:

The encrypted number is 4601
 1 #include <iostream>
 2 #include <stdio.h>
 3 #include <math.h>
 4 #include <string.h>
 5 #include <stdlib.h>
 6
 7 using namespace::std;
 8
 9 int main(){
10
11       int n;
12       scanf("%d",&n);
13       int a[4]={0};
14       int temp=n;
15       a[3]=temp%10;
16       int i=2;
17       while((temp=temp/10)!=0)
18       {
19           a[i]=temp%10;
20           i--;
21       }
22      for(i=0;i<4;i++)
23      {
24          a[i]=(a[i]+9)%10;
25      }
26      temp=a[3];
27      a[3]=a[1];
28      a[1]=temp;
29      temp=a[2];
30      a[2]=a[0];
31      a[0]=temp;
32      printf("The encrypted number is ");
33      for(i=0;i<4;i++)
34      {
35          printf("%d",a[i]);
36      }
37       return 0;
38 }
时间: 2024-12-25 22:54:54

数组-14. 数字加密(15)的相关文章

数组-14. 数字加密

1 /* 2 * Main.c 3 * E14-数组-14. 数字加密 4 * Created on: 2014年8月25日 5 * Author: Boomkeeper 6 ********测试通过******* 7 */ 8 9 #include <stdio.h> 10 11 int main(void) { 12 13 int in; 14 int num[5]; 15 16 scanf("%4d", &in); 17 18 //拆分4位数的各位数 19 i

PAT 1048. 数字加密(20)

本题要求实现一种数字加密方法.首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余--这里用J代表10.Q代表11.K代表12:对偶数位,用B的数字减去A的数字,若结果为负数,则再加10.这里令个位为第1位. 输入格式: 输入在一行中依次给出A和B,均为不超过100位的正整数,其间以空格分隔. 输出格式: 在一行中输出加密后的结果. 输入样例: 1234567 368782971 输出样例: 3695Q8118代码写

调整数组中数字的顺序,使得所有奇数位于数组的前半部分

输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分.要求时间复杂度为O(n),不要求保留数组元素的相对位置. 解析:可以维护两个指针:第一个指针初始化为数组的第一个数字,它只向后移动:第二个指针初始化为数组的最后一个数字,它只向前移动.在两个指针相遇之前,第一个指针总是位于第二个指针的前面.如果第一个指针指向的数字是偶数而第二个指针指向的数字是奇数,就交换这两个数字. 方法一: void patition(ref int[] arr, int n)

PAT 乙级 1048 数字加密(20) C++版

1048. 数字加密(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求实现一种数字加密方法.首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余--这里用J代表10.Q代表11.K代表12:对偶数位,用B的数字减去A的数字,若结果为负数,则再加10.这里令个位为第1位. 输入格式: 输入在一行中依次给出A和B,均为不

PAT-乙级-1048. 数字加密(20)

1048. 数字加密(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求实现一种数字加密方法.首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余——这里用J代表10.Q代表11.K代表12:对偶数位,用B的数字减去A的数字,若结果为负数,则再加10.这里令个位为第1位. 输入格式: 输入在一行中依次给出A和B,均为不

1048 数字加密

本题要求实现一种数字加密方法.首先固定一个加密用正整数A,对任一正整数B,将其每1位数字与A的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对13取余--这里用J代表10.Q代表11.K代表12:对偶数位,用B的数字减去A的数字,若结果为负数,则再加10.这里令个位为第1位. 输入格式: 输入在一行中依次给出A和B,均为不超过100位的正整数,其间以空格分隔. 输出格式: 在一行中输出加密后的结果. 输入样例: 1234567 368782971 输出样例: 3695Q8118 1

PAT B1048 数字加密

PAT B1048 数字加密 题目描述: 本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余——这里用 J 代表 10.Q 代表 11.K 代表 12:对偶数位,用 B 的数字减去 A 的数字,若结果为负数,则再加 10.这里令个位为第 1 位. 输入格式: 输入在一行中依次给出 A 和 B,均为不超过 100 位的正整数,其间以空格分隔. 输出格式: 在一行中输出加密

PAT 1048 数字加密(字符串)

本题要求实现一种数字加密方法.首先固定一个加密用正整数 A,对任一正整数 B,将其每 1 位数字与 A 的对应位置上的数字进行以下运算:对奇数位,对应位的数字相加后对 13 取余——这里用 J 代表 10.Q 代表 11.K 代表 12:对偶数位,用 B 的数字减去 A 的数字,若结果为负数,则再加 10.这里令个位为第 1 位. 输入格式: 输入在一行中依次给出 A 和 B,均为不超过 100 位的正整数,其间以空格分隔. 输出格式: 在一行中输出加密后的结果. 输入样例: 1234567 3

循环-20. 猜数字游戏(15)

1 #include<iostream> 2 using namespace std; 3 int main(){ 4 int a,n,g,i=1; 5 cin>>a>>n; 6 while(cin>>g){ 7 if(i>n||g<0){ 8 cout<<"Game Over"<<endl; 9 break; 10 } 11 else{ 12 if(g>a) 13 cout<<&qu