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

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

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

Индекс второго отрицательного элемента в массиве - C++

26.12.2014, 10:30. Просмотров 369. Ответов 7
Метки нет (Все метки)

Вывести индекс 2 отрицательного элемента в массиве
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2014, 10:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Индекс второго отрицательного элемента в массиве (C++):

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

Для каждой строки матрицы найти индекс первого отрицательного элемента и записать данные в новый массив - C++
Для каждой строки найти номер первого отрицательного элемента и записать данные в новый массив: Где комментарий, я не могу понять, что...

Нахождение максимального элемента в массиве и его индекс (элемента) - C++
Доброго времени суток. Вот исходный код поиска максимального элемента массива: #include"stdafx.h" #include"stdio.h" ...

Создать массив. Вывести на дисплей значение и индекс второго четного элемента - C++
Помогите с задачкой такой: Организовать массив (n=8). Вывести на дисплей значение и индекс второго четного элемента. Нужен текст...

В массиве N элементов найти номер последнего отрицательного элемента - C++
В массиве N элементов найти номер последнего отрицательного элемента. Значение элемента и его порядковый номер вывести на экран. C++

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

7
D_Ok
44 / 33 / 12
Регистрация: 11.02.2014
Сообщений: 134
26.12.2014, 11:41 #2
C++
1
cout << "индекс 2 отрицательного элемента в массиве" << endl;
В чем собственно проблема? Ты хоть пробовал сам решить?
как вариант:
создаешь переменную подсчета отрицательных элементов
C++
1
int negative_count = 0;
Проходишь по элемента массива, с 0-го элемента, если он отрицательный добавляешь к счетчику единицу и проверяешь если счетчик ровняется 2-м выводишь индекс. PROFIT!
0
SeeT
53 / 23 / 2
Регистрация: 12.10.2012
Сообщений: 132
Записей в блоге: 1
26.12.2014, 13:09 #3
цикл вот что-то типа такого
C++
1
2
3
4
5
6
int k,
for (int i=0; i<N || k!=2; i++) // N - количество символов в массиве
{
if A[i]<0
k++;
}
Добавлено через 1 минуту
ну и естественно потом выводишь
C++
1
cout << i;
0
student_201
Заблокирован
26.12.2014, 13:37 #4
zloba,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
 
int main()
{
    int arr[] = { -9, 0, 4, 1, -2, 3, -1 };
    int n = sizeof( arr ) / sizeof( *arr );
    int indexNegative = 0;
 
    for( int i = 0; i < n; ++i )
    {
        if ( arr[ i ] < 0 )
            indexNegative++;
        if ( indexNegative == 2 )
        {
            std::cout << i << std::endl;
            break;
        }
    }
 
    return 0;
}
0
D_Ok
44 / 33 / 12
Регистрация: 11.02.2014
Сообщений: 134
26.12.2014, 13:37 #5
SeeT, неправильно, во-первых для чего в условии цикла || k != 2, если для преждевременного выхода из цикла тогда нужно && ибо в твоем случае i<N все равно будет true до последнего элемента массива. А во-вторых где ты хочешь выводить i? после цикла, так ее уже не будет, или условие в цикле на проверку k надо, или объявление i до цикла + правильное условие выхода из него, ну или проверка k и break....
0
student_201
Заблокирован
26.12.2014, 13:37 #6
Извиняюсь за использование break в данном случае. Надо было через while() и с флагом делать.
0
Kerry_Jr
Модератор
Эксперт PHP
2207 / 2003 / 701
Регистрация: 14.05.2014
Сообщений: 5,870
Записей в блоге: 1
Завершенные тесты: 5
26.12.2014, 13:46 #7
Цитата Сообщение от student_201 Посмотреть сообщение
Извиняюсь за использование break
не нужно извиняться, все с Вашим кодом в порядке.
0
student_201
Заблокирован
26.12.2014, 18:38 #8
Kerry_Jr, просто вспомнились начальные курсы в университете, когда нам запрещали пользоваться таким подходом досрочного выхода из цикла. Т.е. преподаватель обуславливал это тем, что выход по break - "признак неконтролирования ситуации". Привычка осталась. Поэтому всегда стараюсь использовать флаги для выхода, т.к. они несут дополнительную информацию.
0
26.12.2014, 18:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.12.2014, 18:38
Привет! Вот еще темы с ответами:

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

функция увеличивающая и уменьшающая индекс элемента в массиве - C++
Помоги пожалуйста реализовать две функции 2.1. Push() Aarray of Point name arr1 (2,2) with index 0 (4,4) with index 1 ...

В массиве найти индекс первого нулевого элемента - C++
Привет! в классах не разбераюсь. Решить методом КЛАССОВ! В массиве из n чисел найти индекс первого нулевого элемента.

Найти индекс элемента, равного 3, в одномерном массиве - C++
Дано одномерный массив размерностью N, найти на каком месте находится элемент который равняется 3.


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

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

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