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

Поиск в массиве числа, встречающегося наибольшее число раз. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переделать Код! http://www.cyberforum.ru/cpp-beginners/thread61504.html
Вообщем прога написана на с++ 2007, его надо переделать в версию 5.02! Должна выводить Числа от 0 до бесконечности!(пока не выключишь прогу) вот код: #include <iostream> int main() { long...
C++ Прочитать память по заданному адресу. Надо написать программу на С в Linux, которая находит в памяти другую программу и читает её содержимое. На ассемблере в DOS я это делал. А как здесь?. http://www.cyberforum.ru/cpp-beginners/thread61495.html
Функции в C++ C++
Помогите решить 2 задачки :) 1 Написать программу с функцией которая вводить число n и вычисляет n-ый член последовательности Фибоначи 2 функция которая вычисляет e^x с точность до n ( n вводится...
Сложность с потоками: программа виснет C++
LPVOID u1=new LPVOID(); Param* pStruct1 = reinterpret_cast<Param*>(u1); LPVOID u2=new LPVOID(); Param* pStruct2 = reinterpret_cast<Param*>(u2); pStruct1 = p1; pStruct2 = p2; DWORD...
C++ Надо найти ошибку в коде http://www.cyberforum.ru/cpp-beginners/thread61482.html
Вот сообствено ошибка в коде,но немогу найти ее #include <iostream> #include <cstdio> #include <cstring> using namespace std; void main() { int a,x; cout<<"vvedite vozrast(v diapazone...
C++ Кодировка в C Есть некая функция, написаная мною POS(аргумент), она делает транслит, т.е. например аргумент= Машина, то она преобразует ее => Mashina. НО! Всё это хорошо когда аргумент, тобиш переменная,... подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт CЭксперт С++
9683 / 5633 / 956
Регистрация: 25.07.2009
Сообщений: 10,811
06.11.2009, 02:08
master19, думаю, что не лучший вариант, но на С
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
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    int *arr = NULL;
    int elements, max_counted_value, max_count, cur_count, i, j;
    
    printf("Elements in array: ");
    scanf("%d", &elements);
    if ( elements < 1 ){
        printf("ERROR: number of elements can't be less 1\n");
        exit(1);
    }
    
    if ( (arr = (int *)calloc(elements, sizeof(int))) == NULL ) {
        printf("ERROR: not enough memory\n");
        exit(1);
    }
    
    for ( i = 0; i < elements; i++ ) {
        printf("array[%d] = ", i);
        scanf("%d", &arr[i]);
    }
    
    max_counted_value = arr[0];
    max_count = 1;
    for ( i = 0; i < elements - 1; i++ ){
        cur_count = 1;
        for ( j = i + 1; j < elements; j++ )
            if ( arr[j] == arr[i] )
                cur_count++;
        if ( cur_count > max_count ){
            max_count = cur_count;
            max_counted_value = arr[i];
        }
    }
    
    printf("Value %d meet %d times\n", max_counted_value, max_count);
    
    free(arr);
    arr = NULL;
    exit(0);
}

Цитата Сообщение от sheka Посмотреть сообщение
for (j=i+1;j<=n;j++){ if(a[i]==a[j]){
При j равном n a[j] выходит за границу массива
А на С программу не только вводом/выводом непохоже... Переменные посреди программы тоже объявлять нельзя...
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru