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

Найти значение 3-го по величине элемента и значения всех элементов массива, которые его превышают, заменить на найденное значение - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Добавить после элемента массива с заданным индексом элемент со значением 100 http://www.cyberforum.ru/cpp-beginners/thread198224.html
Удалить последний элемент равный 0. Добавить после элемента массива с заданным индексом элемент со значением 100. Добавлено через 15 минут P.S. При выполнении работы используются статические массивы. Для организации статических массивов с псевдопеременными границами необходимо объявить массив достаточно большой длины N. Затем пользователь вводит реальную длину массива (не больше N) и работает...
C++ BigInteger(c++) Здравствуйте!!! Помогите составить программу которая вычесляет сумму двух больших цифр (до 10^100 степени). Пробовал через unsigned long long ничего не получаилось... Пробовал через char но он вместо символов выводит символы аски кода... Я знаю что нужно решить через char массив но не получается... Или хотя бы подкиньте идею (а лучше алгоритм) как это решить http://www.cyberforum.ru/cpp-beginners/thread198220.html
После каждого предложения в скобках добавить, сколько раз встретилось в нём введённое с клавиатуры слово C++
Помогите написать программу которая считывает текст из файла и выводит его на экран после каждого предложения в скобках добавляя сколько раз встретилось в нём введённое с клавиатуры слово.
C++ проверьте пожалуйста алгоритм и правмльность 2-х программ)
1.Написать программу, которая позволяет вводить целочисленную матрицу 3×4, выводить её в наглядном формате и определять номер столбца, сум-ма элементов которого минимальна. Программа должна позволять произ-водить вычисления столько раз, сколько угодно пользователю. #include <iostream.h> #include <conio.h> #include <iomanip.h> using namespace std; int main() { const int N=3,M=4; int...
C++ статические массивы http://www.cyberforum.ru/cpp-beginners/thread198179.html
Помогите, пожалуйста) Нужно выполнить следующее задание с использованием статических массивов: Дана квадратная матрица. Упорядочить ее строки по неубыванию сумм элементов строк.
C++ Коды Фано, Хаффмана, Хэмминга, Шеннона, код с проверкой на четность Помогите пожалуйста!!!!!!очень срочно надо!!!:(:(нужно реализовать коды Фано,Хаффмана,Хэмминга((7,4),(8,4)),Шеннона,код с проверкой на четность!!!хоть что-нибудь!!!в консоли!! подробнее

Показать сообщение отдельно
ne6u4u
 Аватар для ne6u4u
12 / 12 / 0
Регистрация: 14.11.2010
Сообщений: 29
27.11.2010, 01:11     Найти значение 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
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
61
62
63
64
65
66
67
68
69
70
71
72
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL,"Russian");
    const int MAX = 100;
    int num;
    int arr[MAX], temp[MAX];
    cout << "Введите размерность массива (не больше " << MAX << "): ";
    cin >> num;
    for (int i=0; i<num; i++)
    {
        cout << "Введите " << i+1 << " элемент массива: ";
        cin >> arr[i];
        temp[i] = arr[i];
    }
 
    //сортировка по убыванию методом пузырька
    for (int i=0; i< num; i++)
    {
        for (int j=0; j<num; j++ )
        {
            int buf;
            if (temp[j] < temp[j+1])
            {
                buf = temp[j];
                temp[j] = temp[j+1];
                temp[j+1]=buf;
            }
        }
 
    }
 
    // вывод введенного массива
    cout << endl;
    for (int i=0; i<num; i++)
    {
        cout << arr[i] << " ";
    }
    cout << endl;
 
    //вычисление третьего по величине значения, замена, вывод
    int count = 0;
    int tret = 0;
    for (int i=num; i>0; i--)
    {
        if (temp[i-1] != temp[i])
        {
            count++;
            if (count == 3)
                tret = temp[i-1];
        }
    }
    if (tret != 0)
    {
        cout << "Третье по величине число: " << tret << endl;
        cout << endl << "Преобразованный массив: "<< endl;
        for (int i=0; i<num; i++)
        {
            if (arr[i] > tret)
                arr[i] = tret;
            cout << arr[i] << " ";
        }
        cout << endl;
    } 
    else
    {
        cout << "В введенном массиве существует только два числа!!! Повторите ввод." << endl;
    }
    
    return 0;
}
Как то слишком объемно получилось, возможно как-то можно и короче
 
Текущее время: 17:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru