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

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

Войти
Регистрация
Восстановить пароль
 
Annimel
Сообщений: n/a
#1

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

05.05.2010, 13:00. Просмотров 291. Ответов 2
Метки нет (Все метки)

В одномерном массиве, состоящем из n вещественных элементов, вычислить:минимальный элемент массива; сумму элементов массива, расположенных между первым и последним положительными элементами.
Преобразовать массив таким образом, чтобы сначала располагались все элементы, равные нулю, а потом — все остальные.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.05.2010, 13:00     Одномерный массив
Посмотрите здесь:

C++ Одномерный массив
C++ Одномерный массив.
C++ одномерный массив
C++ Одномерный массив
одномерный массив C++
C++ Массив одномерный
Одномерный массив C++
C++ одномерный массив
C++ Одномерный массив.
Одномерный массив. Создать массив Х суммы среднеарифметического элементов массива А с каждым элементом массива А C++
Одномерный массив C++
Одномерный массив C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
NNN777
299 / 157 / 19
Регистрация: 27.02.2010
Сообщений: 317
05.05.2010, 15:47     Одномерный массив #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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <iostream>
using namespace std;
const int SIZE =20;
 
void main()
{
    setlocale (LC_ALL, "Russian");
    int n, i, k, z, j;
    float a[SIZE], min, sum=0, buf;
    cout<<"Введите количество элементов: ";
    cin>>n;
    cout<<"Введите "<<n<<" элементов: \n";
    for (i=0; i<n; i++)
        cin>>a[i];
    cout<<endl;
    for (i=0; i<n; i++)
        cout<<a[i]<<" ";
    cout<<endl;
    min=a[0];
    for (i=1; i<n; i++)
        if (a[i]<min)
            min=a[i];
    cout<<"Минимальный элемент: "<<min<<endl;
    for (i=0; i<n; i++)
        if (a[i]>0)
        { 
            k=i;
            break;
        }
    for (i=n-1; i>=0; i--)
        if (a[i]>0)
        { 
            z=i;
            break;
        }
    if (z-k==0||z-k==1)
        sum=0;
    else
        for (i=k+1; i<z; i++)
            sum+=a[i];
    cout<<"Сумма между элементами "<<a[k]<<" и "<<a[z]<<": "<<sum<<endl;
    for (i=0; i<n; i++)
        if (a[i]==0)
        {
            buf=a[i];
            for (j=i; j>0; j--)
                a[j]=a[j-1];
            a[0]=buf;
        }
    cout<<"\nМассив с упорядоченными 0: \n";
    for (i=0; i<n; i++)
        cout<<a[i]<<" ";
    cout<<endl; 
}
neske
1466 / 833 / 69
Регистрация: 26.03.2010
Сообщений: 2,841
05.05.2010, 15:58     Одномерный массив #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
#include <iostream>
#include <algorithm>
#include <ctime>
#include <iomanip>
 
int main()
{
    int N;
    std::cout << "Input size of the matrix: ";
    std::cin >> N;
    int *MAS=new int [N];
 
    srand(time(NULL));
    std::cout << "Start matrix:\n";
    for (int i=0; i<N; i++) {
        MAS[i]=rand()%11-5; // -5..5
        std::cout << std::setw(3) << MAS[i]; }
 
    int sum=0;
    int first_pos, last_pos; // первый и последний положительный элементы.
 
    for (int i=0; i<N; i++) // поиск первого положительного элемента.
        if (MAS[i]>0) {
            first_pos=i;
            break; }
    for (int j=N-1; j>=0; j--) // поиск последнего положительного элемента.
        if (MAS[j]>0) {
            last_pos=j;
            break; }
 
    for (int i=first_pos+1; i<last_pos; i++) // вычесляем сумму.
        sum+=MAS[i];
 
    std::cout << "\n\n";
    std::cout << "Min: " << *std::min_element (MAS, MAS+N); // минимальный элемент.
    std::cout << "\nSum: " << sum << std::endl;
    std::cout << "Sorted matrix:\n";
    for (int i=0; i<N; i++) // выводим все нулевые.
    if (MAS[i]==0) std::cout << std::setw(3) << MAS[i];
    for (int j=0; j<N; j++) // затем все остальные.
    if (MAS[j]) std::cout << std::setw(3) << MAS[j];
 
    delete []MAS;
    return 0;
}



NNN777, опередил =)
Yandex
Объявления
05.05.2010, 15:58     Одномерный массив
Ответ Создать тему
Опции темы

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