0 / 0 / 0
Регистрация: 12.05.2015
Сообщений: 3
1

Программа для обработки массивов

13.05.2015, 22:28. Показов 388. Ответов 0
Метки нет (Все метки)

Доброго времени суток!
Получил задание:
Вводить линейные массивы разных размеров ( размерность также вводится с клавиатуры ) и обрабатывать их по заданному алгоритму . Завершить работу программы по желанию пользователя . На экран монитора выводить :
• порядковый номер запуска программы ,
• введен массив ,
• результат его обработки.
В одномерном массиве , который состоит из n действительных элементов , вычислить сумму элементов массива , расположенных после максимального элемента;

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
#include <iostream>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <locale>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int razmer, n_z = 1, vuxod = 1, i, max, n_max, sum = 0;
    while (vuxod != 0)
    {
        system("cls");
        cout << endl << "Это " << n_z << " запуск программы";
        cout << endl << "Введите размер массива:";
        cin >> razmer;
        sum = 0;
        if (razmer <= 0)
            cout << endl << "Неверный размер!";
        else
        {
            int *mas = new int[razmer];
            for (i = 0; i < razmer; i++)
            {
                cout << endl << "Введите " << i + 1 << " элемент :";
                cin >> mas[i];
            }
            max = mas[0];
            n_max = 0;
            for (i = 1; i < razmer; i++)
            if (max < mas[i])
            {
                max = mas[i];
                n_max = i;
            }
            for (i = n_max + 1; i < razmer; i++)
            
                cout << endl << "Сума элементов массива после максимального элемента: " << sum;
 
            if (n_max == razmer - 1) cout << endl << "Максимальный элемент был последним";
            cout << endl << "Массив: ";
            for (i = 0; i<razmer; i++)
                cout << " " << mas[i];
            n_z++;
            cout << endl << "Хотите продолжить(1-да):";
            cin >> vuxod;
            delete[] mas;
        }
        system("pause");
    }
    return 0;
}
что делаю не так?

Добавлено через 8 часов 28 минут
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
#include <iostream>
#include <cmath>
 
void main(){
    int *array, n, i;
 
    std::cout << "Enter size of array: ";
    std::cin >> n;
    array = new int[n];
 
    for (i = 0; i < n; i++){
        std::cout << i << ": ";
        std::cin >> array[i];
    }
    //1-----------------------------------------------      
    int c, counter = 0;
    std::cout << "Enter c: ";
    std::cin >> c;
    for (i = 0; i < n; i++)
    if (array[i] > c)
        counter++;
    std::cout << "Elements > c: " << counter;
    //2-----------------------------------------------  
    int max = abs(array[0]);
    for (i = 0; i < n; i++)
    if (array[i] > max){
        max = abs(array[i]);
        counter = i;
    }
 
    int mult = 1;
    for (i = counter; i < n; i++)
        mult *= array[i];
    std::cout << "\nMultiplication of elements after max |element|: " << mult;
    //3-----------------------------------------------      
    for (i = 0; i < n; i++)
    if (array[i] != 0 && abs(array[i] - 1) > abs(array[i])){
        int tmp = array[i];
        for (int j = 0; j < i; j++)
            array[i - j] = array[i - j - 1];
        array[0] = tmp;
    }
 
    std::cout << "\nReorganised:\n";
    for (i = 0; i < n; i++)
        std::cout << array[i] << ' ';
    std::cout << std::endl;
 
    delete[]array;
    system("pause");
}
Задача решена, спасибо за помощь :333
Тема закрыта!
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.05.2015, 22:28
Ответы с готовыми решениями:

Функции для обработки массивов
Разработать программу на С++ используя функции форматированного ввода-вывода языка Си . Исходные...

Функции для обработки массивов
Добрый день! Помогите пожалуйста с программой. Есть две функции. В первой функции считывается...

Написать программу для обработки массивов
Написать программу для обработки массивов. Все массивы создаются путем динамического выделения...

Использование процедур для обработки массивов
Составить процедуру подсчета количества элементов одномерного массива А, значения которых лежат в...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.05.2015, 22:28
Помогаю со студенческими работами здесь

Функции для обработки одномерных массивов
С. Прата, задача 7.6, Посмотрите, пожалуйста, насколько дубово (для текущего уровня) я решил...

Определение и использование шаблонов функций для обработки массивов
Помогите пожалуйста, нужно вывести данный массив в шаблонную функцию: #include &lt;iostream.h&gt; void...

Создать модуль для обработки одномерных массивов с помощью классов
Создать модуль для обработки одномерных массивов с помощью классов. Добавлено через 21 час 5...

Составить программу на языке C++ для обработки двумерных массивов с использованием указателей
Дана матрица порядка n. Найти в последнем столбце max и min. Если в матрице есть нули, то заменить...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru