|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
||||||||||||||||
Выставить цифры в числе 1234567890 таким образом, чтобы новое число делилось без остатка на все числа от 2 до 18 включительно.14.11.2012, 21:10. Показов 8015. Ответов 41
Метки нет (Все метки)
Дана задача.
Выставить цифры в числе 1234567890 таким образом, чтобы новое число делилось без остатка на все числа от 2 до 18 включительно. Я написал нижеследующее, но программа выводит почему то такие числа как 12252240, 24504480 и т.д. Что я тут неправильно написал? /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
неужели никто не знает? Кто-нибудь поможет сегодня? Добавлено через 24 минуты Попробовал изменить таким образом, но всё равно не работает //////////////////////////////////////////////
Я подумал, что в самом низу где я вывожу i, i уже потерял своё значение, поэтому добавил дополнительную переменную m и присвоил ему значение i. Но программа всё равно не работает.
Обалдеть. Неужели никто не знает?
0
|
||||||||||||||||
| 14.11.2012, 21:10 | |
|
Ответы с готовыми решениями:
41
В данном натуральном числе переставить цифры таким образом, чтобы образовалось наименьшее число
|
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
|
| 15.11.2012, 18:37 [ТС] | |
|
0
|
|
|
|
|
| 15.11.2012, 18:40 | |
|
Вообще, скажите, есть тема, где разбирается подобная проблема? Или никто не сталкивался?
0
|
|
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
|
| 15.11.2012, 19:00 [ТС] | |
|
0
|
|
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
||||||
| 18.11.2012, 18:36 [ТС] | ||||||
|
Один из форумчанов сказал мне что мне нужно прокоментировать каждую строку, если хочу чтобы мне помогли.
Вот выкладываю свой код с комментариями. Помогите пожалуйста почему он не работает. Задание напомню- Выставить цифры в числе 1234567890 таким образом чтобы новое число делилось без остатка на все числа от 2 до 18.
0
|
||||||
|
|
|
| 18.11.2012, 20:01 | |
|
да хватит уже с этим кодом возиться
ошибка в 23й строчке. r изменяется от 0 до 403 подумай почему. Но даже когда ты исправишь ошибку, подумай над своим подходом. Ты 1) перебираешь ~9 миллиардов чисел, хотя народ решил тебе перебрав лишь порядка 3,5 миллионов перестановок. 2) проверяешь в цикле деление на каждый из 17ти делителей, хотя проверять надо лишь один раз деление на их НОК короче, тебе предложили более оптимальное решение, чем в лоб.
0
|
|
|
576 / 559 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
|
|
| 18.11.2012, 20:35 | |
|
Parilo, а где переменной flag возвращается начальное значение?
0
|
|
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
|||
| 19.11.2012, 19:34 [ТС] | |||
|
Я только только учусь и только понимая свои ошибки смогу чему то научиться. Объясните пожалуйста если можете. Спасибо заранее Добавлено через 4 минуты Заранее благодарю.
0
|
|||
|
|
||
| 20.11.2012, 13:32 | ||
|
Добавлено через 23 минуты а то сейчас заполняются элементы массива a[0]...a[9] только в первой итерации цикла по i во второй программа пытается уже заполнить значениями a[10]...a[19], которых не существует Добавлено через 53 секунды но сам принцип поиска чисел с неповторяющимися цифрами просто ОООЧЕНЬ нерационален
0
|
||
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
||
| 20.11.2012, 18:21 [ТС] | ||
|
Больше нигде ошибок нет? Если нет ошибок то программа должна работать, но она не работает. Никак не пойму. Где ещё может быть ошибка?
0
|
||
|
|
|
| 20.11.2012, 19:21 | |
|
в чём выражается "не работает"? Или выводит неправильно? Или не компилируется из-за ошибок?Вылетает с похожим на предыдущее окошком? Или просто моргает курсором в консоли и ничего не выводит?
Если последнее, то скорее всего просто ооочень долго считает из-за (как я уже сказал) нерационального алгоритма.
0
|
|
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|||||||
| 20.11.2012, 19:52 | |||||||
|
Первая попавшая в голову реализация:
0
|
|||||||
|
|
||
| 20.11.2012, 23:20 | ||
|
0
|
||
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|||||||
| 21.11.2012, 06:13 | |||||||
|
Kuzia domovenok, Вы о чем вообще? Что MSVS, что DevCPP - IDE. Они не компилируют файлы. В поставке с DevCPP идет GCC, в MSVS - microsoft compiler. А IDE всего лишь позволяет удобно редактировать текст исходных файлов. С DevCPP, скорей всего, идет старая версия GCC. Но, похоже, у Вас одного "две переменные расположены по одному адресу".
0
|
|||||||
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
||
| 21.11.2012, 06:36 [ТС] | ||
|
0
|
||
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|
| 21.11.2012, 07:04 | |
|
Kuzia domovenok, вдруг если сами не поймете - выражение mask[argc]=argc в этом цикле вычисляется после выполнения тела цикла. Поэтому, когда argc становится 10, сначала вычисляется выражение mask[argc]=argc, а потом уже идет проверка условия продолжения цикла. Вообще изменения счетчиков в теле цикла - не очень хорошая идея.
Parilo, У Вас ошибка в том, что вы используете тип unsigned long, в который числа больше 4 млрд. на помещаются. Используйте unsigned long long. И к большим константам, вроде 9876543210 приписывайте в конце суффикс ull, так как по умолчанию, все целочисленные константы имеют тип int.
1
|
|
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
||
| 21.11.2012, 09:46 [ТС] | ||
|
Можно показать как он приписывается в моём коде если можно? Спасибо.
0
|
||
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
|||
| 21.11.2012, 09:52 | |||
|
PS: я просмотрел полностью Ваш код. В нем очень много ошибок, все их перечислять не буду, вот некоторые: Не сбрасываете значение flag при проверке нового числа. Не обнуляете r при проверке нового числа, из-за чего выходите за пределы массива уже на втором числе. Оператор break относится только к ближайшему циклу или оператору switch. Поэтому будет прерван только цикл for (int y=x+1; y<10; y++) Оператор continue в конце ни к чему. И так можно долго.
0
|
|||
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
||
| 24.11.2012, 14:38 [ТС] | ||
|
Ладно, спасибо большое в любом случае. Подскажите пожалуйста какой компилятор лучше всего использовать для таких программ? Спасибо.
0
|
||
|
|
|
| 24.11.2012, 14:45 | |
|
скачай msvs и не думай о компиляторах
1
|
|
|
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
|
|||||||
| 26.11.2012, 19:46 [ТС] | |||||||
|
Я скачал с сайта Майкрософт Microsoft Visual C++ 2010 Express Edition. И также программа не работает, просто мигает курсором. Код финальный после всех исправлений. Блин запарился с этим кодом. Что делать чтобы работал и ull Добавил и long long поставил. Что тут не так?
0
|
|||||||
| 26.11.2012, 19:46 | |
|
Переставить цифры числа таким образом, чтобы получилось минимальное возможное число без ведущих нулей В данном натуральном числе переставить цифры таким образом, чтобы получилось наименьшее число записанное этими же цифрами В данном натуральном числе переставить цифры таким образом, чтобы образовалось наименьшее число, записанное этими цифрами
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транслитерация текста с кириллицы на латиницу (вариант №3)
Maks 15.11.2026
Обновленная версия предыдущей обработки.
Изменения коснулись букв: Ъ, Ы, Ь, Э, отображения которых зависят от положения реквизита "Транслитерация имён".
Изменено отображение буквы Й.
Добавлена. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки.
Добавлено:
- Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
|
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы.
Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
|
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
|
|
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version
1. 2003 - 06 - Designing Virtual Worlds (1st Edition)
Автор: Richard A. Bartle | Объем: 768 стр.
Ссылки: Amazon
. . .
|
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы.
Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
|
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version
Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
|
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров".
Задача:
Запрет инициалов.
Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
|