Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
-21 / 0 / 0
Регистрация: 05.11.2015
Сообщений: 2

Обработка одномерного массива. Сделайте, пожалуйста, попроще

05.11.2015, 15:23. Показов 689. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
в одномерном массиве, состоящем из п вещественных элементов, вычислить:
1) количество элементов массива, равных 0;
2) сумму элементов массива, расположенных после минимального элемента.
Упорядочить элементы массива по возрастанию модулей элементов.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.11.2015, 15:23
Ответы с готовыми решениями:

Обработка одномерного массива
Помогите, пожалуйста, с решением 3 задач: 1. Выведите все элементы массива с четными индексами (то есть A, A, A, ...). 2. Выведите все...

Обработка одномерного массива
задан масив A(n),n<=15 целого типа.Сформировать вектор M с элементов A которые больше своих соседей то есть ai>ai-1 и ai>ai-1/...

Обработка одномерного массива
В одномерном массиве состоящим из n элементов вычислить: 1) минимальный по модулю элемент массива 2) сумму модулей элементов массива...

5
191 / 161 / 116
Регистрация: 14.09.2013
Сообщений: 302
05.11.2015, 16:24
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>
#include <cmath>
#include <algorithm>
 
using namespace std;
 
const int q = 1000;
 
bool comp(double i, double j) {
    return abs(i) < abs(j);
}
 
int main(void) {
    double a[q], min, sum;
    int n, countZero;
    cout << "Enter N: ";
    cin >> n;
    cout << "Enter array a:\n";
    sum = countZero = 0;
    min = 1000000000;
    for (int i = 0; i < n; i++) {
        cin >> a[i];
        if (a[i] == 0)
            countZero++;
        if (a[i] < min) {
            min = a[i];
            sum = 0;
        } else
            sum += a[i];
    }
    cout << "Сount zero: " << countZero << endl;
    cout << "Sum before min: " << sum << endl;
    sort(a, a + n, comp);
    cout << "Sorted array:\n";
    for (int i = 0; i < n; i++)
        cout << a[i] << ' ';
    cout << endl;
    return 0;    
}
0
Wanna be serious
 Аватар для Bespridelschic
587 / 474 / 186
Регистрация: 31.07.2013
Сообщений: 1,693
05.11.2015, 16:31
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
#include <iostream>
#include <iomanip>
 
int main() {
    setlocale(LC_ALL, "Russian");
    int n;
    std::cout << "Введите размер массива: ";
    std::cin >> n;
    int *a = new int[n], i;
    std::cout << "Введите " << n << " элементов:\n";
    for (i = 0; i < n; i++)
    {
        std::cout << "a[" << i + 1 << "]: ";
        std::cin >> a[i];
    }
    int count_null = 0;
 
    // Задание №1 расчёт количества нулевых элементов
    for (i = 0; i < n; i++)
    {
        if (a[i] == 0)
        {
            count_null++;
        }
    }
    std::cout << "Количество нулевых элементов = " << count_null << std::endl << std::endl;
 
    // Задание №2 расчет суммы элементов после минимального элемента
    int min = a[1], min_i = 0;
    for (i = 1; i < n; i++)
    {
        if (a[i] < min)
        {
            min = a[i];
            min_i = i;
        }
    }
    min_i++;
    int sum = 0;
    for (i = min_i; i < n; i++)
    {
        sum += a[i];
    }
    std::cout << "Сумма элементов массива расположенных после минимального элемента = " << sum << std::endl << std::endl;
 
    // Задание №3 сортировка массива по возрастанию модулей
    int j;
    for (i = 0; i < n; i++)
    {
        for (j = n - 1; j > i; j--)
        {
            if (fabs(a[j]) < fabs(a[j - 1]))
            {
                int temp = a[j];
                a[j] = a[j - 1];
                a[j - 1] = temp;
            }
        }
    }
    std::cout << "Сортированный массив по возрастанию:\n\n";
    for (i = 0; i < n; i++)
    {
        std::cout << std::setw(3) << a[i];
    }
    std::cout << std::endl << std::endl;
    system("Pause >> 0");
    return 0;
}
0
0 / 0 / 1
Регистрация: 06.11.2015
Сообщений: 9
10.11.2015, 21:36
Первое, думаю, можно так реализовать. Переменная counter и будет считать количество этих элементов.

