|
30 / 30 / 2
Регистрация: 22.11.2010
Сообщений: 84
|
||||||
Подсчёт количества цифр в целом числе31.08.2011, 22:59. Показов 18000. Ответов 50
Метки нет (Все метки)
Напишите программу, которая считывает целое число и определяет (выводя результат на печать), сколько цифр в этом числе равно 7.
Думаю задачу нужно решать так: По этому принципу
Только вот вопрос: как осуществить это для любых целых чисел? Так как представляю себе только для фиксированного числа(5-ти, шести - значного и т.п.)
0
|
||||||
| 31.08.2011, 22:59 | |
|
Ответы с готовыми решениями:
50
Подсчет количества цифр в числе (рекурсивно)
|
|
Higher
|
|||||||
| 01.09.2011, 13:22 | |||||||
|
true - если не равно нулю, false - если равно. Поэтому ничего кроме true или false bool содержать не может. true во всех компиляторах, что я встречал, равна единице. Но что в стандарте по этому поводу сказано - не знаю. P.S. вывод gcc
0
|
|||||||
|
|
|
| 01.09.2011, 13:27 | |
|
diagon, в языке Си нет типа bool, там истина и ложь - целые числа, где 0 - ложь, а истина - все остальное. И очень много логических функций в Си, которые прописаны в библиотеках, возвращают именно 0 или целое ненулевое число, которое интерпретируется как истина.
0
|
|
|
|
||||||
| 01.09.2011, 13:28 | ||||||
|
Я вижу два варианта. Первый - делить число на 10, однако он не самый лучший, потому что при вводе scanf получает строку, которую потом преобразовывает в число, которое мы потом всё равно обрабатываем фактически как строку (поразрядно), что несколько извращённо. Второй вариант - ввести строку, не заставляя машину преобразовывать её в число, и обрабатывать как строку, не заставляя машину вычислять результаты деления и результаты деления с остатком.
asdasdasd -7777. Первый работает неверно, говоря, что в числе одна семёрка.
0
|
||||||
|
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
|
| 01.09.2011, 13:39 | |
|
я вот упускаю момент, нафига так усложнять?
есть по заданию вводится число, то зачем геморрой со строками? взял число. начал цикл. посмотрел остаток от деления на 10. увеличил счетчик. поделил на десять.закончил цикл. Добавлено через 51 секунду если вводят строку - пишешь большими буквами "ЧИСЛО А НЕ БУКВЫ!!! ЧИТАЙ ЗАДАНИЕ!!!" и лупишь линейкой по рукам
0
|
|
|
|
||
| 01.09.2011, 13:41 | ||
0
|
||
|
|
|||||||||||||||||
| 01.09.2011, 13:54 | |||||||||||||||||
|
int sdigits(int num)
Это сам код в Си
0
|
|||||||||||||||||
|
Кошковед
521 / 509 / 63
Регистрация: 12.04.2010
Сообщений: 1,390
|
|
| 01.09.2011, 13:55 | |
|
13 ассемблеровских строк это конечно весомый аргумент.
ну ка приведи мне еще асмовскую версию проверки строки и числа в цикле.
0
|
|
|
1360 / 988 / 119
Регистрация: 30.07.2010
Сообщений: 5,297
|
|
| 01.09.2011, 13:58 | |
|
0
|
|
|
|
||||||
| 01.09.2011, 14:02 | ||||||
|
С учетом любезного замечания stdcout, получается такой неплохой вариант:
0
|
||||||
|
|
||||
| 01.09.2011, 14:06 | ||||
|
Добавлено через 3 минуты
0
|
||||
|
|
||||||||||||||||||||||||||
| 01.09.2011, 14:24 | ||||||||||||||||||||||||||
|
Вобщем вот сравнительная характеристика строчного подсчёта, цикла по 10-ке а также рекурсии (кстати в асме - она наибольше кода занимает!)
Enter number : 2569 Digits in 2569 : sdigits : 4 idigits : 4 idigits2: 4 Press any key to continue ASM: [Отработка алгоритма] Enter number : 2569 Digits in 2569 : sdigits : 4 idigits : 4 idigits2: 4 Press any key to continue
Добавлено через 2 минуты Thinker, я модернизировал твою функцию до более простой в моём понимании,
0
|
||||||||||||||||||||||||||
|
|
|
| 01.09.2011, 14:26 | |
|
-=ЮрА=-, спасибо за сравнительный анализ. Добавлю, что я ранее написал, что алгоритм у Jupiter лучше, так как там итерация, сам бы первым делом так же написал. Пример с рекурсией это просто малюсенькое дополнение
0
|
|
|
Путешественник вселенной
189 / 161 / 119
Регистрация: 01.03.2011
Сообщений: 664
|
||||||
| 01.09.2011, 14:28 | ||||||
|
Вот что-то написал.
0
|
||||||
|
|
|
| 01.09.2011, 14:30 | |
|
0
|
|
| 01.09.2011, 14:30 | |
|
Определение количества цифр в целом числе
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|