в тот же столбик 61 на 8
Вы увидите что частка будет 7, а остаток от деления будет 5.
Но их нужно теперь соединить как то🤔.
Потому пишу сюда в надежде что кто-нибудь поможет с правильным выводом.
Или же всё таки алгоритм не правильный.
Думаете через массив сделать?
Вам надо собирать разряды, а эта часть кода отсутствует. Как минимум там должно быть умножение на 10, на 100 и т.д, чтобы получать разряды.
cpp int octalNum[100]; int i = 0; while (n != 0) { octalNum[i] = n % 8; n = n / 8; i++; } for (int j = i - 1; j >= 0; j--) cout << octalNum[j]; Что то по типу того?
Здесь оно собирается путем последовательного вывода на cout. Есть два способа через строчку. 1) Заполняется строчка, а потом разворачивается наоборот. 2) Строчка заполняется задом-наперед, и таким образом, разворот не нужен. Если вы хотите закодировать результат не в строчке, а в числе, которое, будучи представленное в десятичном виде, показывало в вашей системе, то вам нужно конструировать такое число по ряду типа a + b*10 + c*100 + d*1000... и т.д.
Туго доходит, но я постараюсь донести до себя ваши слова.
Просто опыта нет в этом деле. Обычно, когда дают задание что-то запрограммировать, надо изучить тему, рассмотреть имеющиеся подходы и потом программировать. Над задачей уже думали многие люди и в интернете полно подходов. Ну а если задание чисто для развития соображалки, то такие вещи лучше на бумаге решать. ИМХО. Когда станет ясно, как это сделать на бумаге, можно и в код перевести. Бумага стерпит расположение чисел куда надо, а в программировании надо еще думать, как разряды куда помещать.
Обсуждают сегодня