2013-12-23 4 views
-1

Я нахожусь на своем первом классе comp sci, и я использую Drjava. У меня есть задание, чтобы пользователь вводил два числа: от от 0 до 255, конвертировать их в двоичные числа, добавлять эти числа, а затем выводить их двоичную версию суммы.Как вы используете метод возврата для преобразования целых чисел в двоичные числа?

Моя программа должна включать в себя следующие методы:

int[] convertToBinary(int b): 

Переводит параметра в двоичное значение и возвращает его хранится в виде массива целых чисел.

void printBin(int b[]): 

Выводит двоичное число, хранящееся в массиве, на одной строке.

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

Добавляет два двоичных чисел, хранящихся в массивах, и возвращает сумму в новом массиве целых чисел.

Я думаю, что я должен создать массив двоичных чисел, но я не уверен. Если это так, я не могу понять, как использовать массивы в методах возврата. Любая идея о том, как решить эту задачу? Благодарю.

+2

Возможно, вы хотите попробовать SOMETHING и MAYBE, это сработает? И если это не так, отправьте эту небольшую порцию; повторите, пока у вас не будет полностью функционального ответа на домашнюю работу ... –

+0

Также, глядя на ваши последние вопросы, отметьте правильные ответы в качестве решения для своей проблемы, чтобы они могли помочь другим. – Rawa

+0

Обратите внимание, что int уже является двоичным числом на большинстве аппаратных платформ. Из вашего описания неясно, является ли то, что нужно, это представление символа двоичного кода или просто отображение двоичного числа в какой-то массив. (И если массив, должен ли он быть массивом значений 0/1 или что-то еще?) (И вы возвращаете массив, как вы возвращаете какой-либо объект в Java.) –

ответ

1

Я havn't прочитал ваше задание, но из методов, которые вы при условии, вы можете, скорее всего, предположим, что вы должны хранить двоичные числа в массивах размера 8.

Следовательно 8 бит = 0-255.

Для решения задачи попробуйте начать с создания массива и каким-то магическим способом преобразовать число в каждый бит b7-b0.

Think массива, как в следующем формате:

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

Где ЬЕ 0 или 1.

Есть много способов решения этой проблемы, вы можете использовать метод toBinaryString в целом числе класса, а затем разбор текста.

или вы можете сделать простое решение с операторами if и циклом.

Попробуйте создать код и поработать над проблемой, и вы должны быть в состоянии решить эту проблему довольно быстро, добавив два двоичных числа и т. Д., Должно быть легко, как только вам удалось преобразовать целое число в массив int.