Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 1
Регистрация: 14.10.2014
Сообщений: 39
1

В двухмерном динамическом массиве найти строку только из отрицательных чисел.

12.11.2014, 21:04. Показов 1107. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Объявить динамический массив A[3][3] проинициализировать и найти строку где находятся только отрицательные числа.
Объясните что нужно делать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.11.2014, 21:04
Ответы с готовыми решениями:

Вывод в двухмерном динамическом массиве
Добрый день,вообщем,имеется задачка: Реализовать программу, используя функции динамического...

Деление в двухмерном динамическом массиве
Пользователь задает кол-во столбиков и строк. Пытаюсь сделать так, чтобы каждое число первой...

В матрице найти строку, состоящую только из отрицательных чисел
1) В матрице найти строку, состоящую только из отрицательных чисел

В двухмерном массиве найти сумму отрицательных элементов пятой строки
А)Сумму отрицательных элементов пятой строки Б)Сумму элементов пятой строки массива, меньших 100...

4
19 / 19 / 9
Регистрация: 15.09.2014
Сообщений: 127
12.11.2014, 21:07 2
Объявление такое.
C++
1
2
3
int **array = new int* [3];
for (int count = 0; count < 3; count++)
   array[count] = new int [3];
Строку находишь также как и со статическим.
1
0 / 0 / 1
Регистрация: 14.10.2014
Сообщений: 39
12.11.2014, 22:41  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
using namespace std;
 
 int main()
 { int A[3][3], j,i,k=0;
 cout<<"vvedite Massiv";
 
 int **A = new int* [3];
for (int i = 0; i < 3; i++)
   A[i] = new int [3];
   cin>>A[i][j];
   for(i=0;i<3;i++)
{ k=0;
for(j=0;j<0;j++)
if (A[i][j]<0) k++;
}
cout<<"stroka s otricat elem"<<k;
return 0;}
Ни че не пойму , код не рабочий.
Не могли бы вы описать каждый ваш шаг объявление и нахождение строки .
0
11 / 11 / 10
Регистрация: 16.12.2013
Сообщений: 66
12.11.2014, 23:16 4
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
56
57
58
#include <iostream>
#include <cmath>
 
using namespace std;
 
#define SIZE 3
 
 
int main()
{
    setlocale (0,"");
 
    int **arr = new int* [SIZE];
    for ( int count1 = 0; count1 < SIZE; count1++)
    arr[count1] = new int [SIZE];
    
    int i; //ряд
    int j; //столбец
 
    for (  i=0; i<SIZE; i++ )
        for (  j=0; j<SIZE; j++ )
        {
            cout << "arr[" << i+1 << "][" << j+1 << "]= ";
            cin >> arr[i][j];
        }
 
        cout << "Ваш массив:\n";
    for (  i=0; i<SIZE; i++ )
    {
        for (  j=0; j<SIZE; j++ )
            cout << arr[i][j] << " ";
        cout << endl;
    }
 
    int count = 0; // счетчик отрицательных чисел в строке
    int count2 = 0; // cчетчик отрицательных строчек
 
    for ( int  i=0; i<SIZE; i++ )
    {
        for ( int j=0; j<SIZE; j++ )
        {
            if ( arr[i][j]<0 )
                count++;
            if ( count==3 )
            {
                cout << "В " << i+1 << " строке все эллементы отрицательные\n" ;
                count2++;
            }
        }
              count = 0;
    }
 
    if ( !count2 )
        cout << "Искомых строчек не найдено\n";
 
    system ("pause");       
    return 0;
}
Добавлено через 6 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
using namespace std;
 
 int main()
 { int A[3][3], j,i,k=0;
 cout<<"vvedite Massiv";
 
 int **A = new int* [3];
for (int i = 0; i < 3; i++)
   A[i] = new int [3];
   cin>>A[i][j];
   for(i=0;i<3;i++)
{ k=0;
for(j=0;j<0;j++)
if (A[i][j]<0) k++;
}
cout<<"stroka s otricat elem"<<k;
return 0;}

А у тебя в коде:
Во первых, зачем ты переобъявляешь массив?
строчку
C++
1
int A[3][3]
нужно убрать.
Во вторых
C++
1
 cin>>A[i][j];
так ввод значений не делается. Таким образом ты вводишь только элемент A[0][0], а не весь массив. Как нужно - смотри выше, я расписал.

C++
1
2
3
4
5
  for(i=0;i<3;i++)
{ k=0;
for(j=0;j<0;j++)
if (A[i][j]<0) k++;
}
А тут во первых опечатка в строчке
C++
1
for(j=0;j<0;j++)
, j<3 должно быть.
0
19 / 19 / 9
Регистрация: 15.09.2014
Сообщений: 127
12.11.2014, 23:28 5
HarDEXtreme, слишком много исправлять. Вернись на этап обучения с циклами и одномерными статическими. + почитай ошибки новичков.
C++
1
2
3
4
Цикл{
действие1;//это внутри цикла
действие2;//это внутри цикла
}
и
C++
1
2
3
Цикл
действие1;//это внутри цикла
действие2;//а это не внутри цикла, но если используются переменные из цикла, то будет использована последняя
Не одно и тоже. Отсутствие фигурных скобок, допускается только если действие одно.
0
12.11.2014, 23:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.11.2014, 23:28
Помогаю со студенческими работами здесь

Как узнать длину строки в динамическом двухмерном массиве?
Недавно, столкнулся с проблемой, что нужно определить количество символов в строке List'а, а не...

В двухмерном динамическом массиве упорядочить строки по возрастанию первых элементов
В матрице размером N на M упорядочить строки по возрастанию их первых элементов. Помогите...

В двумерном динамическом массиве найти произведение отрицательных элементов массива
Помогите плиз с задачей. В двумерном динамическом массиве найти произведение отрицательных...

Найти и напечатать, сколько отрицательных элементов в двухмерном массиве в каждом рядке матрицы
я вот сделал прогу на борланде Си здесь явно что то не то Задание: Найти и напечатать ,сколько...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru