![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 06.11.2013
Сообщений: 19
|
![]()
Дано натуральное число N. Найти наименьшее число М (N < M < 2N) которое делится на сумму цифр числа N (без остатка). Если такого числа нет, то вывести слово «нет». Пример. N = 12 345, М = 12360. Число 12 360 делится на число 15 — сумму цифр числа N.
|
![]() |
![]() |
![]() |
#2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,429
|
![]()
Алгоритм:
Считать N Посчитать сумму цифр в нем Запустить цикл от N + 1 до 2N - 1 Если встретили число, делящееся на сумму, то вывели его и завершили программу Если цикл закончился, а число не нашли, то выводим слово "нет" и завершаем программу Что не получается?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 06.11.2013
Сообщений: 19
|
![]()
Можно по подробней объяснить алгоритм.. С языком си недавно знакома не совсем понимаю как это сделать
|
![]() |
![]() |
![]() |
#4 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,429
|
![]()
На каком пункте алгоритма Вы застряли?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 06.11.2013
Сообщений: 19
|
![]()
на первом пункте
|
![]() |
![]() |
![]() |
#6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,429
|
![]()
Функции printf и scanf Вам знакомы?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 06.11.2013
Сообщений: 19
|
![]()
да, функции scanf b printf знакомы
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
вот и напишите с помощью printf выдачу сообщения типа "Введите число N", а следующей строчкой кода с помощью scanf прочитайте введённое пользователем число в переменную (например, n).
p.s. переменную предварительно нужно описать (т.е. указать её тип и имя). |
![]() |
![]() |
![]() |
#9 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,429
|
![]()
"Считать N" = Воспользоваться функцией printf для вывода подсказки и функцией scanf для считывания целого числа N.
Напишите код для этого этапа, а пока словесное описание 2 этапа: Используя цикл while, оператор / для нахождения частного и оператор % для нахождения остатка, "отрезаем" по 1 цифре от числа (остаток от деления на 10), прибавляем цифру к сумме, "укорачиваем" число на 1 цифру (находим частное от деления на 10), повторяем операции в цикле, пока число не обратится в 0 (лучше резать не само число n, а завести временную переменную tmp, в которую занести значение n, и значение которой менять в цикле).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 06.11.2013
Сообщений: 19
|
![]()
хорошо. так? переменная M в scanf наверно лишняя..
Последний раз редактировалось Kcilika; 13.02.2014 в 00:42. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Парни помогите!!срочно нужно решить в течении пару часов..завтра зачет!Парни помогите! | razorl1ner | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 01.06.2009 00:02 |
Помогите Помогите Пожалуйста Решить Одну Задачку в Паскале!!! | VisTBacK | Помощь студентам | 6 | 19.09.2008 13:44 |
Помогите решить | maximon | Помощь студентам | 10 | 26.12.2007 19:25 |