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

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

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

В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить: - C++

22.01.2014, 15:04. Просмотров 693. Ответов 6
Метки нет (Все метки)

В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить:
1. Произведение элементов массива, расположенных между максимальным и минимальным элементами.
2. Сумму элементов массива, расположенных между первым и последним нулевыми элементами.
3. Сумму элементов массива, расположенных до последнего положительного элемента.
4. Сумму элементов массива, расположенных между первым и последним положительными элементами.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.01.2014, 15:04     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить:
Посмотрите здесь:

В одномерном массиве, состоящем из n вещественных элементов вычислить минимальный элемент массива и сумму элементов массива. [CPP] C++
В одномерном целочисленном массиве вычислить сумму элементов, расположенных после минимального элемента C++
C++ Вычислить количество элементов массива, не меньших элемента с заданным номером, значение номера вводить с клавиатуры.
C++ В одномерном массиве, состоящем из вещественных элементов вычислить номер минимального элемента в массиве, сумму элементов массива
C++ Вычислить в одномерном массиве вычислить сумму элементов массива...
В одномерном массиве, вводимом с клавиатуры и состоящем из 10 вещественных элементов, вычислить C++
В одномерном массиве, вводимом с клавиатуры и состоящем из 10 целых чисел, вычислить произведение элементов массива с четными номерами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dekio
Фрилансер
Эксперт C++
5819 / 1217 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
22.01.2014, 15:10     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить: #2
А что получается?
Andrey027
0 / 0 / 0
Регистрация: 26.10.2013
Сообщений: 75
22.01.2014, 15:32  [ТС]     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить: #3
Да совсем ничего. Я в С++ очень слаб.

Добавлено через 17 минут
Помогите решить хотя бы пару задач.
cooller
564 / 532 / 120
Регистрация: 25.12.2013
Сообщений: 1,456
22.01.2014, 16:34     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить: #4
Цитата Сообщение от Andrey027 Посмотреть сообщение
1. Произведение элементов массива, расположенных между максимальным и минимальным элементами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<numeric>
#include<algorithm>
#include <vector>
#include<iterator>
#include<utility>
int main()
{
    std::vector <int> vec = {3,6,2,-1,6,3,7,10,4,2,6};
    std::copy(vec.begin(),vec.end(),std::ostream_iterator<int>(std::cout," "));
    auto MinMax = std::minmax_element(vec.begin(),vec.end());
    std::cout<<"\nProduct between the minimum and maximum elements:"
             <<std::accumulate(MinMax.first+1,MinMax.second,1, [] (int P,int CurEl)->int
    {
        P*=CurEl;
        return P;
    });
    return 0;
}
Добавлено через 54 минуты
Andrey027, Вот некоторые примеры решения без STL. Остальные сделаешь по аналогии.
Цитата Сообщение от Andrey027 Посмотреть сообщение
Сумму элементов массива, расположенных между первым и последним нулевыми элементами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int SumBetweenZero(int *mas,int N)
{
    size_t positionZeroFirst(0);
    size_t positionZeroLast(0);
    for(int i=0; i<N; i++)
        if(mas[i]==0)
        {
            positionZeroFirst = i;
            break;
        }
    for(int i=0; i<N; i++)
        if(mas[i]==0)
            positionZeroLast = i;
    int sum(0);
    for(int i=positionZeroFirst + 1; i<positionZeroLast; i++)
        sum+=mas[i];
    return sum;
}
Цитата Сообщение от Andrey027 Посмотреть сообщение
Сумму элементов массива, расположенных до последнего положительного элемента.
C++
1
2
3
4
5
6
7
8
9
10
int SumToLastPositive(int *mas,int N)
{
    size_t PositionLastPositiveElement(0);
    for(int i=0; i<N; i++)
        PositionLastPositiveElement = mas[i]>0?mas[i]:PositionLastPositiveElement;
    int sum(0);
    for(int i=0; i<PositionLastPositiveElement; i++)
        sum+=mas[i];
    return sum;
}
Цитата Сообщение от Andrey027 Посмотреть сообщение
Сумму элементов массива, расположенных между первым и последним положительными элементами.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
int SumBetweenPositive(int *mas,int N)
{
    size_t positionFirst(0);
    size_t positionLast(0);
    for(int i=0; i<N; i++)
        if(mas[i]>0)
        {
            positionFirst = i;
            break;
        }
    for(int i=0; i<N; i++)
        if(mas[i]>0)
            positionLast = i;
    int sum(0);
    for(int i=positionFirst + 1; i<positionLast; i++)
        sum+=mas[i];
    return sum;
}
Тамика
Котовчанин
867 / 447 / 135
Регистрация: 16.02.2010
Сообщений: 2,726
Записей в блоге: 27
22.01.2014, 16:39     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить: #5
Не смогли даже ввод массива организовать?
pasha_
Сообщений: n/a
22.01.2014, 18:33     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить: #6
Только учусь, вроде работает, решение первых 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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include <iostream>
#include <conio.h>
#include <stdio.h>
using namespace std;
    int main()
{
    int i,b=0,n=0,sum=0,max=0,min=1000,k=-1,p=0;
    float pr=1;
    setlocale(0,"");
    cout<<"Введите размер массива от 1 до 20: ";
    cin>>n;
    if (n>20||n<1)
    {
    do {            
        cout<<"\nВы ввели неверное значение\n\n";
        cout<<"Введите размер массива: ";
        cin>>n;
    }while (n>20||n<1);
    }
    int *a=new int[n];
    for(i=0;i<n;i++)
    {
        cout<<"Введите "<<i+1<<"й элемент массива: ";
        cin>>a[i];
    }
    cout<<"\nМассив: ";
    for(i=0;i<n;i++)
    {
        cout<<a[i]<<" ";
    }
    for(i=0;i<n;i++)
    {
        if (a[i]>max)
        {max=a[i];
            k=i;
        }
        if (a[i]<min)
        {
            min=a[i];
            p=i;
        }
    }
    cout<<"\nmin значение "<<min<<" i="<<p<<endl;
    cout<<"max значение "<<max<<"  i="<<k;
    if ((k-p)==1||(p-k)==1) 
        {
        cout<<"\n\nМах и Мин значения находяться рядом"; 
        
    }
    else
    {
        if (k>p)
    {
        for(i=p+1;i<k;i++)
            {
                pr=pr*a[i];
            }
        cout<<"\nПроизведение равно: "<<pr;
    }
        else 
        {
            for(i=k+1;i<p;i++)
            {
                pr*=a[i];
            }
        cout<<"\nПроизведение равно: "<<pr;
        }
    }
    for(i=0;i<n;i++)
    if (a[i]==0)
        {
            k=i;
            break;
    }
    for(i=k+1;a[i]!=0;i++)
        {if (i>=n)
            break;
    sum+=a[i];}
    cout<<"\nСумма от 1го 0 до второго 0: "<<sum;
    
    delete []a;
    _getch();
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.01.2014, 18:38     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить:
Еще ссылки по теме:

В двухмерном целочисленном массиве (размеры массива N, M и значения его элементов вводить с клавиатуры) найти указанное значение. Массив в памяти разм C++
C++ В одномерном массиве, вводимом с клавиатуры и состоящем из 10 вещественных элементов, вычислить
C++ В двухмерном массиве (размеры массива N M и значения его элементов вводить с клавиатуры) найти указанное значение
В целочисленном одномерном массиве найти сумму всех нечетных элементов C++
В одномерном массиве, вводимом с клавиатуры и состоящем из N вещественных элементов, вычислить сумму положител C++

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

Или воспользуйтесь поиском по форуму:
MrGluck
Ворчун
Эксперт CЭксперт С++
6432 / 3630 / 450
Регистрация: 29.11.2010
Сообщений: 9,591
22.01.2014, 18:38     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить: #7
У нас запрещено выкладывать множество вопросов в одной теме во всех разделов кроме фриланса.
Один вопрос - одна тема.

Не по теме:

А вы вообще зачем в ВУЗ пошли учиться? Ну решат вам эти Hello world задачи, а дальше то сложнее будет.

Yandex
Объявления
22.01.2014, 18:38     В одномерном целочисленном массиве (размер массива (не больше 20) и значения его элементов вводить с клавиатуры) вычислить:
Ответ Создать тему
Опции темы

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