-1

我在第一年的 comp sci 课上,我正在使用Drjava. 我有一个任务让用户输入两个数字,范围从0 到 255,将它们转换为二进制数,添加这些数字,然后输出它们的二进制版本的总和。

我的程序应该包括以下方法:

int[] convertToBinary(int b): 

将参数转换为二进制值并将其存储为整数数组。

void printBin(int b[]): 

在一行上输出存储在数组中的二进制数。

int[] addBin(int a[], int b[]): 

将存储在数组中的两个二进制数相加,并在新的整数数组中返回和。

我想我应该创建一个二进制数数组,但我不确定。如果是这样,我不知道如何在返回方法中使用数组。关于如何处理这项任务的任何想法?谢谢。

4

1 回答 1

1

我还没有阅读您的作业,但从您提供的方法中,您很可能假设您应该将二进制数存储在大小为 8 的数组中。

因此 8 位 = 0-255。

要解决分配问题,请尝试先创建一个数组,然后以某种神奇的方式将数字转换为 b7 到 b0 的每个位。

将数组视为以下格式:

[b7, b6, b5, b4, b3, b2, b1, b0]

其中 bX 为 0 或 1。

解决这个问题的方法有很多,可以使用整数类中的toBinaryString方法,然后解析文本。

或者您可以使用 if 语句和循环制作一个简单的解决方案。

尝试创建一些代码并解决问题,你应该能够很快解决剩下的问题,一旦你设法将整数转换为 int 数组,添加两个二进制数等应该很容易。

于 2013-12-23T02:09:08.993 回答