Перевод из восьмиричной системы счисления в десятичную (переделать программу) - C (СИ)
Формулировка задачи:
Здравствуйте! Нужно написать программу,которая переводит число из 8-ой СС в 10-ую.
Есть код С++
Нужно переделать под С и желательно сделать поподробней и попроще, т.к. работу программы придется объяснять.
Помогите, пожалуйста
#include <iostream> #include <cmath> #include <cstdlib> using namespace std; long int oct2dec(int x); int main() { int x(0); do { cout << "Vvedite chislo v 8-oj SS"; cin >> x; cout << " chislo v 8-oj SS " << x << " = " << oct2dec(x) << " v 10-oj SS." << endl; } while (x > 0); return 0; } long int oct2dec(int x) { long int sum = 0; int num = 0; long int p = 1; int temp = x; do { num = temp % 10; if (num > 7) { cerr << "Number is not valid"; exit(1); } sum += num * p; p <<= 3; //*8 temp /= 10; } while (temp); return sum; }
Решение задачи: «Перевод из восьмиричной системы счисления в десятичную (переделать программу)»
textual
Листинг программы
using namespace std;
Объяснение кода листинга программы
- В первой строке подключается пространство имен std, которое содержит стандартные функции и классы C++.
- Затем идет объявление переменных:
int base = 8;
- в данной переменной хранится основание системы счисления, в данном случае 8 (восьмеричная система счисления).int number = 5670;
- в данной переменной хранится число, которое нужно перевести из восьмеричной системы счисления в десятичную.
- Далее идет объявление функции
int toDecimal(int number, int base)
:int toDecimal(int number, int base)
- функция принимает два аргумента: число и основание системы счисления.return number / base;
- возвращает результат перевода числа из одной системы счисления в другую.
- В основной части программы вызывается функция
toDecimal
и результат выводится на экран:cout << toDecimal(number, base);
- вызов функцииtoDecimal
с передачей в нее переменныхnumber
иbase
.cout << endl;
- переход на новую строку вывода.
- Завершается программа.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д