1 / 1 / 0
Регистрация: 09.12.2018
Сообщений: 44
1

Определить в каком из массивов больше положительных элементов

24.09.2019, 16:47. Показов 3038. Ответов 6
Метки нет (Все метки)

1. Создать динамические массивы,используя указатели.
2.В каком из 2х данных массивов p(n) и q(n) больше положительных элементов?
Нужно организовать вывод 2ого вопроса.
Помогите пожалуйста..
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.09.2019, 16:47
Ответы с готовыми решениями:

Определить, в каком из массивов больше положительных элементов
Даны два массива из n целых чисел каждый. Определить, в каком из них больше положительных...

Определить в каком из массивов больше количество повторяющих элементов
Определить в каком из массивов Х(22) и А(37) больше количество повторяющих элементов....

Определить, в каком из массивов больше положительных элементов
Заданы два одномерные числовые массивы A и B. Определить, в каком из массивов больше положительных...

Определить, в каком из массивов больше положительных элементов
Товарищи програмисты помогите решить задачи

6
0 / 0 / 0
Регистрация: 20.05.2019
Сообщений: 7
24.09.2019, 17:22 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
#include <iostream>
#include <random>
#include <ctime>
using namespace std;
int main()
{
    int* a,*b;
    int p,q;
    int v = 0, k = 0;
    cout << "Enter number of elements in your massive p:" << endl;
    cin >> p;
    cout << "Enter number of elements in your massive q:" << endl;
    cin >> q;
    a = new int[p];
    b = new int[q];
    srand(time(0));
    for (int i = 0; i < p; i++)
    {
        *(a + i) = rand() % 21 - 10;
        if (*(a + i) > 0)
        {
            v = v + 1;
        }
    }
    for (int j = 0; j < q; j++)
    {
        *(b + j) = rand() % 21 - 10;
        if (*(b + j) > 0)
        {
            k = k + 1;
        }
    }
    if (v > k)
    {
        for (int i = 0; i < p; i++)
        {
            cout << *(a + i) << endl;
        }
    }
    if (k>v)
    {
        for (int j = 0; j < q; j++)
        {
            cout << *(b + j) << endl;
        }
    }
 
    system("pause");
    return 0;
 
}
0
1 / 1 / 0
Регистрация: 09.12.2018
Сообщений: 44
24.09.2019, 18:37  [ТС] 3
DextersII, не работает...
0
7421 / 5016 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
24.09.2019, 19:11 4
Storm2k18, напишите свой вариант кода и что именно не получается
0
1 / 1 / 0
Регистрация: 09.12.2018
Сообщений: 44
24.09.2019, 21:00  [ТС] 5
Я знаю как сделать 1 пункт задания, но 2 не знаю.
Как сделать так чтобы оно считало и выводило кол-во положительных элементов?

Добавлено через 1 час 26 минут
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
#include <iostream>
#include <cstdlib>
 
using namespace std;
 
int main()
{
    int p = 0;
    cout << "Input size of array!" << endl;
    cin >> p;
    int *arr = new int[p];
 
    srand(time(NULL));
    for (int i = 0; i < p; i++) {
        arr[i] = rand()%40-20;
        cout << arr[i] << " ";
    }
    int q = 0;
    cout << "Input size of array!" << endl;
    cin >> q;
    int *arr = new int[q];
 
    srand(time(NULL));
    for (int i = 0; i < q; i++) {
        arr[i] = rand()%40-20;
        cout << arr[i] << " ";
    }
    
    
    
    
}
0
7421 / 5016 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
24.09.2019, 21:26 6
Storm2k18, примерно так, только случай когда нет положительных не обрабатывал
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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
void Set(double *x, int n)
{
    for (int i = 0; i < n; i++)      
      x[i]=rand()%19 - 9;
}
      
void Print(double *x, int n)
{
    for (int i = 0; i < n; i++)      
      cout << x[i] << " ";      
    cout << "\n";
}    
    
int CountPos (double *x, int n)
{
    int count=0;
    for (int i = 0; i < n; i++)           
    if (x[i]>0.0) count++;
    return count;
}
 
int main()
{
    srand((int)time(0));
    int n, count_p, count_q;
    cout << "n="; cin >> n;
 
    double*p = new double[n];
    double*q = new double[n];
    
    cout << "Array p:\n";
    Set(p,n);
    Print(p,n);
    count_p=CountPos(p,n);
    cout << "count positive = " << count_p << "\n";
    cout << "Array q:\n";
    Set(q,n);
    Print(q,n);
    count_q=CountPos(q,n);
    cout << "count positive = " << count_q << "\n";    
    
    if (count_p>count_q) cout << "count_p>count_q\n";
    else if (count_p<count_q) cout << "count_q>count_p\n";
    else cout << "count_q=count_p\n";
    
    delete[]p;
    delete[]q;
system("pause");
return 0; 
}
0
1 / 1 / 0
Регистрация: 09.12.2018
Сообщений: 44
24.09.2019, 22:04  [ТС] 7
Спасибо большое!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.09.2019, 22:04
Помогаю со студенческими работами здесь

Определить, в каком из массивов больше положительных элементов
Задача: ввести два одномерных массива a(5) и b(5), состоящие из произвольных чисел и определить в...

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

Найти, в каком из массивов больше положительных чисел, а в каком отрицательных
Дано натуральное число n и два целочисельных массива a1,a2,...,an и b1,b2,...,bn. Найти в каком...

Определить, в каком из двух массивов больше элементов, равных 1?
не правильно что то сделал(( вот задача: В каком из двух данных массивов р (n), q(n) больше ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru