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

массив - C++

Восстановить пароль Регистрация
 
Sanchez_sch_
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 24
20.03.2011, 20:12     массив #1
В одномерном массиве, состоящем из п вещественных элементов, вычислить:
1) количество элементов массива, равных 0;
2) сумму элементов массива, расположенных после минимального элемента.
Упорядочить элементы массива по возрастанию модулей элементов.

Помогите решить...особенно 2 пункт
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.03.2011, 20:12     массив
Посмотрите здесь:

Дан массив В[0:n-1] целых чисел и числа x и y , где x<y. на основе элементов массива В сформировать массив D[0:m-1] C++
Дан массив A(23). Переписать в новый массив все элементы, расположенные после последнего отрицательного. C++
C++ Найти ошибку. Записать 20 целых чисел в массив. Переписать отрицательные в массив А, а положительные в Б
Файлы и массив (сделать так, чтобы массив заполнялся значениями из этого же файла) C++
C++ Задано массив строк произвольной длины. Отформатировать данный массив по ширине поля.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dimarik__
 Аватар для Dimarik__
21 / 21 / 1
Регистрация: 29.04.2010
Сообщений: 444
20.03.2011, 20:17     массив #2
int icount = 0;
for (int i = 0; i < n; i++)
{
if(mas[i] ==0)
icount++;
}
это первый пункт

Добавлено через 2 минуты
второй пункт делается так: сначала надо найти минимальный элемент (его номер в массиве), а затем циклом
isum = 0;
for (int i = iN_min_element; i < n; i++)
{
isum += mas[i];
}
Sanchez_sch_
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 24
20.03.2011, 20:20  [ТС]     массив #3
спасибо..а второй?

Добавлено через 1 минуту
ну а как задать что бы оно искало минимальный елемент?

Добавлено через 2 минуты
А как Упорядочить элементы массива по возрастанию модулей элементов.??
Dimarik__
 Аватар для Dimarik__
21 / 21 / 1
Регистрация: 29.04.2010
Сообщений: 444
20.03.2011, 20:22     массив #4
int m = 999999999;
for (int i = 0; i < n; i++)
{
if(mas[i] < m)
m = mas[i];
}
вот тебе и поиск минимального элемента
Sanchez_sch_
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 24
20.03.2011, 20:27  [ТС]     массив #5
А как Упорядочить элементы массива по возрастанию модулей элементов.??
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
20.03.2011, 20:29     массив #6
Все три пункта:

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 <ctime>
#include <algorithm>
#include <iterator>
#include <numeric>
 
int rnd (void)
{
    return rand()%20 - 10;
}
 
bool func (int x, int y)
{
    return abs (x) < abs(y) ? true : false;
}
 
int main (void)
{
    const int SIZE=20;
    int MAS [SIZE];
    // fill and output
    srand (time (NULL));
    std::generate_n (MAS, SIZE, rnd);
    std::cout << "Start matrix:\n";
    std::copy (MAS, MAS+SIZE, std::ostream_iterator <int> (std::cout, " "));
    std::cout << "\n\n";
    //
    std::cout << "Count: " << std::count (MAS, MAS+SIZE, 0);
    std::cout << std::endl;
    //
    std::cout << "Sum: "
              << std::accumulate (MAS+(std::min_element (MAS, MAS+SIZE) - MAS)+1, MAS+SIZE, 0);
    std::cout << std::endl;
    //
    std::sort (MAS, MAS+SIZE, func);
    // output
    std::cout << "Finish matrix:\n";
    std::copy (MAS, MAS+SIZE, std::ostream_iterator <int> (std::cout, " "));
    //exit
    return 0;
}
Sanchez_sch_
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 24
20.03.2011, 20:33  [ТС]     массив #7
Осуществить циклический сдвиг элементов квадратной матрицы размерности М х N вправо на К элементов следующим образом:
элементы 1-го строке сдвигаются в последний столбец сверху вниз,
из него-в последнюю строку справа налево, из него - в первый столбец снизу вверх, из него - в первую строку ..... Для других элементов-аналогично
Dimarik__
 Аватар для Dimarik__
21 / 21 / 1
Регистрация: 29.04.2010
Сообщений: 444
20.03.2011, 20:36     массив #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include<stdio.h>
int mass[]={1,2,3,4,5,-1,-2};
int main()
{
        int t;
        for(int i=0;i<7;i++)
        for (int j=0;j<7;j++)
                        if ((mass[j]=0)&& (mass[j+1])<0)
                        {
                                t=mass[j];
                                mass[j]=mass[j+1];
                                mass[j+1]=t;
                        }
Sanchez_sch_
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 24
20.03.2011, 20:37  [ТС]     массив #9
Это что?
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,689
20.03.2011, 20:38     массив #10
Dimarik__, что вы пытаетесь сделать в своем коде, я вообще не пойму.
ТС просил упорядочить по возрастанию модулей.

C++
1
if ((mass[j]=0)&& (mass[j+1])<0)
Это вообще что ?)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.03.2011, 20:45     массив
Еще ссылки по теме:

C++ Из двух целочисленных массивов различной размерности сформировать общий массив. Упорядочить полученный массив
Записать все положительные элементы матрицы в массив arrP, а отрицательные - в массив arrN C++
C++ Переписать все элементы из этих массивов в массив С так, чтобы массив С был упорядоченным

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

Или воспользуйтесь поиском по форуму:
Sanchez_sch_
0 / 0 / 0
Регистрация: 20.03.2011
Сообщений: 24
20.03.2011, 20:45  [ТС]     массив #11
как бы еще коменты к каждой строчке написать и алгоритм нарисовать???

Добавлено через 2 минуты
А не могли бы помочь решить еще эту програму :
Осуществить циклический сдвиг элементов квадратной матрицы размерности М х N вправо на К элементов следующим образом:
элементы 1-го строке сдвигаются в последний столбец сверху вниз,
из него-в последнюю строку справа налево, из него - в первый столбец снизу вверх, из него - в первую строку ..... Для других элементов-аналогично
Yandex
Объявления
20.03.2011, 20:45     массив
Ответ Создать тему
Опции темы

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