Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 11.05.2018
Сообщений: 2

Вычислить количество отрицательных элементов массива, имеющих четные индексы

11.05.2018, 07:25. Показов 2101. Ответов 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
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
int main()
{
   int Item[1000];//Массив
   int Count=100;//Кол-во элементов
   int S=0; //Сумматор
   int Low=0;int Hi=100;//диапазон значений
   int A=20;int B=80;
   //генерация элементов массива
   srand(time(0));
   for(int i=0;i<Count;i++){
    Item[i]=Low+rand()%(Hi-Low+1);
   }
   //вывод массива на экран
   for(int i=0;i<Count;i++){
     cout<<Item[i]<<"\t";
   }
   cout<<endl;
   for(int i=0;i<Count;i++){
     if(!((Item[i]>=A)&&(Item[i]<=B))&&(Item[i]%2==0)){S++;}
   }
   cout<<"Result = "<<S<<endl;
    return 0;
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.05.2018, 07:25
Ответы с готовыми решениями:

Класс: вычислить количество отрицательных элементов массива, имеющих четные индексы
Создать класс реализующий следующую задачу, дан целочисленный массив. Вычислить количество отрицательных элементов имеющих четные индексы.

Вычислить сумму отрицательных элементов имеющих четные индексы
Нужно переделать эту программу так, чтобы она вычисляла сумму отрицательных элементов, имеющих четные индексы #include &lt;iostream&gt; ...

Найти максимальный среди отрицательных элементов массива имеющих четные индексы
Максимальный среди отрицательных элементов имеющих четные индексы. #include &lt;iostream&gt; using namespace std; int main() { ...

7
14 / 14 / 8
Регистрация: 10.12.2015
Сообщений: 157
11.05.2018, 08:55
Если я вас правильно понял

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
    
    int Item[1000];//Массив
    int Count=100;//Кол-во элементов
    int S=0; //Сумматор
    int Low=-50;int Hi=100;//диапазон значений
 
    //генерация элементов массива
    srand(time(0));
    for(int i=0;i<Count;i++){
        Item[i]=Low+(rand()%Hi+1);
    }
    //вывод массива на экран
    for(int i=0;i<Count;i++){
        cout<<Item[i]<<"\t";
    }
    cout<<endl << endl;
 
    for(int i=0;i<Count;i++){
        if(Item[i] < 0 && i%2){S++; cout << Item[i] << '\t';}
    }
    cout<<"Result = "<<S<<endl;
0
475 / 427 / 290
Регистрация: 10.03.2015
Сообщений: 1,782
11.05.2018, 11:11
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 <time.h>
#include <iomanip>
 
#define Min_Value -100
#define Max_Value 100
 
using namespace std;
 
int main()
{
    int Count = 0, negCount = 0;
    cout << "Enter array size: ";
    cin >> Count;
 
    int *Item = new int[Count];
 
    srand(time(0));
    for (int i = 0; i < Count; i++)
    {
        Item[i] = Min_Value + rand() % (Max_Value - Min_Value + 1);
        cout << fixed << setw(4) << Item[i] << " ";
        if (i % 2 == 0 && Item[i] < 0) //если считать четные с 0
            negCount++;
        /*if (i + 1 % 2 == 0 && Item[i] < 0)
            negCount++;*/ //Если считать четные с 1
    }
    cout << endl;
    cout << "Result = " << negCount << endl;
    delete[]Item;
    return 0;
}
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
11.05.2018, 11:36
Цитата Сообщение от wekfox Посмотреть сообщение
C++
1
2
3
for(int i=0;i<Count;i++){
* * * * if(Item[i] < 0 && i%2){S++; cout << Item[i] << '\t';}
* * }
Почему бы не сделать так
C++
1
2
3
for(int i=0;i<Count;i+=2){
* * * * if(Item[i] < 0){S++; cout << Item[i] << '\t';}
* * }
В третьей компоненте заголовка цикла (как впрочем и в других) можно писать произвольные операторы, а не только i++

Добавлено через 58 секунд

Не по теме:

PS. Звездочки в кодах на совести форума...:)

0
14 / 14 / 8
Регистрация: 10.12.2015
Сообщений: 157
11.05.2018, 12:13
Цитата Сообщение от Байт Посмотреть сообщение
Почему бы не сделать так
тогда уж так
C++ (Qt)
1
2
3
for(int i=1;i<Count;i+=2){
       if(Item[i] < 0){S++; cout << Item[i] << '\t';}
}
Добавлено через 10 минут
ну или нет, если считать что индексы начинаются от 0, хотя индексы могут и с единицы...
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
11.05.2018, 19:37
если массив целых чисел, можно так:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <ctime> 
using namespace std;
 
int main()
{
    srand((int)time(0));    
    const int n=10;  //к-во элементов массива (10)
    int Item[n], S=0, Low=-9, Hi=9; //массив целых чисел, счётчик, диапазон значений (от -9 до 9)  
       
    for (int i = 0; i < n; i++)
    {   
    Item[i]=rand()%(Hi-Low+1)+Low;
    if(i%2==0&&Item[i]<0) S++;
    cout<<Item[i]<<" ";
    }  
    cout<<"\nResult = "<<S<<"\n";
system("pause");
return 0;
}
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
11.05.2018, 21:39
Цитата Сообщение от wekfox Посмотреть сообщение
ну или нет, если считать что индексы начинаются от 0, хотя индексы могут и с единицы.
Понимаете, мы находимся в разделе C++. А в этом языке существует четкое правило нумерации элементов массивов. Если же дело происходит в другом государстве (что вполне возможно), то при постановке задачи это надо явно оговаривать. Нет оговорки - считаем с нуля. Просто чтоб глупостями не заниматься.
0
14 / 14 / 8
Регистрация: 10.12.2015
Сообщений: 157
11.05.2018, 22:50
Цитата Сообщение от Байт Посмотреть сообщение
Понимаете, мы находимся в разделе C++. А в этом языке существует четкое правило нумерации элементов массивов. Если же дело происходит в другом государстве (что вполне возможно), то при постановке задачи это надо явно оговаривать. Нет оговорки - считаем с нуля. Просто чтоб глупостями не заниматься.
Вы безусловно правы. Но речь идет не элементах массива а о элементах в принципе.
Если сказать что число имеет четный индекс - это легко интерпретировать как каждое второе начиная со второго. Задачу могут писать с другой отрасли, или те, которые с программированием не знаком. И вы же не будете ссылаться на с++ и их правила нумерации, при предоставления результата такой задачи(хотя, по нормально, это обтерлось бы несколько раз, до реализации). А о том, как вы реализуете, дело ваше.

Если сказать что число имеет четный индекс в массиве - тут без уточнения каждый второй начиная с первого, потому что массив - это инструмент языка данного языка программирования.

Кто знает, что на уме у тех, кто составлял задачу, так что нельзя отбрасывать оба варианта
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.05.2018, 22:50
Помогаю со студенческими работами здесь

Определить количество элементов массива, имеющих четные индексы и являющихся нечетными числами
ПОМОГИТЕ Составить программу, формирующую одномерный массив, состоящий из N целых элементов. Вычислить сумму положительных элементов...

Найти максимальный среди отрицательных элементов имеющих четные индексы.
Даны натуральное число n, действительные числа a1, … , an. Найти максимальный среди отрицательных элементов имеющих четные индексы.

Определить самые элементы из отрицательных элементов строк матрицы, имеющих четные индексы
В заданной матрицы В (7,3) определить самые элементы из отрицательных элементов строк, имеющих четные индексы. Вывести найдены самые...

Найти сумму элементов массива, имеющих четные индексы
заданный одномерный массив А (10). Найти сумму всех элементов массива, имеющих четные индексы. Нужна помощь

Построить вектор из элементов массива, имеющих четные индексы
1)Задан массив с n элементов. Построить вектор с элементов из парными индексами; определить индекс последнего отрицательного элемента.


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru