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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Выбрать и упорядочить данные из текстового файла http://www.cyberforum.ru/cpp-beginners/thread46911.html
В языке С не сильна, и программа вызвала некое недоумение) Есть тестовый файл со следующими данными: 0.299 -0.410 960.20 4551.85 1.120 346.85 275.46 20.508 19.854 99.999 20.085 19.431 99.999 99.999 99.999 0.388 1.146 99.999 99.999 99.999 99.999 99.999 99.999 99.999 0.003 0.003 0.029 0.039 0.041 0.056 30 30 99.999 99.999 99 21.295545351 15.896836368 9 1 22.21 2008...
C++ Координаты для вывода массива Товарищи, помогите массив вывести в координатах. Делаю так: HANDLE console = GetStdHandle(STD_OUTPUT_HANDLE); COORD coord = {50,50}; const int y=3,x=3; int a={1,1,1,1,1,1,1,1,1}; int i, j; SetConsoleCursorPosition(console, coord); http://www.cyberforum.ru/cpp-beginners/thread46893.html
C++ От чего мы любим С++?
Хочу спросить наших уважаемых гуру, как истинных специалистов в области программирования на С++ несколько давно наболевших вопросов. Я уже успел попробовать всего по чуть-чуть и мне сложно определится и расставить приоритеты между такими двумя гигантами как MFC и VCL, у каждой из этих библиотек своя история и свои возможности но на кого все же поставить ставку? Также мне хотелось бы спросить...
Перегруз функции C++
Вообще задание такое разработать функцию, вычисляющую максимальный элемент: - в одномерном числовом массиве, состоящем из целых чисел; - в одномерном числовом массиве, состоящим из вещественных чисел; - в массиве строк (для этого массива функция должна находить строку с максимальной длиной). С помощью перегруза...
C++ Как избавиться от ошибки компоновщика? http://www.cyberforum.ru/cpp-beginners/thread46733.html
Как избавиться от ошибки компоновщика в vs2008? Сначала вылезала в мфц проектах, а теперь уже везде. Переустановка не помогает
C++ Error LNK2019 + упрощенный вариант консольной графики Программка из книги Лафоре "ОПП в С++", Глава 10. Закинул я msoftcon.h и msoftcon.срр в папку к исходникам.. #include "stdafx.h" #include <iostream> using namespace std; #include <ctime> #include <cstdlib> #include "msoftcon.h" const int CPF = 5; const int maxHorses = 7; подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
13.08.2009, 10:23     Определить, содержит ли 4-х значное число 3 одинаковые цифры.
Я думаю логичней для ответа на вопрос сколько в числе одинаковых цифр представить это самое число массивом цифр из которых оно состоит, а затем в полученном массиве произвести подсчёт одинаковых элементов . Подсчёт элементов я вижу у 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 одинаковые цифры.  
 
Текущее время: 02:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru