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

Получить целочисленную квадратную матрицу по правилу - C++

23.10.2013, 11:29. Просмотров 657. Ответов 15
Метки нет (Все метки)

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

Построить целочисленную квадратную матрицу заданного порядка по указанному правилу
5. Построить целочисленную матрицу А(7;7) на побочной диагонали которой 1, над...

Построить квадратную целочисленную матрицу указанного порядка по заданному правилу
Построить целочисленную матрицу A(10;10), заполнив её следующим образом:...

Получить целочисленную квадратную матрицу размерностью
Получить целочисленную квадратную матрицу размерностью NхN, элементами которой...

Получить целочисленную матрицу по правилу
Здраствуйте! Задача такова: Даны целые числа а1, а2, а3. Получить...

Получить квадратную матрицу по правилу
кто может напишите код пожалуйста

Получить квадратную матрицу по указанному правилу
1 x...x^8 x^9 x 0...0 x^8 . . - ,середина заполняется нулями). . x^8 0...0...

15
programina
2049 / 604 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
23.10.2013, 11:52 #2
Цитата Сообщение от SpartanecLexa Посмотреть сообщение
Добрый день! Помогите решить задачку.
Дана вещественная квадратная матрица порядка N. Получить целочисленную квадратную матрицу, в которой элемент равен 1, если соответствующий ему элемент исходной матрицы больше элемента, расположенного на главной диагонали. и равен 0 в противном случае.
C++
int main()
{
  const int N = 5;
  int ar[N][N];
  for(int x=0; x<N; x++)
    for(int y=0; y<N; y++)
      ar[x][y]= rand()%10;
 
  nw[N][N];
 
  for(int x=0; x<N; x++)
    for(int y=0, d=0; y<N; y++, d++)
      if(ar[x][y] > ar[x][y+d]) nw[x][y] =1;
      else nw[x][y] =0;
 
}
1
programina
2049 / 604 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
31.10.2013, 11:50 #3
C++
int main()
{
  const int N = 5;
  int ar[N][N];
  for(int x=0; x<N; x++)
    for(int y=0; y<N; y++)
      ar[x][y]= rand()%10;
 
   int nw[N][N]; // добавила забытый тип) 
 
  for(int x=0; x<N; x++)
    for(int y=0, d=0; y<N; y++, d++)
      if(ar[x][y] > ar[x][y+d]) nw[x][y] =1;
      else nw[x][y] =0;
 
}
0
Tulosba
:)
Эксперт С++
4746 / 3240 / 496
Регистрация: 19.02.2013
Сообщений: 9,046
31.10.2013, 11:55 #4
Цитата Сообщение от programina Посмотреть сообщение
if(ar[x][y] > ar[x][y+d])
выход за пределы массива.

Не по теме:

А куда делись номера строк кода?

0
programina
2049 / 604 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
31.10.2013, 12:13 #5
Tulosba, не может этого быть, я проверяла.

0 + 4 = 4
0
Tulosba
:)
Эксперт С++
4746 / 3240 / 496
Регистрация: 19.02.2013
Сообщений: 9,046
31.10.2013, 12:16 #6
programina, каких значений может достигать индекс [y+d] по-вашему?
0
ShadowFirst
55 / 48 / 13
Регистрация: 31.10.2013
Сообщений: 164
31.10.2013, 12:20 #7
Цитата Сообщение от programina Посмотреть сообщение
Tulosba, не может этого быть, я проверяла.

0 + 4 = 4
Tulosba прав. У вас в строчках:
C++
1
2
3
4
  for(int x=0; x<N; x++)
    for(int y=0, d=0; y<N; y++, d++)
      if(ar[x][y] > ar[x][y+d]) nw[x][y] =1;
      else nw[x][y] =0;
ar[x][y+d], y и d растет по прямой то есть на втором обороте цикла будет 1 + 1, потом 2 + 2, 3 + 3 что уже находится за рамками массива
0
castaway
Эксперт С++
4926 / 3033 / 453
Регистрация: 10.11.2010
Сообщений: 11,089
Записей в блоге: 10
Завершенные тесты: 1
31.10.2013, 12:44 #8
Цитата Сообщение от programina Посмотреть сообщение
Tulosba, не может этого быть, я проверяла.
А как же здравый смысл?
0
Tulosba
31.10.2013, 12:50
  #9

Не по теме:

Цитата Сообщение от castaway Посмотреть сообщение
А как же здравый смысл?
Но программа же РАБОТАЕТ!!1!

0
castaway
31.10.2013, 12:52
  #10

Не по теме:

Цитата Сообщение от Tulosba Посмотреть сообщение
Но программа же РАБОТАЕТ!!1!
В зависимости от фазы луны если только))

0
programina
2049 / 604 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
31.10.2013, 13:03 #11
Ох. Программирование - это не мое.
0
ShadowFirst
55 / 48 / 13
Регистрация: 31.10.2013
Сообщений: 164
31.10.2013, 13:13 #12
Цитата Сообщение от programina Посмотреть сообщение
Ох. Программирование - это не мое.
Та будет вам, просто сыграла шутку невнимательность, даже у профессионалов такое бывает, что то не заметили и т.д.
0
SpartanecLexa
0 / 0 / 1
Регистрация: 24.10.2012
Сообщений: 250
18.12.2013, 13:00  [ТС] #13
как сделать вывод результата на экран?

Добавлено через 33 секунды
Цитата Сообщение от programina Посмотреть сообщение
C++
int main()
{
  const int N = 5;
  int ar[N][N];
  for(int x=0; x<N; x++)
    for(int y=0; y<N; y++)
      ar[x][y]= rand()%10;
 
   int nw[N][N]; // добавила забытый тип) 
 
  for(int x=0; x<N; x++)
    for(int y=0, d=0; y<N; y++, d++)
      if(ar[x][y] > ar[x][y+d]) nw[x][y] =1;
      else nw[x][y] =0;
 
}
как сделать вывод результата на экран?
0
programina
2049 / 604 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
18.12.2013, 13:13 #14
printf
0
SpartanecLexa
0 / 0 / 1
Регистрация: 24.10.2012
Сообщений: 250
18.12.2013, 14:19  [ТС] #15
Цитата Сообщение от programina Посмотреть сообщение
printf
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int main()
{
  const int N = 5;
  int ar[N][N];
  for(int x=0; x<N; x++)
    for(int y=0; y<N; y++)
      ar[x][y]= rand()%10;
 
   int nw[N][N]; // добавила забытый тип) 
 
  for(int x=0; x<N; x++)
    for(int y=0, d=0; y<N; y++, d++)
      if(ar[x][y] > ar[x][y+d]) nw[x][y] =1;
      else nw[x][y] =0;
printf("%nw",nw);
system("PAUSE")
return 0;
так?
0
programina
2049 / 604 / 41
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
18.12.2013, 14:27 #16
C++
printf("%d ", nw[x][y]); // внутри условия if(...) { printf } else { printf }
0
18.12.2013, 14:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.12.2013, 14:27
Привет! Вот еще темы с решениями:

Заполнить целочисленную квадратную матрицу по спирали
Получить целочисленную квадратную матрицу порядка 2n+1, элементами которой...

Получить целочисленную матрицу
Задание ниже: Nastik23, оформите тему в соответствии с правилами форума:...

Получить целочисленную матрицу
Доброго времени суток, прощу помощи не могу понять тему про матрицы... Сильно...

Получить целочисленную матрицу
Нужна помощь в решении задания на С++. Искал в поиске и на форуме, находил...


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

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

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