C++
1
2
3
4
5
6
double mas [n];
int counter = 0;
for (int i = 0; i<n; i++)
if (mas[i]==0)
counter++;
cout<<counter<<endl;
0
21 / 15 / 6
Регистрация: 19.10.2015
Сообщений: 61
10.11.2015, 22:09
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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    const int aSIZE = 10;
    int a[aSIZE];
 
    srand(time(nullptr));
    for (int i = 0; i < aSIZE; ++i)
        cout << (a[i] = 1 + rand() % 100) << ' '; // Ініціалізація масива
 
    int min         = 0;    // Мінімальний елемент (індекс)
    int zeroCount   = 0;    // Кількість нулів
    int sum         = 0;    // Сумма
 
    for (int i = 0; i < aSIZE; ++i)
    {
        if (a[i] < a[min])  min = i;        // Пошук мінімального
        if (a[i] == 0)      zeroCount++;    // Підрахунок нулів
    }
 
    for (int i = ++min; i < aSIZE; ++i)     // Рахування сумми
        sum += a[i];
 
    cout << "\nSum from index["<<min<<"] = " << sum;
 
    cin.sync(); cin.get();                  // Пауза
    return 0;
}
Добавлено через 11 минут
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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    const int aSIZE = 10;
    int a[aSIZE];
 
    srand(time(nullptr));
    for (int i = 0; i < aSIZE; ++i)                 // Ініціалізація масиву
        cout << (a[i] = 1 + rand() % 100) << ' ';   // та вивід його на екран
 
    int min         = 0;    // Мінімальний елемент
    int zeroCount   = 0;    // Кількість нулів
    int sum         = 0;    // Сумма
 
    for (int i = 0; i < aSIZE; ++i)
    {
        if (a[i] < a[min])  min = i;        // Пошук мінімального
        if (a[i] == 0)      zeroCount++;    // Підрахунок нулів
    }
 
    for (int i = ++min; i < aSIZE; ++i)     // Рахування сумми
        sum += a[i];
 
    cout << "\nSum from index["<<min<<"] = " << sum << endl;
 
    for (int i = 0; i < aSIZE; ++i)             // Сортування
        for (int j = 0; j < aSIZE - 1; ++j)     // модулів чисел
            if (abs(a[j]) > abs(a[j+1]))        // алгоритмом
                swap(a[j],a[j+1]);              // сортування бульбашкою
 
    cout << "Sorted array:\n";
    for (int i = 0; i < aSIZE; ++i)     // Вивід масиву
        cout << a[i] << ' ';            // на екран
 
    cin.sync(); cin.get();                  // Пауза
    return 0;
}
0
33 / 33 / 21
Регистрация: 26.10.2015
Сообщений: 94
10.11.2015, 22:13
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
int num_of_null(const int* ar, size_t sze)
{
    size_t cnt = 0;
    for(size_t i = 0; i < sze; i++)
        if(ar[i] == 0)
            ++cnt;
    return cnt;
}
 
int sum_after_min(const int* ar, int sze)
{
    size_t min_index = 0;
    int mn = 0, sum = 0;
    for(size_t i = 1; i < sze; i++)
        if(ar[i] < mn)
        {
            mn = ar[i];
            min_index = i;
        }
    for(size_t i = min_index + 1; i < sze; i++)
        sum +=ar[i];
    return sum;
}
 
void sortArray(int* ar, int sze)
{
    for(int i = 0; i < sze; i++)
    {
        for(int j = 0; j < sze - 1 - i; j++)
        {
            if(abs(ar[j]) > abs(ar[j + 1]))
                swap(ar[j], ar[j + 1]);
        }
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.11.2015, 22:13
Помогаю со студенческими работами здесь

Обработка одномерного массива
3. Программа с динамическим выделением памяти. Программа не работает, если не было введено ни одного отрицательного числа. Есть...

Создание и обработка одномерного массива
Очень надеюсь на помощь. Преподаватель толком нам ничего не объясняет, а задания дает. У меня возникают трудности с созданием массива....

Обработка одномерного динамического массива
создать одномерный динамический массив произвольного размера.Заполнить его случайным образом.Вычислить сумму квадратов чисел, больших...

Сортировка и обработка одномерного массива
Помогите решить Дан массив A размера N (≤6). Упорядочить его по возрастанию методом сортировки простыми вставками: сравнить...

Обработка одномерного массива: поиск, перестановка, сортировка
Для одномерного массива, состоящего из n вещественных чисел: а) найти максимальный элемент массива; б) вычислить сумму элементов с...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru