1

Тема: З клавіатури послідовно ввести N цілих чисел

З клавіатури послідовно ввести N цілих чисел, кожне з яких є записом
(кодом) певного числа у системі числення з основою 7. Обчислити і
вивести на екран десяткове значення кожного з цих чисел або зазначити,
що число помилкове, якщо воно містить недопустимі цифри.

2

Re: З клавіатури послідовно ввести N цілих чисел

Усе погано

3

Re: З клавіатури послідовно ввести N цілих чисел

Частину завдання я виконав, але лишилось додати перевірку чи дійсно число в сімковій системі числення (не може містити цифри 7, 8, 9)

#include <iostream>
#include<vector>
#include<cmath>;
using namespace std;

void print_Numbers(vector<int> const vec);
void convert_To_Decimal(vector<int> &vec);

int main()
{
    vector<int> numbers;
    int n; // kilkist' chisel
    cin >> n;
    cout << "Vvedit' chisla: " << endl;
    int x;
    for(int i = 0; i < n; i++)
    {
      cin >> x;
      numbers.push_back(x);
    }
    cout << "Vashi chisla: " << endl;
    print_Numbers(numbers);
    convert_To_Decimal(numbers);
    cout << "chisla pislya perhodu do 10 systemu chislenya:" << endl;
    print_Numbers(numbers);
}

void print_Numbers(vector<int> const vec)
{
   for(auto element : vec)
      cout << element << " ";
   cout << endl;
};

void convert_To_Decimal(vector<int> &vec)
{
   int digits = 0, temp;
   for(auto &element : vec)
   {
      digits = (element==0? 1: int (log10 (element) + 1)); //kilkist' cifr v chisli
      temp = element;
      element = 0;
      for(int i = digits; i > 0; i--)
      {
        element += (int)(temp / pow(10.0, i - 1)) * pow(7, i - 1);
        temp = temp % (int)pow(10.0, i - 1);
      }
   }

};
Подякували: olmovc, yuliaguda42

4

Re: З клавіатури послідовно ввести N цілих чисел

Так а в чому проблема? Переведення в іншу систему, як на мене, значно складніша задача. Так само перебираєте по цифрі, тільки тепер замість обчислювати, у що там воно перевторюється, просто порівнюєте цифру з 7, якщо якась більша - значить, не підходить число.

5

Re: З клавіатури послідовно ввести N цілих чисел

koala написав:

Так а в чому проблема? Переведення в іншу систему, як на мене, значно складніша задача. Так само перебираєте по цифрі, тільки тепер замість обчислювати, у що там воно перевторюється, просто порівнюєте цифру з 7, якщо якась більша - значить, не підходить число.

не хотів робити на 100%