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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Megakz
0 / 0 / 0
Регистрация: 16.10.2009
Сообщений: 19
#1

Одномерный массив - C++

27.10.2009, 17:31. Просмотров 687. Ответов 1
Метки нет (Все метки)

В одномерном массиве, состоящем из n целых элементов, вычислить:
1) Минимальный по модулю элемент массива.
2)Сумму модулей элементов массива, расположенных после первого элемента, равного нулю.

помогите.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.10.2009, 17:31     Одномерный массив
Посмотрите здесь:

C++ Одномерный массив
Одномерный массив С. C++
C++ одномерный массив
C++ одномерный массив
C++ Одномерный массив
C++ одномерный массив
C++ Одномерный массив
C++ Одномерный массив.
[C++] Одномерный массив C++
Массив одномерный C++
Одномерный массив C++
C++ Одномерный массив

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
28.10.2009, 13:01     Одномерный массив #2
Вот мои мысли по данной проблеме, для массива выделял память динамически
под число элементов в нём. Код написан в VS 6.0, тип проекта ConsoleAplication

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
#include <iostream.h>
#include <windows.h>
#include <math.h>
 
//Выделяем память под массив - сейчас его длина 1 элемент
int * mass = (int *)malloc(sizeof(int));
 
void main()
{
    cout<<"Vvedite chislo elementov v massive\r\n";
    int n;cin>>n;
    //Перераспределяем память под массив - сейчас его длина n элементов
    mass = (int *)realloc((void *)mass,n*sizeof(int));
    cout<<"Vvedite elementi massiva\r\n";
    
    //Начальная инициализация
    cout<<"mass[0] = ";cin>>mass[0];
    int sum = 0, iMod = abs(mass[0]);
    int MinAbs = iMod;
    int iZero  = -1;
    //Ввод элементов массива + вычисления нужных нам значений
    for(int i = 1; i < n; i++)
    {
        cout<<"mass["<<i<<"] = ";
        cin>>mass[i];
        iMod = abs(mass[i]);
        if(MinAbs < iMod)
            MinAbs = iMod;
        if(mass[i] == 0 && iZero < 0)
            iZero = i;
        //Как только iZero сдержит индекс первого нуля
        //начинаем суммирование
        if(-1 < iZero)
            sum += iMod;
    }
    cout<<"Min po modulu element massiva : "<<MinAbs<<"\r\n";
    cout<<"Index 1-go nylevogo elementa  : "<<iZero<<"\r\n";
    cout<<"Sum elementov posle 1-go nyla : "<<sum<<"\r\n";
    //Уменьшаем память под массив до 1-го символа
    //Память не чистим т.к. возможен новый ввод
    mass = (int *)realloc((void *)mass,sizeof(int));
    cout<<"Dlya vvoda novoi matrici nazhmite 1\r\n";
    cin>>i;
    if(i == 1)
        main();
    else
    //Чистим память если пользователь отменил ввод
        free(mass);
}
Миниатюры
Одномерный массив  
Yandex
Объявления
28.10.2009, 13:01     Одномерный массив
Ответ Создать тему
Опции темы

Текущее время: 08:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru