fork download
#include <iostream>
#include <stdlib.h>
#include <string>
#include <math.h>
#include <ctime>
using namespace std;
class Chisla
{
    int size;
    int CC;
    string Value;
    int result;

public:
    //Конструктор класса
    Chisla(string Chislo)
    {
        Value = Chislo;
    }

private:
    //поиск системы счисления
    int poiskbase()
    {
        int i=0;
        char temp=0;
        while(Value[i]!='\0')
        {
            if(temp<Value[i])
            {
                temp=Value[i];
            }
            i++;
        }
        size = i;
        int temp2=char2num(temp);
        srand(time(0));
        return rand()%32+(temp2);
    }
    //перевод из найденной системы счисления в десятичную
    int returnvalue()
    {
        int Value2[size];
        int Value3 = 0;
        int size2=size-1;
        for(int i=0;i<size;i++)
        {
            Value2[i] = char2num(Value[i]);
        }
        if(size>1)
        {
            for(int i=0;i<size;i++)
            {
                Value3=Value3+(Value2[i]*pow(CC,size2));
                size2--;
            }
        }else
        {
            Value3=Value2[0];
        }
        return Value3;
    }
    //Конвертация символа в число
    char char2num(char num)
    {
        if(num <= '9')
            return int(num - '0');
        else if(num >= 'a')
            return int(num - 'a'+10);
    }
public:
    //Методы вывода ответов
    int resultbase()
    {
        return CC = poiskbase();
    }
    int resultvalue()
    {
        return result = returnvalue();
    }
};
int main()
{
    int CC = 0;
    string Value = "";
    char Otv;    
    cout << "Vvedite chislo: " << endl;
    cin >> Value;
   // do
    //{
    Chisla Chislo(Value);
    CC = Chislo.resultbase();
    int result = Chislo.resultvalue();
    cout << "Chislo " << result << " v " << CC << " sisteme schhisleniya." << endl;
  //  cout << "Otvet veren? Y/N" << endl;
    cin >> Otv;
    //}while(Otv != 'Y' && Otv != 'y');
    system("PAUSE");
    return 0;
}
Success #stdin #stdout #stderr 0s 3480KB
stdin
f
stdout
Vvedite chislo: 
Chislo 15 v 24 sisteme schhisleniya.
stderr
sh: PAUSE: not found