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

Массивы: произведение ненулевых элементов, сумма четных чисел расположенных до минимального элемента

16.01.2015, 19:08. Просмотров 983. Ответов 6
Метки нет (Все метки)

Дорогие форумчане , помогите с задачкой , пожалуйста )
Условие :
Задан массив вещественных чисел A(n). Найти
- Произведение ненулевых элементов массива.
- Сумму четных чисел расположенных до минимального элемента
Из массива A(n) все положительные числа переписать в массив B , отрицательные в C. Удалить первый нулевой элемент из A(n).
Мои наработки :
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <math.h>
#include <iostream.h>
int main()
{
int n;
cin >> n;
float *a=new float[n] , proz=1;
float *b=new float[n];
float *c=new float[n];
for (int i=0;i<n;i++){
cin >> a[i];
if (a[i]!=0) proz*=a[i];
}
cout << proz << endl;
 
for (int i=0;i<n;i++){
if (a[i]>0) b[i]=a[i];
if (a[i]<0) c[i]=a[i];
}
 
system("pause");
        return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.01.2015, 19:08
Ответы с готовыми решениями:

Найти произведение четных отрицательных элементов массива, расположенных после минимального элемента
Помогите пожалуйста a) найти произведение четных отрицательных элементов массива, расположенных...

Найти произведение четных отрицательных элементов массива, расположенных после минимального элемента
Уважаемые пользователи, помогите решить задачу: Ввести с клавиатуры одномерный статический...

Сумма элементов массива, расположенных до минимального элемента
Написать пользовательскую функцию, решающую указанную ниже задачу. Массив создается в динамической...

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

6
267 / 170 / 40
Регистрация: 25.08.2014
Сообщений: 1,087
Записей в блоге: 1
16.01.2015, 19:13 2
Осталось найти минимальный элемент и до его индекса суммировать чётные числа. Удаление наверное смещением всех элементов после.
0
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 78
16.01.2015, 20:02  [ТС] 3
Enno, Спасибо , как то так. Проблемы со сдвигом возникли (
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
#include <math.h>
#include <iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    int *a=new int[n] , proz=1;
    int *b=new int[n];
    int *c=new int[n];
    for (int i=0;i<n;i++)
    {
        cin >> a[i];
        if (a[i]!=0) proz*=a[i];
    }
    int min=a[0];
    int minindex=0, sum=0;
    for(int i=0;i<n;i++)
        if(min>a[i])  
        {
            min=a[i];
            minindex=i;
        }
    for (int i=0;i<minindex;i++)
        if(a[i]%2==0)
            sum+=a[i];
    for (int i=0;i<n;i++)
    {
        if (a[i]>0) b[i]=a[i];
        if (a[i]<0) c[i]=a[i];
    }
    cout << proz << endl;
    cout <<sum << endl;
 
    system("pause");
    return 0;
}
0
Модератор
Эксперт С++
10150 / 8499 / 5165
Регистрация: 18.12.2011
Сообщений: 22,738
16.01.2015, 21:11 4
romalikons, почему не форматируете код?
В таком виде он нечитаем!
0
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 78
16.01.2015, 21:38  [ТС] 5
zss, извиняюсь (
0
5 / 5 / 6
Регистрация: 17.05.2014
Сообщений: 61
16.01.2015, 22:27 6
Лучший ответ Сообщение было отмечено romalikons как решение

Решение

Могут быть мелкие ошибки, писал в блокноте

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
69
70
71
72
73
74
75
76
77
78
#include <iostream>
#include <conio.h>
 
using namespace std;
 
void main()
{
    double *a,*b,*c;
    double sum=0,proizvod=1;
    int n, tmp=0, tmp2=0;
    cin>>n;
    a=(double*)malloc(sizeof(double)*n);
    for(int i=0;i<n;i++)
    {
        cin>>a[i];
    }
    for(int i=0;i<n;i++)//посчитали сумму и произведение
    {
        if(a[i]!=0)
        {
            proizvod*=a[i];
        }
        if(a[i]>0)
        {
            sum+=a[i];
        }
    }
    for(int i=0;i<n;i++)
    {
        if(a[i]>0)
        {
            tmp++;
        }
        if(a[i]<0)
        {
            tmp2++;
        }
    }
    b=(double*)malloc(sizeof(double)*tmp);
    c=(double*)malloc(sizeof(double)*tmp2);
    for(int i=0,j=0,k=0;i<n;i++)
    {
        if(a[i]>0)
        {
            b[j]=a[i];
            j++;
        }
        if(a[i]<0)
        {
            c[k]=a[i];
            k++;
        }
    }
    for(int i=0;i<n-1;i++)
    {
        mas[i]=mas[i+1];
    }
    n--;
    a=(double*)realloc(a,sizeof(double)*n);
 
    cout<<"sum= "<<sum<<" proizvod= "<<proizvod<<endl;
    cout<<"A: ";
    for(int i=0;i<n;i++)
    {
        cout<<a[i]<<" ";
    }
    cout<<endl<<"b: ";
    for(int i=0;i<tmp;i++)
    {
        cout<<b[i]<<" ";
    }
    cout<<endl<<"C: ";
    for(int i=0;i<tmp2;i++)
    {
        cout<<c[i]<<" ";
    }
    getch();
}
0
0 / 0 / 0
Регистрация: 03.10.2013
Сообщений: 78
16.01.2015, 23:20  [ТС] 7
Forrgit, спасибо )
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.01.2015, 23:20

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

Сумма элементов массива, расположенных до минимального элемента
Написать программу по обработке одномерных массивов. Размеры массивов вводить с клавиатуры. В...

Сумма элементов массива, расположенных после минимального элемента
В одномерном массиве, состоящем из n вводимых с клавиатуры целых элементов, вычислить сумму...

Сумма элементов массива, расположенных после минимального элемента
Привет всем! не получается решить задачку. Необходимо найти Сумму элементов массива,...

Вычислить сумму четных элементов, расположенных после минимального элемента массива
Вычислить сумму четных элементов, расположенных после минимального элемента массива напишите на...

Найти произведение положительных элементов, сумму элементов, расположенных до минимального элемента
Помогите, пожалуйста, написать программу В одномерном массиве, состоящем из n вещественных...

Вычислить произведение элементов, расположенных после минимального элемента в массиве
Ввести массив вещественных чисел из n элементов(задано константой). Вычислить произведение...


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

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

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