Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


user8605, давайте разобьём задачу на две подзадачи:

1. Чтобы переставить числа из препарируемого числа, его нужно разбить на разряды, сохранив разряды в массив равный количеству разрядов
2. Произвести пузырьковую сортировку массива разрядов по убыванию.
3. Перемножить числа по разрядам x * 1000 x * 100 + x * 10 + x (это грубо, но решается упрощённым способом)
4. Вывести итоговое число.

Для начала решим первый вопрос - По заданному натуральному(целому) числу, определить количество цифр и найти их сумму. Собственно, первую часть для затравки я решил, остальное для вас труда не должно составить. По крайней мере жду ваших размышлений над вопросами.

Код: Выделить весь код
#include <iostream>
using namespace std;

// Функция расчитывающая количество чисел во введённом числе...
int Rasriad(int enterNumber)
{
   int n = enterNumber, x = 0;
   while (n != 0) {
      n /= 10;
      x++;
     }
   return x;
}

int main()
{
   int enterNumber,
       lenght = 0,
       indexRas,
       decimal = 1,
       z,
       *Array;

   cout << "Enter Number: ";
   cin >> enterNumber;

   // определяет количество цифр в нем и их сумму.
   lenght = Rasriad(enterNumber);
   Array = new int [lenght]; // Создаём массив необходимой длины

   for(int j = 1; j < lenght; j++)
      decimal *= 10;

   for(int i = 0; i < lenght; i++){
      indexRas = enterNumber / decimal % 10;
      Array[i] = indexRas; // Заполняем массив
      decimal /= 10;
    }
   // Необходимые операции для сортировки по убыванию
   // ...

   // "сложение" отсортированого массива в одно число
   // ...

   // Вывести итоговое число
   // ...

   cin>>z;

   return 0;
}
//---------------------------------------------------------------------------

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:55, 07-02-2012 | #2