Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.80/35: Рейтинг темы: голосов - 35, средняя оценка - 4.80
 Аватар для grrrrr
49 / 49 / 13
Регистрация: 21.04.2009
Сообщений: 265

Определить, содержит ли 4-х значное число 3 одинаковые цифры.

12.08.2009, 13:30. Показов 7320. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я сортирую, а потом сравниваю, но что то не работает

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
29
30
31
32
33
34
35
36
37
38
char* mas(char* a, int s);
 
int main(int argc, char *argv[])
{
    const int size=100;
    char arr[size];
    int i, k;
    cout << "Write number: ";
    cin.getline(arr, size);
    k=strlen(arr);    
    mas(arr, k);
    if((arr[0]==arr[1]==arr[2]) || (arr[1]==arr[2]==arr[3]))
       cout << "V chisle esti 3 odinakovih!\n";
    else 
       cout << "qweqeeqwe\n";
//    for(i=0; i<k; i++)
//       cout << arr[i] << " ";    
      
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
char* mas(char* a, int s)
{
      int i, j, tmp;
      for(i=0; i<s; i++)
      {
               for(j=0; j<s-1-i; j++)
               {
                        if(a[j] > a[j+1])
                        {
                                tmp=a[j];
                                a[j] = a[j+1];
                                a[j+1] = tmp;
                        }
               }
      }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.08.2009, 13:30
Ответы с готовыми решениями:

Дано натурально n-значное число. Проверить содержит ли оно две одинаковые цифры. Оформить в виде функции
Помогите решить лабораторные Дано натурально n-значное число. Проверить содержит ли оно две одинаковые цифры. Оформить в виде функции.

Определить, верно ли, что заданное натуральное число содержит ровно три одинаковые цифры
Решите задачу дано натуральное число n n 10000 определить, верно ли, что это число содержит ровно три одинаковые цифры, как например,...

Дано натуральное n-значное число P. Верно ли что число содержит три одинаковые цифры.
Люди помогите - нужно програмку написать с помощью процедур и функций - собственно вот: Дано натуральное n-значное число P. Верно ли что...

21
Эксперт С++
 Аватар для odip
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
12.08.2009, 23:26
Студворк — интернет-сервис помощи студентам
выполнятся будет дольше
Пусть дольше. Кто сказал нужно самый быстрый способ ?
К тому же на таких коротких проходах разницы не будет заметно.

Если нужно очень быстро - делаем так:
C++
1
2
3
4
5
6
char have3in4[10000]= { ..... }; /* заранее пишем ответы на все 4-ех значные числа */
 
int number;
 
cin >>number;
cout << (have3in4[number] ? "yes" : "no" ) <<"\n";
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
13.08.2009, 10:23
Я думаю логичней для ответа на вопрос сколько в числе одинаковых цифр представить это самое число массивом цифр из которых оно состоит, а затем в полученном массиве произвести подсчёт одинаковых элементов . Подсчёт элементов я вижу у Monte-Cristo, ну что-то подобное и у меня, правда у меня на этапе подсчёта цифр в числе идёт одновременное их копирование в массив. Вообщем вот исходник

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <windows.h>
#include <stdio.h>
 
//Функция для представления числа массивом чисел т.е
//1024 будет представлено как {4,2,0,1};
int NumToArray(int num);
int * NumArray = (int *)malloc(sizeof(int));
 
void main()
{
    printf("Vvedite chislo\r\n");
    int num;scanf("%d",&num);
    int i,nSame = 0,nDigits = NumToArray(num);
    if(nDigits < 3 || 4 < nDigits)
        printf("Vvedennoe chislo ne 4-hznachnoe\r\n");
    else
    {
        for(i = 0; i < nDigits;i++)
        {
            if(NumArray[0] == NumArray[i])
                nSame++;
        }
        printf("V chisle %d ",num);
        if(2 < nSame)
            printf("[%d] cifri sovpadaut",nSame);
        else
            printf("menee 3-h odinakovih cifr");
        NumArray = (int *)realloc((void *)NumArray,sizeof(int));
    }
    printf("\r\nVvedite NUM1 dlya vvoda novogo chisla\r\n");
    scanf("%d",&num);
    if(num == 1)
        main();
}
 
int NumToArray(int num)
{
    int nDigits = 0,iBuf;
    if(num < 0)
        num = 0 - num;
    if(num == 0)
        NumArray[nDigits] = 0;
    else
    {
        iBuf = num;
        while(0 < iBuf)
        {
            NumArray[nDigits] = (iBuf % 10);
            iBuf /= 10;
            nDigits++;
 
            NumArray = (int *)realloc
                (
                    (void *)NumArray,
                    sizeof(int)*(nDigits + 1)
                );
        }
    }
    return nDigits;
}
Миниатюры
Определить, содержит ли 4-х значное число 3 одинаковые цифры.  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.08.2009, 10:23

Определить, содержит ли число две одинаковые цифры
Дано натуральное трехразрядное число n. Определить, содержит ли оно две одинаковые цифры. Заранее благодарен!

Определить, содержит ли число две одинаковые цифры
1) Даны действительные числа x, y. Определить, принадлежит ли точка (x,y) кольцу с внутренним и внешним радиусами соответственно R1 и R2 и...

Ввести 4-х значное число,если вторая и четвертая цифры одинаковые,то должно вывести да
Всем привет,не подскажете как реализовать решение, с консоли вводим 4-х значное число,если вторая и четвертая цифры одинаковые,то должно...

Дано натуральное четырехзначное число n.верно ли что это число содержит три одинаковые цифры
дано натуральное четырехзначное число n.верно ли что это число содержит три одинаковые цифры

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


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

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы. Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru