Форум программистов, компьютерный форум CyberForum.ru

Создание числа из разрядности (простейший способ) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Прямоугольная матрица http://www.cyberforum.ru/cpp-beginners/thread185457.html
Массив 5х5 заполненный случайными целыми числами. Определить количество строк содержащих хотя бы один ненулевой элемент помогите плз))
C++ Сравнение числа и 10 элементов массива В одномерном массиве состоящем из 10 целых случайных чисел от -5 до 5 надо найти: количество элементов массива, которые меньше С сумму целых частей элементов массива, расположенных после последнего отрицательного элемента Преобразовать массив таким образом, чтобы сначала располагались все элементы, отличающиеся от максимального не более чем на 20 %, а потом все остальные http://www.cyberforum.ru/cpp-beginners/thread185452.html
Реализация циклических алгоритмов C++
Народ нужна помощь... ошибка S(x), Y(x) не равны друг другу, а должны быть!!! вот код! //--------------------------------------------------------------------------- #include <vcl.h> #include <iostream> #include <math.h> #pragma hdrstop
Перезагрузка компьютера C++
Напишите программу которая будет перезагружать комп.
C++ Удалить из текста слово, встречающееся больше, чем один раз http://www.cyberforum.ru/cpp-beginners/thread185423.html
Надо написать функцию через указатели который будет удолять в тексте слово которое встречаеться чаще чем один раз.
C++ Преимущества метода умножения матрицы на матрицу по строкам Делаю курсовую по параллельному программированию на C++. Интересует такой вопрос, в чем преимущества метода умножения матрицы на матрицу по строкам в параллельном программировании? подробнее

Показать сообщение отдельно
4ance
1 / 1 / 0
Регистрация: 02.11.2010
Сообщений: 78
02.11.2010, 20:46     Создание числа из разрядности (простейший способ)
Здравствуйте. Имеется задача. Элементарная, на циклы\ветвления:
Определите, сколько слагаемых надо взять в сумме 1+2+3..., чтобы получить m - значное число, состоящее из одинаковых цифр. Тесты и результаты: 1) m = 2. n = 10; Число 55. n = 11; Число 66. 2) m = 3. n = 36; Число 666.
Решил её не полностью, если вводимое - число х, искомое - параметры m и n (не учёл идентичность цифр в числе):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// EqualNumbers.cpp : Определите, сколько слагаемых надо взять в сумме 1+2+3..., чтобы получить m - значное число, состоящее из одинаковых цифр
// Тесты и результаты: 1) m = 2. n = 10; Число 55. n = 11; Число 66. 2) m = 3. n = 36; Число 666.
 
#include "stdafx.h"
#include <conio.h>
#include <locale.h>
 
int x, y; //x - число (вводится)
int m=0, n=0, s; // s - сумма членов
 
int _tmain(int argc, _TCHAR* argv[])
{
  setlocale(LC_ALL, "russian" );  
  // Вывод информации о программе
  printf("Программа вычисления числа n суммы 1+2+3... m-значного числа, состоящего из одинаковых цифр\n");
  printf("Введите целое число для определения искомых параметров m и n\n");
  scanf("%d",&x);
  // выделим дополнительную ячейку памяти для введённого числа, тк будем использовать его в 2х циклах
  y = x;
  // Превый цикл while считает количеств цифр в числе
  while (x !=0)
  {
      m++;
      x /=10;
  }
 
  //Второй цикл while считается сумму s членов n прогресси до тех пор пока сумма s не превзойдёт число x 
  while (s < y)
  {
      n++;
      s += n;
  }
 
  // Вывод результата
  printf("\n\nКоличество шагов в последовательности n = %d", n);
  printf("\n\nЧисло цифр в числе m = %d", m);
  printf("\n\nНажмите любую клавишу\n");
  _getch();
  return 0;
}
Да и в принципе решал её вообще неправильно, так как вводимым - должна быть разрядность числа m, а число шагов прогрессии n и само число x - искомым. Не пойму, как начинать решение - по искомому m надо задавать if (цифры числа идентичны) { считать число шагов n}? Так же алгоритм собирания числа из идентичных цифр - не могу допетрить, хотя обратный - посчитать количество цифр в числе - легок - остаток от деления на 10. Поможите, а?)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru