Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
KHRONOS
0 / 0 / 0
Регистрация: 14.12.2012
Сообщений: 5
#1

Функции обработки массива (определить произведение элементов массива, заменить модулем все элементы массива, уничтожить элемент с заданным значением)

20.12.2012, 23:57. Просмотров 885. Ответов 1
Метки нет (Все метки)

Вот задания,не могу сделать ни одного из них,буду благодарен за помощь.

Написать функции для выполнения операций над одномерным массивом целых чисел:
• определить произведение элементов массива, которые кратны 3, не кратные 9 и больше 50,
• заменить модулем все элементы массива после второго положительного,
• уничтожить элемент с заданным значением.

Вот код с неполным 1 заданием:
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
#include <iostream>
 
using namespace std;
 
void Input ( int n, int*a )
{
 int i;
 for (i=0;i<n;i++)
 {
  std :: cout << "Input element number " << i+1 <<":";
  std :: cin >> a[i];
 
 }
}
 
int dob_elem ( int n, int*a )
{
    int i, dob = 1;
    for(i=0; i<n; i++)
    {
        if(i%3)
        dob*=a[i];
    }
    return dob;
}
 
 
 
void Output ( int n, int*a )
{
   int i;
   std :: cout << "You input this element's:";
        for (i=0;i<n;i++)
    std :: cout << a[i] << " ";
    std :: cout << std::endl;
}
 
 
int main ()
{
 cout << "How many element's? :";
 int n;
 cin >> n;
 int*a = new int [n];
 Input ( n, a );
 Output ( n, a );
 
 cout << "Dobtok of your array is:" << dob_elem(n, a);
 cin.get ();
 cin.get ();
 return 0;
}
Добавлено через 8 минут
так,первое сделал
C++
1
2
3
4
5
6
7
8
9
10
11
12
int dob_elem ( int n, int*a )
{
    int i, dob = 1;
    for(i=0; i<n; i++)
    {
        if((a[i]%3 == 0) || ((a[i]%9)==0) ||  (a[i] >50))
        {
        dob*=a[i];
        }
    }
    return dob;
}
Добавлено через 33 секунды
заменить модулем все элементы массива после второго положительного.
а вот как это сделать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.12.2012, 23:57
Ответы с готовыми решениями:

Каждый элемент массива A[k] заменить средним значением первых k элементов массива
Дан числовой массив A размера N. Каждый элемент массива A заменить средним...

Заменить все элементы массива, находящиеся в интервале (L, R), на наибольший элемент массива
заменить все элементы массива , находящиеся в интервале (L,R), на наибольший...

Найти максимальный элемент массива, заменить все положительные элементы массива максимальным
Создать одномерный массив из 10 случайных целых чисел из интервала от -10 до...

Найти максимальный элемент массива, заменить все положительные элементы массива максимальным
Создать одномерный массив из 10 случайных целых чисел из интервала от -10 до...

Удалить из массива все элементы с заданным значением
1.Одномерный массив из 20 элементов заполнить случайными числами от -9 до 2;...

1
Algiz
161 / 161 / 22
Регистрация: 23.02.2011
Сообщений: 347
21.12.2012, 00:12 #2
2.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#define len 50
 
int main(){
    int a[len];
    /* заполни массив как нибудь */
    int count = 0;
    for(int i=0; i<len; ++i){
        count += a[i] > 0;
        a[i] = (count >= 2 && a[i] < 0)? -a[i]: a[i];
        std::cout << a[i] << ' ' << std::endl;
    }
    return 0;
}
Добавлено через 6 минут
3.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#define DESTROY(a) a = 0
 
using namespace std;
 
int main(){
    cout << "input size and elem to destroy\n";
    int sz, e;
    cin >> sz >> e;
    int *a = new int[sz];
    for(int i=0; i<sz; ++i)
        cin >> a[i];
    for(int i=0; i<sz; ++i){
        if (a[i] == e)
            DESTROY(a[i]);
        cout << a[i] << ' ';
    }
    cout << endl;
    delete a;
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2012, 00:12

Заменить все элементы массива большие чем "a" значением максимального элемента этого массива
Всем драсте, в общем у меня такая же ситуация) помогите пожалуста написать...

Вывести элементы массива на промежутке [ a,b ], вычислить количество элементов массива, заменить все положительные элементы
В одномерном массиве, состоящем из n вещественных элементов, – вывести на...

Уничтожить все элементы больше среднего арифметического элементов массива
1. Уничтожить все элементы больше среднего арифметического элементов массива....


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

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

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