Решение задачи 2. Написать функцию, которая получает в качестве аргументов целое положительное число

  • Задача 2. Написать функцию, которая получает в качестве аргументов целое положительное число и систему счисления, в которую это число должно переводится (системы счисления от 2 до 36). Например, при переводе числа 27 в систему счисления 16 должно получиться 1B; 13 в 5-ю - 23; 35 в 18-ю - 1H.

Решение. Логика алгоритма: Для перевода целой части (или просто целого) числа необходимо разделить ее на (основание системы счисления) и продолжать делить частные от деления до тех пор, пока частное не станет равным 0. Значения получившихся остатков, взятые в обратной последовательности, образуют искомое число.

#include <stdlib.h>
#include <iostream>
 
using std::cin;
using std::cout;
 
 
int main() {
    int sysar[36];
    int num, sysnum, i=0,n;
    int ost, num1, resnum=0, count=1;
 
    cout<<"Enter integer number\n";
    cin>>num;
    cout<<"Enter system number\n";
    cin>>sysnum;
 
    while (num>0) {
        num1=num;
        num/=sysnum;
        ost=num1-num*sysnum;
        sysar[i]=ost;
        i++;
    }
    i--;
    for (;i>=0;i--){
        if (sysar[i]>=10){
            n=sysar[i]+55;
            cout<<char(n);
        }
        else  cout<<sysar[i];
    }
    cout<<"\n";
 
    return (EXIT_SUCCESS);
}
  • Крупнейшая в Европе школа английского языка

    Промокоды, акции и подарки, чтобы Ваше обучение было не только интересным, но и выгодным. Закажите пробный урок уже сейчас!

    skyeng.ru
  • Онлайн школа английского языка

    Английский по скайпу от 680р за урок, без заучивания правил. Эффективно! Удобно! Выгодно! Начните обучение прямо сейчас.

    melene.ru
  • Школа английского языка по Skype

    Персональные занятия по разумным ценам. Бесплатные ресурсы для студентов: разговорные клубы, блог, вебинары, книги, тест на определение уровня английского. Пробный урок бесплатно!

    englex.ru