Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 06.06.2012
Сообщений: 34
1

Проверить, есть ли в записи числа три одинаковые цифры

21.06.2012, 12:52. Показов 3220. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано натуральное число N. Проверить, есть ли в записи числа три одинаковые цифры.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.06.2012, 12:52
Ответы с готовыми решениями:

Проверить, есть ли в записи натурального числа N три одинаковые цифры
дано натуральное число n. Проверить есть ли в записи числа три одинаковые цифры

Проверить, есть ли в записи числа m цифры, совпадающие с цифрами в записи числа n
Помогите составить программу. Условие: Даны два натуральных числа m и n{m< 9999, n < 9999)....

Проверить число n<10000 на три одинаковые цифры
Дано натуральное число n (n&lt;10000). Верно ли, что это число содержит ровно три одинаковые цифры,...

Проверить есть ли одинаковые цифры в числе
Дано четырёхзначное число,если в нем 3 или больше одинаковых цифр,то выводится &lt;YES&gt;,если меньше 3...

11
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
21.06.2012, 13:21 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <algorithm>
#include <string>
#include <iostream>
 
bool has3equalchar(std::string str)
{
    for (auto i = str.begin(); i!= str.end(); ++i)
        if (std::count(i, str.end(), *i) == 3) return true;
    return false;
}  
 
int main()
{
    const std::string N = "123211";
    std::cout<< (has3equalchar(N) ? "Yes" : "No");
    return 0;
}
http://liveworkspace.org/code/... d6fb8e7121
1
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
21.06.2012, 13:24 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <cstdlib>
 
bool contains(int x)
{
    int digits[10] = {0};
 
    for(x = std::abs(x); x != 0; x/= 10)
    {        
        int rem = x % 10;        
        if(++digits[rem] == 3)
            return true;
    }
 
    return false;
}
 
int main()
{
    int value;
    std::cout << "value: ";
    std::cin >> value;
 
    if(!std::cin)
        return 1;
        
    std::cout << (contains(value) ? "yes" : "no") << std::endl;
}
1
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
21.06.2012, 13:44 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <iostream>
#include <string>
#include <unordered_map>
#include <cstdlib>
#include <utility>
#include <algorithm>
 
int main()
{
    const auto num = 0x736f6f6e;
    std::cout << num << std::endl;
    const auto str = std::to_string(num);
    std::unordered_map<char, std::size_t> m;
    for(const auto& elem: str)
        ++m[elem];
    const auto it = std::find_if
                    (
                        m.begin(),
                        m.end(),
                        [] (const std::pair<const char, std::size_t>& p)
                        {
                            return p.second == 3;
                        }
                    );
    std::cout << ((it == m.end()) ? "No" : "Yes") << std::endl;
    return 0;
}
0
В астрале
Эксперт С++
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
21.06.2012, 13:45 5
MrGluck, Передача не по конст ссылке строки в функцию - печалька
1
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
21.06.2012, 13:51 6
Исправляемся
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <algorithm>
#include <string>
#include <iostream>
 
bool has3equalchar(const std::string &str)
{
    for (auto i = str.begin(); i!= str.end(); ++i)
        if (std::count(i, str.end(), *i) == 3) return true;
    return false;
}  
 
int main()
{
    const std::string N = "123211";
    std::cout<< (has3equalchar(N) ? "Yes" : "No");
    return 0;
}
0
42 / 42 / 8
Регистрация: 24.11.2009
Сообщений: 165
21.06.2012, 13:52 7
ребят, а почему вы не используете using namespace std; ? так же проще, или это считается дурным тоном или ещё есть какая то причина?
0
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
21.06.2012, 13:53 8
Цитата Сообщение от bLesk Посмотреть сообщение
ребят, а почему вы не используете using namespace std; ? так же проще, или это считается дурным тоном или ещё есть какая то причина?
Не хочется валить все функции в одну большую кучу. Может привести к конфликтам, да и не всегда это удобно. Лучше сразу указывать полное имя, чем предоставлять машине возможность дописывать то, чего ты мб и не хотел.
1
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
21.06.2012, 13:54 9
bLesk, я же вам вроде кидал ссылку на блог, где это обсуждалось.
0
42 / 42 / 8
Регистрация: 24.11.2009
Сообщений: 165
21.06.2012, 13:56 10
Цитата Сообщение от soon Посмотреть сообщение
bLesk, я же вам вроде кидал ссылку на блог, где это обсуждалось.
либо вы меня с кем-то путаете, либо я был крайне невнимателен, можете ещё раз предоставить эту ссылку пожалуйста?
0
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
21.06.2012, 13:59 11
Ага, спутал.
https://www.cyberforum.ru/blogs/34326/blog275.html
1
Форумчанин
Эксперт CЭксперт С++
8215 / 5045 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
21.06.2012, 14:07 12
Цитата Сообщение от soon Посмотреть сообщение

Не по теме:

почти https://www.cyberforum.ru/humour/

0
21.06.2012, 14:07
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.06.2012, 14:07
Помогаю со студенческими работами здесь

Проверить, есть ли в трехразрядном числе одинаковые цифры
Доброго времени суток всем, Прошу помощи, я новичек по этому не сильно кричите.. Есть бешенное...

Подсчитать количество трехзначных натуральных чисел, в записи которых есть две одинаковые цифры
Подсчитать количество трехзначных натуральных чисел, в записи которых есть две одинаковые цифры.

Есть в записи числа m цифры, которые совпадают с цифрами в записи числа n
Дано два натуральных числа n(&lt;=9999) и m (&lt;=9999). Проверить, есть в записи числа m цифры, которые...

Проверить есть ли в массиве одинаковые числа
Как можно проверить есть ли в массиве числа с одинаковым значением? числа вводяться с клавиатуры.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru