中国MOOC_零基础学Java语言_期末考试的编程题_1二进制的前导的零

期末考试的编程题

返回

这是期末考试的编程题,在60分钟内,你可以多次提交,直到正确为止。

温馨提示:

1.本次考试属于Online Judge题目,提交后由系统即时判分。

2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩。

1

二进制的前导的零(10分)

题目内容:

计算机内部用二进制来表达所有的值。一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000。可以看到,从左边数过来,在第一个1之前,有27个0。我们把这些0称作前导的零。

现在,你的任务是写一个程序,输入一个整数,输出在32位二进制表达下它前导的零的个数。

输入格式:

一个整数,在32位的整数可以表达的范围内。

输出格式:

一个整数,表达输入被表达为一个32位的二进制数时,在第一个1之前的0的数量。

输入样例:

256

输出样例:

23

时间限制:500ms内存限制:32000kb

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);

		int number = 0;// 一个整数,在32位的整数可以表达的范围内。
		int wei = 32;// 32位的计算机
		String result = null;// 字符串

		number = sc.nextInt();// 输入

		result = Integer.toBinaryString(number);// Returns a string representation of the integer argument as an unsigned integer in base 2.

		if (number != 0) {// 一个整数,表达输入被表达为一个32位的二进制数时,在第一个1之前的0的数量。
			System.out.println(wei - result.length());
		} else {
			System.out.println(wei);
		}
	}
}
时间: 2024-08-03 23:30:17

中国MOOC_零基础学Java语言_期末考试的编程题_1二进制的前导的零的相关文章

中国MOOC_零基础学Java语言_第7周 函数_1分解质因数

第7周编程题 查看帮助 返回 第7周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系统将取其中的最高分作为最终成绩. 1 分解质因数(5分) 题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数.比如,6可以被分解为2x3,而24可以被分解为2x2x2x3. 现在,你的程序要读入一个[2,10000

中国MOOC_零基础学Java语言_第7周 函数_2完数

2 完数(5分) 题目内容: 一个正整数的因子是所有可以整除它的正整数.而一个数如果恰好等于除它本身外的因子之和,这个数就称为完数.例如6=1+2+3(6的因子是1,2,3). 现在,你要写一个程序,读入两个正整数n和m(1<=n<m<1000),输出[n,m]范围内所有的完数. 提示:可以写一个函数来判断某个数是否是完数. 输入格式: 两个正整数,以空格分隔. 输出格式: 其间所有的完数,以空格分隔,最后一个数字后面没有空格.如果没有,则输出一个空行. 输入样例: 1 10 输出样例:

中国MOOC_零基础学Java语言_第2周 判断_2信号报告

2 信号报告(5分) 题目内容: 无线电台的RS制信号报告是由三两个部分组成的: R(Readability) 信号可辨度即清晰度. S(Strength)    信号强度即大小. 其中R位于报告第一位,共分5级,用1-5数字表示. 1---Unreadable 2---Barely readable, occasional words distinguishable 3---Readable with considerable difficulty 4---Readable with prac

中国MOOC_零基础学Java语言_第5周 数组

第5周 数组 5.1 数组 5.2 数组计算 public class Main { public static void main(String[] args) { for (int i = 1; i < 10; i++) { if (prime(i)) { System.out.println(i); } } } public static boolean prime(int x) {// 判断是否素数 boolean isPrime = true;// 默认是素数 if (x == 1 |

中国MOOC_面向对象程序设计——Java语言_期末考试编程题_1细胞自动机

期末考试编程题 返回 这是期末考试的编程题 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩. 1 细胞自动机(30分) 题目内容: 这是细胞自动机的非图形版本.细胞自动机是指在一个二维网格内,每一个网格是一个细胞.每个细胞有活和死两种状态. 初始时刻,有些细胞是活的,有些细胞是死的.自动机的每一步,根据每个细胞周围8个格子内的其他细胞的生存情况决定这个细胞下一步是否存活.具体的规则如下:

二进制的前导的零——mooc《零基础学Java语言》-(浙大翁凯)期末编程题

题目内容: 计算机内部用二进制来表达所有的值.一个十进制的数字,比如18,在一个32位的计算机内部被表达为00000000000000000000000000011000.可以看到,从左边数过来,在第一个1之前,有27个0.我们把这些0称作前导的零. 现在,你的任务是写一个程序,输入一个整数,输出在32位二进制表达下它前导的零的个数. 输入格式: 一个整数,在32位的整数可以表达的范围内. 输出格式: 一个整数,表达输入被表达为一个32位的二进制数时,在第一个1之前的0的数量. 输入样例: 25

零基础学JAVA语言第五周数组--求平均数例题

package shuzu; import java.util.Scanner; public class Shuzu_pjs { public static void main(String[] args) { // 用户输入一系列数字,然后求出这些数字的平均数,并输出输入数字中大于平均数的数 Scanner in = new Scanner(System.in); System.out.println("你打算输入多少个数值?请输入:"); // 计算平均数,需要有:1.记录输入的

念整数——mooc《零基础学Java语言》-(浙大翁凯)第四周编程题(2)

问题描述: 你的程序要读入一个整数,范围是[-100000,100000].然后,用汉语拼音将这个整数的每一位输出出来. 如输入1234,则输出: yi er san si 注意,每个字的拼音之间有一个空格,但是最后的字后面没有空格.当遇到负数时,在输出的开头加上“fu”,如-2341输出为: fu er san si yi 输入格式: 一个整数,范围是[-100000,100000]. 输出格式: 表示这个整数的每一位数字的汉语拼音,每一位数字的拼音之间以空格分隔,末尾没有空格. 输入样例:

翁恺老师零基础学JAVA语言第五周数组--求平均数例题-个人理解

// 用户输入一系列数字,然后求出这些数字的平均数,并输出输入数字中大于平均数的数 Scanner in = new Scanner(System.in); System.out.println("你打算输入多少个数值?请输入:"); // 计算平均数,需要有:1.记录输入的每个数n:输入数的和sum:输入数值的个数cnt: int cnt = in.nextInt(); // 算平均数,定义sum为浮点数 double sum = 0; System.out.println(&quo