Форум программистов, компьютерный форум CyberForum.ru

Программа перевода числа из десятичной системы в восмеричную - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Необходимо провести трассировку программ http://www.cyberforum.ru/cpp-beginners/thread797818.html
Проведите трассировку определения количество чётных чисел в массиве. Выполните трассировку программ из своего варианта с использованием отладчика.
C++ DEV C++ новый проект win, непонятные операторы В DEV C++ создаю новый проект - windows application, он сразу кучу операторов рисует до селе неизвестных, объясните пож, хотя бы ключевые, самые важные из них. Может ссылку подскажите на ресурс какой, где объясняли уже .... Вот что имеется: #include <windows.h> //подкл библиотеку для работы с апи винды чтоли, как то так /* Declare Windows procedure */ LRESULT CALLBACK WindowProcedure... http://www.cyberforum.ru/cpp-beginners/thread797796.html
Распознавалка чертежей C++
На вход подаётся теоретический чертёж, например, корпуса корабля/судна трёх emf файлах: вид с борта, план и в одном файле два полувида с носа и с кормы, выбирается борт левый/правй для вида с борта и какой полувид - нос, а какой корма, а на выходе этот же корпус в каком нибудь 3D формате. Имеет смысл, или лучше руками в редакторе?
Функции и Матрицы C++
Впервые работаю с функциями, вроде написать всё как надо, но code blocks'у не нравится. #include <stdio.h> //printf scanf #include <conio.h> #include <stdlib.h> #include <string.h> void first(int long n, char *err,char buffer){ printf("Enter you name:"); do
C++ Количество строк http://www.cyberforum.ru/cpp-beginners/thread797778.html
Подскажите пожалуйста, как можно подсчитать количество строк в файле?
C++ Возврат массива Не спрашивайте зачем я это делаю, если можно просто использовать strcpy. char tostrcpy(char *to, char *from); int main(int i) { setlocale(LC_ALL, "Russian"); char str01, str02; int choise(0); cout << "Введите строку 01: "; подробнее

Показать сообщение отдельно
Learx
1032 / 839 / 85
Регистрация: 31.03.2010
Сообщений: 2,465
01.03.2013, 11:42     Программа перевода числа из десятичной системы в восмеричную
ИМХО в данном случае следует использовать схему Горнера для представления чисел. Любое число в системе с основой а можно однозначно представить в виде:
х1*a^0+x2*a^1+x3*a^2 .... где х1,х2,х3 это цифры нашей СС(для 10-ой от 0 до 9, для 8-ой от 0 до 7 и т.д.).

следовательно, для перевода из 10-ой в 8-ю следует использовать следующий алгоритм (пусть будет число 66)
1)66%8=2; 65/8=8;
2)8%8=0; 8/8=1
3) 1%8=1; 1/8=0 - получили 0 - конец цикла
восьмеричное число составляют остатки в обратном порядке: 102=1*8^2+0*8^1+2*8^0 = 66 - обратный перевод

далее, компилятор не умеет работать с числами в другой СС. Его надо этому научить - следовательнос создать свой класс. тут есть два способа:
1) более простой - числа перед выполнением операции переводятся в 10-ю, операция выполняется в 10-ой и результат обратно переводится в нужную СС.
2) более сложный - реализовать арифметические операции для каждой СС используя правила операций для СС.
то есть как-то прописать что в 8-ой складывая 4+7 мы получим 13. По-моему тут поможет использовать перечисление(enum)
 
Текущее время: 08:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru