Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 29.04.2013
Сообщений: 7
1

Найти среднее арифметическое отрицательных элементов массива, предшествующих первому положительному элементу; проверить, упорядочены ли элементы по во

28.05.2013, 13:33. Показов 1496. Ответов 2
Метки нет (Все метки)

Помогите, пожалуйста! Сегодня зачет, а у меня ноут полетел!! нужен такой код до трех часов:
1)Найти среднее арифметическое отрицательных элементов массива, предшествующих первому положительному элементу. Если по какой-либо причине вычислить среднее арифметическое не удается, выдать об этом сообщение с указанием причины.
2)Проверить, упорядочены ли элементы по возрастанию.
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.05.2013, 13:33
Ответы с готовыми решениями:

Найти среднее арифметическое элементов, предшествующих первому положительному элементу массива
Найти среднее арифметическое значение элементов массива х(х1,х2...х10), предшествующих первому...

Произведение отрицательных элементов массива, предшествующих первому положительному элементу
Найти произведение отрицательных элементов массива, предшествующих первому положительному элементу....

в массиве х(10) найти среднее арифметическое предшествующих первому положительному элементу. только массив выводитБ больше ничё не делает
в массиве х(10) найти среднее арифметическое предшествующих первому положительному элементу. ...

Найти среднее арифметическое элементов массива, предшествующих первому нулевому элементу
Доброго времени суток, форумчане! Столкнулся с проблемой в коде программы, задание такое: Дан...

2
С++ Beginner
120 / 120 / 77
Регистрация: 28.02.2013
Сообщений: 246
28.05.2013, 14:02 2
Лучший ответ Сообщение было отмечено Кирыч как решение

Решение

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
#include <iostream>
 
int main() {
    const int n = 12;
    bool is_only_negative = true, is_sorted = true;
    int *arr = new int [n]; 
    int first_pos, sum = 0;
    
    std::cout << "Enter Array: ";
    for(int i = 0; i < n; ++i)
        std::cin >> arr[i];
    for(int i = 0; i < n; ++i) {
        if(arr[i] > 0) {
            first_pos = i;
            is_only_negative = false;
            break;
        }
    }
    
    for(int i = 0; i < first_pos; ++i)
        if(arr[i] < 0)
            sum += arr[i];
    std::cout << "Sum of negative elements: " << sum << std::endl; 
    
    if(is_only_negative)
        std::cout << "There is no positive elements" << std::endl;
    
    for(int i = 0; i < n - 1; ++i)
        if(arr[i] > arr[i + 1])
            is_sorted = false;
    
    if(!is_sorted)
        std::cout << "Not Sorted" << std::endl;
    else
        std::cout << "Sorted" << std::endl;
    
    delete[] arr;
    return 0;
}
0
189 / 159 / 35
Регистрация: 22.05.2013
Сообщений: 455
Записей в блоге: 1
28.05.2013, 14:05 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 <iostream>
#include <iomanip>
using namespace std;
 
double average(int [], int);
bool sort(int [], int);
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int arraySize = 20;
    int arr[arraySize];
 
    srand(time(NULL));
    cout << "Массив:" << endl;
    for (int i = 0; i < arraySize; i++)
    {
        if (i % 5 == 0 && i > 0)
            cout << endl;
        arr[i] = 100 - rand() % 200;
        cout << setw(5) << arr[i];
    }
 
    if (average(arr, arraySize) != 0)
        cout << endl << "Среднее значение отрицательных элементов до первого положительного: " 
                     << setprecision(2) << setiosflags(ios::fixed | ios::showpoint) << average(arr, arraySize) << endl;
    else
        cout << endl << "Среднее не может быть найдено, т.к. первый элемент- положительный" << endl;
 
    if (sort(arr, arraySize) == true)
        cout << "Массив упорядочен по возрастанию" << endl;
    else
        cout << "Массив не упорядочен" << endl;
 
    system("pause");
    return 0;
}
 
 
double average(int a[], int size)
{
    int i = 0;
    double sum = 0, ave;
    
    while (a[i] < 0)
    {
        sum += a[i];
        i++;
    }
 
    ave = sum / (double)i;
 
    if (i == 0)
        return 0;
    else
        return ave;
}
 
bool sort(int a[], int size)
{
    for (int i = 0; i < size; i++)
        if (a[i] > a[i + 1])
            return false;
    return true;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.05.2013, 14:05

Найти произведение и среднее арифметическое элементов массива,предшествующих первому нулевому элементу
Дан массив вещественных чисел.Найти произведение и среднее арифметическое элементов...

Найти среднее арифметическое элементов предшествующих первому отрицательному элементу
найти среднее арифмитическое элементов предшествующих первому отрицательному элементу. чёт у меня...

Найти среднее арифметическое положительных элементов последовательности, предшествующих первому отрицательному элементу
Дана последовательность из n вещественных чисел. Найти среднее арифметическое положительных...

Найти сумму элементов, предшествующих первому положительному элементу, и количество таких элементов
В одномерном массиве вещественных чисел найти сумму элементов, предшествующих первому...


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

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

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