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

В отсортированный список вещественных чисел после каждого максимального числа вставить номер в списке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как правильно вызвать конструктор вектора в данном случае? http://www.cyberforum.ru/cpp-beginners/thread1487901.html
#include <iostream> #include <fstream> #include <map> #include <vector> #include <string> using namespace std; typedef map<string, vector<string>> Map; void Load(Map &m)
C++ Проблемы с возведением в степень #include <stdio.h> #include <iostream> #include <locale.h> #include <math.h> using namespace std; int main() { setlocale(LC_ALL, "rus"); int x = 2, n = 1, s = 1, f; double a, sum... http://www.cyberforum.ru/cpp-beginners/thread1487882.html
Драйвер для отслеживания обращения к папкам C++
Добрый вечер, форумчане! Мне нужно написать драйвер для отслеживания обращения к 2 папкам. Сам драйвер должен выполнять функцию блокировки - не давать доступ к папке и запрещать добавлять в эту папку...
Удалить элементы массива, состоящие из одной цифры, и отсортировать его C++
Здравствуй дорогой друг! Спасибо, что зашёл сюда! Передо мной стоит следующая задача: Дан массив целых чисел из n элементов, заполненный случайным образом числами из заданного пользователем...
C++ Поменять местами первое и последнее слова в строке http://www.cyberforum.ru/cpp-beginners/thread1487849.html
Поменять местами в строке первое и последнее слова . Считать , что слова отделены друг от друга пробелом
C++ Сортировка массива линейным выбором Помогите пожалуйста!ЗАДАН МАССИВ ДЕЙСТВИТЕЛЬНЫХ ЧИСЕЛ.УПОРЯДОЧИТЬ ДАННЫЙ МАССИВ ИСПОЛЬЗУЯ СОРТИРОВКУ ЛИНЕЙНЫМ ВЫБОРОМ.Алогоритм: найти элемент массива имеющий наименьшее значение,перставить его с... подробнее

Показать сообщение отдельно
ящюр
97 / 97 / 24
Регистрация: 15.03.2013
Сообщений: 521
Записей в блоге: 1
26.06.2015, 10:18
Если я правильно понял задание. Программа создает новый массив, в котором каждая позиция это массив на 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
#include <stdio.h>
#include <windows.h>
#include <iostream>
#include <time.h>
using namespace std;
 
int main () {
    setlocale (0,"");   // Кириллица в консоли
        //Задаем массив и переменные
    int mas[]={1,5,8,9,4,6,8,12,84,52,54,0};
    int pos=1;
    int maxPos=1;
    int Max=0;
    int Min=INT_MAX;
    int MaxL;   // Число которое меньше максимального
    int R[3];
    int masSize=sizeof(mas)/sizeof(int);
 
    int** RES= new int*[masSize];// Задаем новый массив 
        // Массив RES размер: строк - размер исходного массива на 3 колонки
        // 1я кол - само число,2я- поз.в исх.списке,3я - поз. по максимальности
    for (int a=0;a<masSize;a++)
    {
        RES[a]=new int[3];
    }
        // Проходим по массиву
    for (int a=0;a<masSize;a++)
    {
        if (mas[a]>Max)Max=mas[a];  // Находим максимальное число
        if (mas[a]<Min)Min=mas[a];  // Находим минимальное число
        RES[a][1]=mas[a];           // Само число
        RES[a][2]=pos;              // Порядковый номер в списке
        RES[a][3]=1;        // На данный момент ставим всем числам 1е место по максимуму
        pos++;
    }
        // Вычисляем позицию по максимальности
    while (Max>=Min){
        MaxL=-1;
        for (int y=0;y<masSize;y++)
        {
            if (RES[y][1]== Max)
            {
                RES[y][3]=maxPos;
            }
            if ((RES[y][1]>MaxL) && (RES[y][1]< Max))
                // Находим число меньше максимального
            {
                MaxL=RES[y][1];
                //RES[y][3]=maxPos;
                
            }
        }
        maxPos++;
        Max=MaxL;
    }
        // Выводим массив
    cout<<"Число - Поз. в списке - Максимальное"<<endl;
    for (int a=0;a<masSize;a++)
    {
        cout<<RES[a][1]<<"\t\t- "<<RES[a][2]<<"\t\t- "<<RES[a][3]<<endl;
    }
 
    system ("pause");
    return 0;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.