Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int TakeNum(const int MIN, const int MAX) {
- const string ERROR_CHOISE = "Проверьте корректность введнных данных!\n";
- bool isIncorrect;
- int num;
- do {
- isIncorrect = false;
- cin >> num;
- if (cin.fail()) {
- isIncorrect = true;
- cout << ERROR_CHOISE;
- cin.clear();
- while (cin.get() != '\n');
- }
- if (!isIncorrect && cin.get() != '\n') {
- cin.clear();
- while (cin.get() != '\n');
- cout << ERROR_CHOISE;
- isIncorrect = true;
- }
- if (!isIncorrect && (num < MIN || num > MAX)) {
- isIncorrect = true;
- cout << ERROR_CHOISE;
- }
- } while (isIncorrect);
- return num;
- }
- int AnyToTen(int number, int base) {
- int count = 0;
- int result = 0;
- do {
- int mod = number % 10;
- result += pow(base, count) * mod;
- count++;
- number /= 10;
- } while (number);
- return result;
- }
- int main() {
- setlocale(LC_ALL, "Rus");
- int num, n, result;
- cout << "Задание 1\n";
- cout << "Введите число A\n";
- num = TakeNum(1, 2147483647);
- cout << "Введите степень счисления n\n";
- n = TakeNum(1, 16);
- result = AnyToTen(num, n);
- cout << "Число, предшествующее введенному = " << result - 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment