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

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

Аватара для Drongo

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


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

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


Вроде готово. Только вы хоть комментарии прочтите в программе, чтобы смогли если спросят, что к чему, объяснить. И если не затруднит, после сдачи задачи, можежь зайти на форум и отписаться, прошло ли решение или нет?
Решение
Код: Выделить весь код
// Написать прогу, которая по заданному натуральному числу
// определяет количество цифр в нем и их сумму.
// Протестируйте функцию десятичных чисел из некоторого диапазона от n до m.
#include <iostream>
using std::cout;
using std::cin;
using std::endl;

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

  while(n != 0){
    n /= 10;
    x++;
  }
  return x;
}

// Функция тестирования диапазона чисел
void TestDiapason()
{
   int lenght = 0,
       indexRas,
       decimal = 1,
       summa = 0,
   // значения переменных 'min' и 'max' задают границы диапазона
       min = 24,    // Нижняя граница диапазона (меняем на нужный)
       max = 1248;  // Верхняя граница диапазона (меняем на нужный)

   for(; min < max; min++){
       decimal = 1;
       summa = 0;
      // определяет количество цифр в нем и их сумму.
      lenght = Rasriad(min);

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

      for(int i = 1; i <= lenght; i++){
         indexRas = min / decimal % 10;
         summa += indexRas;
         decimal /= 10;
       }
      cout<<"\n Summa all numbers '"<<min<<"' = "<<summa<<endl;
   }
}

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

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

   // определяет количество цифр в нем и их сумму.
   lenght = Rasriad(enterNumber);

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

   for(int i = 1; i <= lenght; i++){
      indexRas = enterNumber / decimal % 10;
      summa += indexRas;
      decimal /= 10;
    }
   cout<<"\n Summa all numbers = "<<summa<<endl;

   // Протестируйте функцию десятичных чисел из некоторого диапазона от n до m.
   cout<<"\n ----Proverka Diapasona on 'n' do 'm'---\n\n";
   TestDiapason();

   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


Последний раз редактировалось Drongo, 27-09-2008 в 19:08. Причина: Добавил код решения... Так хоть и не профессионально, но работает...

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

Отправлено: 18:24, 27-09-2008 | #18