0 / 0 / 0
Регистрация: 26.11.2013
Сообщений: 11
|
||||||
1 | ||||||
Определить, делится ли это число на 1526.11.2013, 15:15. Показов 5085. Ответов 32
Метки нет (Все метки)
"Пользователь вводит двоичное число. Нужно определить делится ли это число на 15."
Я написал программу которая переводит двоичное число в десятичное и делит на 15.
Есть ли в С++ возможность, работать с двоичными числами или все намного сложнее. Помогите с этим вопросом, пожалуйста! В С++ я новичок и сам не смог разобраться=(
0
|
26.11.2013, 15:15 | |
Ответы с готовыми решениями:
32
Делится ли заданное четырехзначное число нацело на произведение цифр, составляющих это число Проверить, делится ли введенное трехзначное число нацело на сумму цифр, составляющих это число Определить, делится ли число нацело на 7 и делится ли на 3 Разработать программу, проверяющую, делится ли целое четырехзначное число N нацело на сумму цифр, составляющих это число |
0 / 0 / 0
Регистрация: 26.11.2013
Сообщений: 11
|
|
27.11.2013, 15:34 [ТС] | 21 |
ya_noob,
Я уже совсем запутался, объясните, пожалуйста, все по порядку, что я должен делать, если вас это не затруднит. Я в тупике(
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
||||||
27.11.2013, 15:38 | 22 | |||||
ну вот накропал
создал из кусков ввод ввел строкой чтобы тупо не вбивать все разряды тестируйте
1
|
0 / 0 / 0
Регистрация: 26.11.2013
Сообщений: 11
|
|
27.11.2013, 15:48 [ТС] | 23 |
ValeryS, Спасибо Вам огромное!!все работает правильно. только в ответе выдает очень длинное число типа "0000000000000001111" но это не важно)Вы спасли меня от мучений сессии)
0
|
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 11
|
|
27.11.2013, 15:52 | 24 |
узнаем делиться число 47 на 15
Х=47 Д=0 Д=Х нет Д>Х нет Д<X да то Д=0+15 Д=Х нет Д>Х нет Д<X да то Д= 15+15 Д=Х нет Д>Х нет Д<X да то Д=30+15 Д=Х нет Д>Х нет Д<X да то Д=45+15 Д=Х нет Д>Х да (число не делиться на 15) Добавлено через 2 минуты лучше через рекурсию писать
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
27.11.2013, 16:00 | 25 |
zzzvolk,
проблема то не в том что бы проверить можно разделить или нельзя а в том что С не поддерживает двоичных значений следовательно число должно быть или в массиве или в строке и для этого представления надо создать арифметику это проверка числа, что правильно ввел, можешь выбросить, показывает все разряды если бы ты ввел как хотел 10000 разрядов вообще бы одни 0 увидел там еще бесконечный цикл чтобы можно было не одно число проверить а несколько тоже не есть гут
1
|
0 / 0 / 0
Регистрация: 26.11.2013
Сообщений: 11
|
|
27.11.2013, 16:08 [ТС] | 26 |
ValeryS, да ладно, оставлю. все равно проверяют только с бумаги(на компе его проверять не будут). осталось только понять по пунктам, что делает программа. Еще раз большое спасибо!
0
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|
27.11.2013, 16:30 | 27 |
ValeryS, назовите максимальное число, которое ваша программа может проверить за разумное время (хотя бы примерно).
0
|
0 / 0 / 0
Регистрация: 27.11.2013
Сообщений: 3
|
||||||
27.11.2013, 16:54 | 28 | |||||
Так, возможно, несколько короче:
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
27.11.2013, 17:05 | 29 |
а я что утверждал что это самая быстрая программа?
нет конечно это самое тупое решение но и самое очевидное конечно здесь нужна теория самое первое что приходит в голову это то что 15=5*3 признак деления на 5 это в конце 0 или 5 а признак деления на 3 это сумма всех разрядов делится на 3 значит признак делимости на 15 это сумма должна делится на 3 и оканчиваться на 5 или 0 в качестве оправдания могу сказать что второе слабое место здесь человек, сколько времени он будет вбивать 100 значное число Добавлено через 5 минут Lynxsmr, а где у тебя двоичное число??? только не надо говорить что все числа в компе двоичные, это я и так знаю У ТС другая проблема следовательно нужно сначала придумать представление числа а потом уже к нему пришпандоривать арифметику я вот предложил массив, согласен не самый лучший способ, но просто лежит на поверхности
0
|
0 / 0 / 0
Регистрация: 27.11.2013
Сообщений: 3
|
|
27.11.2013, 17:14 | 30 |
Можно ведь представить его не только в виде массива, но и в виде int с 0 и 1.
В идеале, правда, нужно сделать проверку при вводе, но вряд ли это существенно.
0
|
0 / 0 / 0
Регистрация: 27.11.2013
Сообщений: 3
|
|
27.11.2013, 17:24 | 32 |
Да, не обратил внимание
0
|
_
317 / 151 / 27
Регистрация: 08.10.2011
Сообщений: 432
|
|
27.11.2013, 17:38 | 33 |
это справедливо для 10-чной СС, но не для 2-чной. ТС говорит, что нельзя переводить в другие СС, так что эти признаки не применимы.
пару секунд признака делимости, что я указал уже достаточно, чтобы понять что делать. перечитайте то сообщение внимательно и скажите наконецтоужвконцетоконцов чему же равно х
0
|
27.11.2013, 17:38 | |
27.11.2013, 17:38 | |
Помогаю со студенческими работами здесь
33
Число вводится своим двоичным представлением. Определить, делится ли число на 15 Определить, является ли целое число N четным двузначным числом, и делится ли оно на число K Определить, делится ли число на 15 Определить, делится ли число на 5 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |