Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2014, 21:12   #1
Timer1
Пользователь
 
Регистрация: 12.03.2014
Сообщений: 13
По умолчанию Задача на С: проверить, что число содержит ровно 3 одинаковых цифры

Дано число n. Верно ли, что это число содержит ровно 3 одинаковых цифры.

Помогите решить на C. Ваще никаких мыслей
Timer1 вне форума Ответить с цитированием
Старый 12.03.2014, 21:46   #2
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Я думаю что утверждение верно.
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 12.03.2014, 22:21   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
bool verno(int n){return 
 (n%10)==(n/10%10)==(n/100)
}
Соответственно:
Код:
{
 int n=333;
 printf("%s",(Verno(n))?"Верно":"Неа");
}
Это если не ошибаюсь
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 12.03.2014, 23:16   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Виталий, мне такой вариант тоже придумался, а потом я обратил внимание, что в задаче не сказано, что число трёхзначное! А если число многозначное (значностью больше трёх), то такой простой вариант решения уже не прокатит!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 12.03.2014, 23:37   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
то такой простой вариант решения уже не прокатит!
Ну подумаешь. Значит в цикле пройтись и посчитать кол-во чисел
Код:
bool verno(int n){
int digs[10]; for(;n;n/=10) digs[n%10]++;
for(int i=0;i<9;i++) if(digs[i]==3) return true;
return false;
}
Но ИМХО у автора в задаче скрыта подляночка, и я всетки настаиваю на первоначальном варианте именно из-за такой постановки задачи.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.03.2014, 00:05   #6
Smogg
Участник клуба
 
Регистрация: 14.06.2011
Сообщений: 1,138
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Код:
(n/10%10)==(n/100)
возвращает 1, если верно
Smogg вне форума Ответить с цитированием
Старый 13.03.2014, 06:40   #7
Fenex
Форумчанин
 
Аватар для Fenex
 
Регистрация: 15.02.2012
Сообщений: 821
По умолчанию

Цитата:
Но ИМХО у автора в задаче скрыта подляночка, и я всетки настаиваю на первоначальном варианте именно из-за такой постановки задачи.
Однозначно. Слово "ровно" написано не просто так.
^-.-^ My GitHub
Fenex вне форума Ответить с цитированием
Старый 13.03.2014, 09:05   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
возвращает 1, если верно
Э-э-э... Ну вроде так и должно быть.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.03.2014, 17:39   #9
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Так занимательно смотреть как супермодераторы с таким усердием рассуждают на тему правильности этой "суперзадачи" ...
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Старый 13.03.2014, 18:49   #10
Timer1
Пользователь
 
Регистрация: 12.03.2014
Сообщений: 13
По умолчанию

Смысл в том, что пользователь должен вводить любое n значное число, а прога должна выявить есть ли в нем три одинаковых цифры, или нет)))
Timer1 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно изменить на языке C++ Найти такую точку, что шар радиуса R с центром в этой точке, содержит min число точек заданного мн-ва. Alexandr95 Помощь студентам 0 26.05.2013 19:55
Задача: Строка содержит произвольный русский текст. Проверить, каких букв в нем больше: гласных или согласных Backward Паскаль, Turbo Pascal, PascalABC.NET 14 13.05.2013 20:46
Дан целочисленный массив размера N, содержащий ровно два одинаковых элемента. Найти номера одинаковых элементов и вывести эти номе Alexar Makken Паскаль, Turbo Pascal, PascalABC.NET 1 23.12.2011 22:07
дача:дано число n.Правдали оно содержит ровно 3 одинаковых цифры Dima170792 Помощь студентам 4 25.05.2011 20:19
Как разложить число на цифры ( задача ) neo-210 Помощь студентам 6 11.12.2009 22:37