Форум программистов, компьютерный форум CyberForum.ru

Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
roman007
0 / 0 / 0
Регистрация: 10.10.2011
Сообщений: 15
10.10.2011, 19:12     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? #1
дано натуральное число <=9999 верно ли что оно содержит три одинаковых цифры как например 6676, 4544, 0006?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.10.2011, 19:12     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры?
Посмотрите здесь:

Верно ли, что число содержит ровно три одинаковые цифры? C++
C++ Дано число n. Верно ли, что это число содержит ровно 3 одинаковых цифры
C++ Проверить, есть ли в записи натурального числа N три одинаковые цифры
Верно ли, что число содержт три одинаковые цифры C++
C++ Дано натурально n-значное число. Проверить содержит ли оно две одинаковые цифры. Оформить в виде функции
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
x1Mike7x
 Аватар для x1Mike7x
214 / 127 / 6
Регистрация: 06.11.2010
Сообщений: 234
10.10.2011, 19:17     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int i, X, Count[10] = {};
scanf( "%d", &X );
while ( X )
{
   ++Count[ X % 10 ];
   X /= 10;
}
for ( i = 0; i < 10; ++i )
    if ( Count[i] == 3 )
    {
        printf( "Yes\n" );
        break;
    }
if ( i == 10 )
    printf( "No\n" );
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
10.10.2011, 19:19     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? #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
#include<stdio.h>
#include<math.h>
#include<conio.h>
 
int Check(long a)
{
   long b = abs(a);
   int digits[10] = {0}, i;
   while (b)
   {
      digits[b%10]++;
      b /= 10;
   }
   i = -1;
   while(++i < 10 && digits[i] <= 2)
      ;
   return i < 10;
}
 
int main()
{
   long a;
   scanf("%ld", &a);
   printf("%s\n", Check(a) ? "yes" : "no");
   getch();
   return 0;
}
roman007
0 / 0 / 0
Регистрация: 10.10.2011
Сообщений: 15
10.10.2011, 19:22  [ТС]     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? #4
спасибо, но ето всё слишком замудрённо...
мы недавно начали проходить с++ поэтому я тут мало что понял...
Thinker
Эксперт C++
 Аватар для Thinker
4215 / 2189 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
10.10.2011, 19:23     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? #5
Цитата Сообщение от roman007 Посмотреть сообщение
спасибо, но ето всё слишком замудрённо...
мы недавно начали проходить с++ поэтому я тут мало что понял...
Это самый простой способ
}{NiM
 Аватар для }{NiM
64 / 64 / 2
Регистрация: 25.11.2009
Сообщений: 283
10.10.2011, 19:24     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры? #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include<stdio.h>
#include <intrin.h>
 
int main()
{
    char* c=new char[5];
    fgets(c,4,stdin);
    
    for (int i = 0; i<2; i++)
    {
        int count(1);
        for (int j = i+1; j<strlen(c); j++)
            if (c[i] == c[j]) count++;
        if (count >= 3) printf("Такое число есть");
    }
}
Как то так )

Добавлено через 48 секунд
Точнее три цифры есть надо вывести =)
Yandex
Объявления
10.10.2011, 19:24     Дано натуральное число <= 9999; верно ли, что оно содержит три одинаковых цифры?
Ответ Создать тему
Опции темы

Текущее время: 00:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru