Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

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

В заданном одномерном массиве определить количество элементов, равных первому положительному элементу - C++

23.01.2017, 11:47. Просмотров 188. Ответов 4
Метки нет (Все метки)

В заданном одномерном массиве R(N) определить количество элементов, равных первому
положительному элементу. Если таких элементов нет, то напечатать об этом сообщение. Если
такие элементы в массиве есть, то вычислить сумму трёх положительных элементов,
рассматривая массив с конца.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include "stdio.h"
#include "stdlib.h"
 
void Print_Mass(float *Mass, int Siz);
 
int main()
{
    int N = 0;
 
    printf("N = ");
    scanf("%d", &N);
    printf("\n");
 
    float* F = (float*)malloc(N * sizeof(float));
 
    for (int i = 0; i < N; i++)
    {
        printf("F(%d) = ", i + 1);
        scanf("%f", F + i);
        printf("\n");
    }
Этим можно вывести этот массив, а дальше? я очень тупой просто
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2017, 11:47
Я подобрал для вас темы с готовыми решениями и ответами на вопрос В заданном одномерном массиве определить количество элементов, равных первому положительному элементу (C++):

В одномерном массиве определить количество элементов, равных первому положительному элементу - C++
В заданном одномерном массиве R(N) определить количество элементов, равных первому положительному элементу. Если таких элементов нет, то...

В заданном одномерном массиве посчитать количество элементов равных максимальному - C++
Дан одномерный массив А посчитать кол-во элементов равных максимальному

Найти количество элементов массива, равных первому элементу - C++
ПОМОГИТЕ ПОЖАЛУЙСТА!!!! 1)Составить программу,которая находит количество элементов,равных первому элементу,и количество элементов,равных...

Составить программу, которая находит количество элементов, равных первому элементу, и количество элементов - C++
Условие : Составить программу, которая находит количество элементов, равных первому элементу, и количество элементов, равных последнему, в...

Произведение отрицательных элементов массива, предшествующих первому положительному элементу - C++
Найти произведение отрицательных элементов массива, предшествующих первому положительному элементу. Если по какой-либо причине вычислить...

Найти количество элементов в этих массива равных первому элементу массива S - C++
Даны целочисленные массивы S и T с разным количеством элементов. Найти количество элементов в этих массива равных первому элементу массива...

4
FreeYourMind
136 / 136 / 55
Регистрация: 13.11.2016
Сообщений: 379
23.01.2017, 12:09 #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
#include <iostream>
#include <cstdlib>
#include <time.h>
using std::cin;
using std::cout;
using std::endl;
int main()
{  
    srand(time(NULL));
    const int n=10;
    int arr[n], posf, sum=0, count=0;
    for (int i=0; i<n; i++)
    {
        arr[i] = rand()%21-6;
        cout << arr[i] << '\t';
    }
    for (int i=n-1; i>=0; i--)
    {
        if (arr[i]>0)
            posf = arr[i];
    }
    for (int i=0; i<n; i++)
    {
        if (arr[i] == posf)
            count++;
    }
    if (count > 1)
    {
        for (int i=n-1, k=0; i>=0, k<=3; i--, k++)
        {
            if (k<=3 && arr[i] > 0)
                sum += arr[i];
        }
        cout << "sum: " << sum << endl;
        cout << "element " << posf << " is repeating " << count << " times!" << endl;
    }
    else
        cout << "no similar elements to " << posf << endl;
    return 0;
}
оно?

Добавлено через 1 минуту
Цитата Сообщение от WarWar2915 Посмотреть сообщение
C++
1
float* F = (float*)malloc(N * sizeof(float));
у вас в задании не сказано про динамический массив
0
WarWar2915
0 / 0 / 0
Регистрация: 23.01.2017
Сообщений: 8
23.01.2017, 12:16  [ТС] #3
Спасибо огромное))) вроде да немного отредактировал и вроде робит..
0
MrGluck
Модератор
Эксперт CЭксперт С++
7769 / 4805 / 745
Регистрация: 29.11.2010
Сообщений: 13,122
23.01.2017, 14:09 #4
Цитата Сообщение от WarWar2915 Посмотреть сообщение
количество элементов, равных первому
положительному элементу. Если таких элементов нет, то напечатать об этом сообщение. Если
такие элементы в массиве есть, то вычислить сумму трёх положительных элементов,
рассматривая массив с конца.
Сумму любых трёх положительных (не обязательно равных первому положительному)?

Добавлено через 7 минут
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
#include <iostream>
 
int main()
{
    const int N = 6, R[N] = {1, 2, 0, 2, 1, 7};
    int counter = 0, firstPos = -1;
    for (int i = 0; i < N; i++)
    {
        std::cout << R[i] << " ";
        if (R[i] > 0)
        {
            if (firstPos == -1)
                firstPos = R[i];
            if (firstPos == R[i])
                counter++;
        }
    }
 
    if (firstPos == -1)
        std::cout << "No such\n";
    else
    {
        std::cout << "\nCounter: " << counter << "\nSum: ";
        int sum = 0, nPos = 0;
        for (int i = N - 1; i >= 0 && nPos != 3; i--)
            if (R[i] > 0)
            {
                sum += R[i];
                nPos++;
            }
        std::cout << sum << std::endl;
    }
}
Добавлено через 1 минуту
Остаётся открытым вопрос что делать, если количество положительных элементов меньше 3-х. Например при {1, -2, 0, -2, 1, -7}
0
Peoples
1222 / 727 / 454
Регистрация: 06.02.2016
Сообщений: 1,951
Записей в блоге: 14
Завершенные тесты: 4
23.01.2017, 16:00 #5
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
#include <iostream>
#include <vector>
#include <algorithm>
#include <numeric>
#include <iterator>
#include <ctime>
#include <random>
#include <functional>
using namespace std;
int main() {
    int n;
    cin>>n;
    mt19937 gen (time(nullptr));
    uniform_int_distribution<>dist(-20,20);
    vector<int>v(n);
    generate(v.begin(),v.end(),bind(dist,gen));
    copy(v.cbegin(),v.cend(),ostream_iterator<int>(cout," "));
    cout<<endl;
    if(any_of(v.cbegin(),v.cend(),[](const int &x) {  return x>0;  })) {
        cout<<count_if(v.cbegin(),v.cend(),[&v](const int &x) { return x==*find_if(v.cbegin(),v.cend(),[](const int &x) {       return x>0;     });     })<<endl;
        int i=1;
        cout<<accumulate(v.rbegin(),v.rend(),0,[&i](const int x, const int y) {    return i<=3 && y>0 && ++i? x+y:x;    })<<endl;
    }
    else cout<<"All el are neg";
    return 0;
}
0
23.01.2017, 16:00
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.01.2017, 16:00
Привет! Вот еще темы с ответами:

Найти среднее арифметическое отрицательных элементов массива, предшествующих первому положительному элементу; проверить, упорядочены ли элементы по во - C++
Помогите, пожалуйста! Сегодня зачет, а у меня ноут полетел!! нужен такой код до трех часов: 1)Найти среднее арифметическое отрицательных...

Найти количество положительных, отрицательных и равных нулю элементов в одномерном вещественно массиве - C++
Найдите количество положительный, отрицательных и равных нулю элементов в одномерном вещественно массиве. Помогите с задачей,...

В заданном одномерном массиве найти количество элементов, меньших указанного числа - C++
В одномерном массиве, состоящем из п вещественных элементов, вычислить: • количество элементов массива, меньших С; • сумму целых...

В массиве А(n) (n<=7) хотя бы один нуль. Определить количество положительных и количество отрицательных элементов к первому нулю. - C++
В массиве А(n) (n&lt;=7) хотя бы один нуль. Определить количество положительных и количество отрицательных элементов к первому нулю.


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

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

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