Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
Arem777
0 / 0 / 0
Регистрация: 04.03.2012
Сообщений: 11
#1

Дан двумерный массив размером nxm, заполненный случайным образом

13.01.2013, 13:45. Просмотров 1435. Ответов 1
Метки нет (Все метки)

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


Вот какой бред написал

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
 setlocale(LC_ALL, "Russian");
 
   const int N = 6, M = 7;
   int v [N] [M], k=0;
   srand(time(NULL));
   for ( int i=0; i<N; i++)
   for ( int j=0; j<M; j++)
       v[i][j] = -5 + rand() % 20;
   for (int i = 0; i < N; i++)
   {
       for (int j = 0; j < M; j++)
       {
           cout << v[i][j] << " ";
       }
           cout << endl;
   }   
 
       for( int i=0; i<N; i++)
       for (int j=0; j<M; j++)
       {
       if (v[i][j]<0)
          {
                  k=k+1;
          }
       if (k==2)
      
        cout<<"Номер строки в которой ровно 2 отрицательных элемента: "<<i<< endl;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.01.2013, 13:45
Ответы с готовыми решениями:

Дан двумерный массив размером 5х6, заполненный случайным образом
Дан двумерный массив размером 5х6, заполненный случайным образом. Заменить...

Дан двумерный массив размером nm, заполненный случайным образом. Найти сумму отрицательных элементов
Помогите, пожалуйста. Дан двумерный массив размером nm, заполненный случайным...

Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить перед всеми строками, первый элемент которых делится на3,вставить....
Дан двумерный массив размером 5 * 8, заполненный случайным образом. Вставить...

Дан двумерный массив Х размером n*m, заполненный случайными числами.
Тема: Матрицы. Дан двумерный массив Х размером n*m, заполненный случайными...

Дан одномерный массив целых чисел, заполненный случайным образом числами из промежутка [-a;b]. Вставить элемен
Помогите пожалуйста :) Я только учусь С++. Так что не ругайтесь, вот что смог...

1
lemegeton
2933 / 1362 / 467
Регистрация: 29.11.2010
Сообщений: 2,725
13.01.2013, 15:20 #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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <cstdlib>
#include <ctime>
#include <cmath>
#include <string>
#include <iostream>
#include <iomanip>
#include <map>
#include <vector>
 
int countNegatives(int *begin, int *end) {
  int result = 0;
  for (; begin != end; ++begin) {
    if (*begin < 0)
      ++result;
  }
  return result;
}
 
int *createRandomRow(int width) {
  int *result = new int[width];
  for (int *i = result; i != result + width; ++i)
    *i = rand() % 11 - 2;
  return result;
}
 
int **createRandomMatrix(int height, int width) {
  int **matrix = new int*[height];
  for (int **row = matrix; row < matrix + height; ++row) {
    *row = createRandomRow(width);
  }
  return matrix;
}
 
void deleteMatrix(int **matrix, int height, int width) {
  for (int **row = matrix; row < matrix + height; ++row) {
    delete [] *row;
  }
  delete [] matrix;
}
 
void printRow(int *begin, int *end) {
  while (begin != end) {
    std::cout << std::setw(3) << *begin++;
  }
}
 
void printMatrix(int **matrix, int height, int width) {
  for (int **row = matrix; row < matrix + height; ++row) {
    printRow(*row, *row + width);
    std::cout << std::endl;
  }
}
 
int main(int argc, char *argv[]) {
  srand(time(0));
  
  int height = 10 + rand() % 5;
  int width = 10 + rand() % 5;
  
  int **matrix = createRandomMatrix(height, width);
  printMatrix(matrix, height, width);
  
  for (int **row = matrix; row < matrix + height; ++row) {
    if (countNegatives(*row, *row + width) == 2) {
      std::cout << "Row " << row - matrix << " has 2 negative values." << std::endl;
    }
  }
  
  deleteMatrix(matrix, height, width);
  
  std::cin.peek();
  return 0;
}
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.01.2013, 15:20

Дан двумерный массив размером nхm, заполненный случайными числами.
Прошу помощи с такой задачей: Дан двумерный массив размером nхm,...

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

дан одномерный массив целых чисел заполненный случайным образом числами из промежутками [a,b]. Удалить из него все элеме
с++


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

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

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