数字特征值

数字特征值,

标题内容:

对数字求特征值是常用的编码算法,奇偶特征是一种简易的特征值。对于三个整数,从个位伊始对各种人数字编号,个位是1号,12人是2号,就那样推算。这一个卡尺头在第n位上的数字记作x,如若x和n的奇偶性一样,则记录一个1,不然记下贰个0。遵照整数的顺序把对应位的象征奇偶性的0和1都记录下来,就造成了一个二进制数字。举例,对于342315,这么些二进制数字正是001101。

 

此间的计量能够用下边包车型客车报表来表示:

数字

3

4

2

3

1

5

数位

6

5

4

3

2

1

数字奇偶

数位奇偶

奇偶一致

0

0

1

1

0

1

二进制位值

32

16

8

4

2

1

 

根据二进制位值将1的位的位值加起来就获得了结果13。

 

您的前后相继要读入三个非负整数,整数的限制是[0,100000],然后根据上述算法计算出代表奇偶性的非常二进制数字,输出它对应的十进制值。

 

唤醒:将整数从右向左分解,数位每一趟加1,而二进制值每一回乘2。

 

输入格式:

贰个非负整数,整数的界定是[0,1000000]。

 

出口格式:

贰个平头,表示计算结果。

 

输入样例:

342315

 

出口样例:

13

 

 

import java.util.Scanner;

public class Main {
public static void main(String[] args) {
int number = 0;// 读入贰个非负整数
int digit = 0;// 分解
int wei = 0;// 数位
int sum = 0;// 总括结果
Scanner in = new Scanner(System.in);

number = in.nextInt();

do {
digit = number % 10;
number /= 10;
wei++;

if ((digit % 2) == (wei % 2)) {
sum += Math.pow(2, (wei – 1));
}
} while (number > 0);//
将整数从右向左分解,数位每回加1,而二进制值每趟乘2。

System.out.println(sum);
}
}

标题内容:
对数字求特征值是常用的编码算法,奇偶特征是一种简易的特征值。对于二个卡尺头,从个位开头对每一位数字编…

 

 

 

System.out.println(sum);
}
}

public class Main {
public static void main(String[] args) {
int number = 0;// 读入三个非负整数
int digit = 0;// 分解
int wei = 0;// 数位
int sum = 0;// 计算结果
Scanner in = new Scanner(System.in);

输入格式:

do {
digit = number % 10;
number /= 10;
wei++;

13

升迁:将整数从右向左分解,数位每一遍加1,而二进制值每一回乘2。

出口样例:

根据二进制位值将1的位的位值加起来就拿走了结果13。

数字

3

4

2

3

1

5

数位

6

5

4

3

2

1

数字奇偶

数位奇偶

奇偶一致

0

0

1

1

0

1

二进制位值

32

16

8

4

2

1

 

 

此处的估量能够用上边包车型大巴报表来代表:

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注