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

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

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

В массиве найти количество элементов, меньших заданного числа - C++

12.10.2016, 16:28. Просмотров 369. Ответов 12
Метки нет (Все метки)

Написать программу, которая находит количество элементов, меньших числа, введенного с клавиатуры. Массив из 6 чисел должен вводиться пользователем. Организовать вывод массива на экран. Для доступа к элементам массива использовать указатель. Помогите решить плиз
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.10.2016, 16:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос В массиве найти количество элементов, меньших заданного числа (C++):

Найти количество элементов массива меньших заданного числа - C++
Доброго времени суток уважаемые форумчане. Пожалуйста напишите программный код исходя из ниже предоставленного условия. Вводится...

Найти количество элементов, меньших заданного числа и сумму элементов, расположенных после максимального - C++
1.количество элементов массива,меньших С; 2.сумму элементов массива,расположенных после максимального элемента. упорядочить элементы...

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

В массиве найти количество чисел меньших заданного - C++
Понимаю, что тема уже была, но я сижу уже 6 день, и всё безрезультатно!Помогите кто может, пожалуйста! Найти количество чисел, меньших...

Найти произведение всех элементов, меньших заданного числа b из n-ой последовательности - C++
Помогите с задачкой пожалуйста. Условие: Дана последовательность a1, a2, ..., an вещественных чисел. Найти произведение всех...

Найти минимальный элемент среди элементов вектора, меньших заданного числа - C++
Дан целочисленный вектор A(n). Найти минимальный элемент среди элементов, меньших заданного числа b и расположенных до первого элемента,...

12
Badjuicy
14 / 14 / 9
Регистрация: 12.10.2016
Сообщений: 52
Завершенные тесты: 2
12.10.2016, 16:41 #2
Лови, братишка. Надеюсь, я все правильно понял.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
int main()
{
    int mas[6], num, counter=0;
    cout << "Num = "; cin >> num; //Заданное число
    for (int i = 0; i < 6; i++)
    {
        cout << "mas[" << i << "] = "; cin >> mas[i]; //Инициализируем
        if (*(mas+i) < num) counter++; //Счетчик кол-ва элементов меньших числа заданного
    }
    cout << "Counter = " << counter << endl; //Вывод
 
    for (int i = 0; i < 6; i++)
    {
        cout << *(mas+i) << " "; //Вывод массива
    }
    system("pause");
}
0
Invader0x7F
Helper C/C++
281 / 158 / 61
Регистрация: 22.09.2016
Сообщений: 518
Завершенные тесты: 5
12.10.2016, 16:45 #3
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
#include <iostream> 
 
using namespace std;
 
int main()
{
    const int N = 6;
    int *pn = new int[N], b = 3;
    memset((void*)pn, 0x00, sizeof(int) * N);
 
    int* ppn = pn;
    for (int i = 0; i < N; i++, pn++)
    {
        std::cout << "enter pn[" << i << "] = "; std::cin >> *pn;
    }
 
    std::cout << "enter b = "; std::cin >> b;
 
    int count = 0;
    while (*ppn > 0)
    {
        if (*ppn < b) count++;
        ppn++;
    }
 
    std::cout << "count = " << count << endl;
 
    std::cin.get();
    std::cin.get();
}
0
Изображения
 
Invader0x7F
Helper C/C++
281 / 158 / 61
Регистрация: 22.09.2016
Сообщений: 518
Завершенные тесты: 5
12.10.2016, 16:46 #4
Badjuicy, вы не так поняли нужны операции с указателями, а вы работаете с массивами.
0
IpHuman
14 / 14 / 1
Регистрация: 28.01.2015
Сообщений: 26
12.10.2016, 16:50 #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
27
28
29
30
31
#include <iostream>
using namespace std;
int main()
{
    cout << "Enter the size of array: ";
    int n;
    cin >> n;
    int *ptr = new int[n];
    for (int i; i < n; i++)
    {
        cout << "#" << i+1 << ": ";
        cin >> ptr[i];
    }
    cout << "Here is your array: ";
    for (int i; i <n; i++)
    {
        cout << ptr[i] << " ";
    }
    cout << "Enter some number: ";
    int num;
    cin >> num;
    int count;
    for (int i; i <n; i++)
    {
        if (ptr[i] < num)
            count++;
    }
    cout << endl;
    cout << count << " numbers less than in array";
    delete[] ptr;
}
Вот так можно решить.
1
Badjuicy
14 / 14 / 9
Регистрация: 12.10.2016
Сообщений: 52
Завершенные тесты: 2
12.10.2016, 16:56 #6
Такое дело
0
Миниатюры
В массиве найти  количество элементов, меньших заданного числа  
Badjuicy
14 / 14 / 9
Регистрация: 12.10.2016
Сообщений: 52
Завершенные тесты: 2
12.10.2016, 16:58 #7
Ну тогда твоя программа круче Признаю)
Тупанул я с указателями.
0
Invader0x7F
Helper C/C++
281 / 158 / 61
Регистрация: 22.09.2016
Сообщений: 518
Завершенные тесты: 5
12.10.2016, 16:59 #8
Очень извиняюсь. Допустил механическую ошибку:

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 <conio.h>
 
#include <iostream> 
 
using namespace std;
 
int main()
{
    const int N = 6;
    int *pn = new int[N], b = 3;
    memset((void*)pn, 0x00, sizeof(int) * N);
 
    int* ppn = pn;
    for (int i = 0; i < N; i++, pn++)
    {
        std::cout << "enter pn[" << i << "] = "; std::cin >> *pn;
    }
 
    std::cout << "enter b = "; std::cin >> b;
 
    int count = 0;
    while (*ppn >= 0)
    {
        if (*ppn < b) count++;
        ppn++;
    }
 
    std::cout << "count = " << count << endl;
 
    std::cin.get();
    std::cin.get();
}
Теперь работает.
0
Badjuicy
14 / 14 / 9
Регистрация: 12.10.2016
Сообщений: 52
Завершенные тесты: 2
12.10.2016, 17:02 #9
А моя ошибка исправлена?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
int main()
{
    int mas[6], num, counter=0;
    int *ptr = *&mas;
    cout << "Num = "; cin >> num; //Заданное число
    for (int i = 0; i < 6; i++)
    {
        cout << "mas[" << i << "] = "; cin >> mas[i]; //Инициализируем
        if (*(ptr+i) < num) counter++;
    }
    cout << "Counter = " << counter << endl;
 
    for (int i = 0; i < 6; i++)
    {
        cout << *(ptr+i) << " ";
    }
 
    system("pause");
}
0
IpHuman
14 / 14 / 1
Регистрация: 28.01.2015
Сообщений: 26
12.10.2016, 17:08 #10
Цитата Сообщение от Invader0x7F Посмотреть сообщение
int *pn = new int[N], b = 3;
Снова не удалили память из кучи посредством delete[]
Учитесь освобождать память. Что мне в каждой теме вас учить?
Если память была выделена new, обязательно должна освобождаться delete (или delete[ ], если выделялась для массива). Каждая книга об этом пишет, и последствия.
1
Badjuicy
14 / 14 / 9
Регистрация: 12.10.2016
Сообщений: 52
Завершенные тесты: 2
12.10.2016, 17:11 #11
IpHuman, не ругайся
0
Escritor123
0 / 0 / 0
Регистрация: 12.10.2016
Сообщений: 11
12.10.2016, 18:09  [ТС] #12
Badjuicy, что счетчик показывает?

Добавлено через 41 минуту
Спасибо вам всем!)
0
Flystyle
Заблокирован
12.10.2016, 18:59 #13
Счетчик counter показывает сколько раз выполнено условие. Данный элемент массива меньше заданного числа? Если да то counter увеличивает свое значение на 1. Если нет, то проверяем следующий элемент массива.
Потом cout << counter показал сколько раз было выполнено это условие.
Понял? )
0
12.10.2016, 18:59
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.10.2016, 18:59
Привет! Вот еще темы с ответами:

Найти количество элементов массива, меньших определенного числа, вводимого пользователем - C++
Задача: Код:/*С одномерным массивом, состоящим из n вещественных элементов, произвести следующие операции: 1) вычислить произведение...

Подсчитать количество элементов массива меньших заданного - C++
Дан одномерный массив разностью N. Заполнить его случайными числами в диапазоне от -5 до 5. Вывести его на экран. Подсчитать сколько в...

Найти количество элементов в массиве, имеющих значение выше заданного - C++
Найти количество элементов в массиве, имеющих значение выше заданного

Найти в массиве количество четных чисел, сумма цифр в которых не превышает заданного числа P - C++
Найти количество четных чисел, сумма цифр в которых не превышает заданного числа P. При вводе Р=11 все считает правильно , но стоит...


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

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

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