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

Массив: Найти в каждой строке матрицы наибольший элемент и поменять его местами с элементом главной диагонали.

14.05.2019, 18:05. Просмотров 336. Ответов 7

помогите пожалуйста решить две задачи и если не трудно нарисовать блок схемы

1. Вставить в заданную последовательность действительных чисел a1<=a2<=....an действительное число b таким образом, чтобы последовательность оставалась неубывающей
Массив: Найти в каждой строке матрицы наибольший элемент и поменять его местами с элементом главной диагонали.


2. Дана целочисленная квадратная матрица. Найти в каждой ее строке наибольший элемент и поменять его местами с элементом главной диагонали.
Массив: Найти в каждой строке матрицы наибольший элемент и поменять его местами с элементом главной диагонали.



 Комментарий модератора 
На будущее одна задача - одна тема.
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2019, 18:05
Ответы с готовыми решениями:

Найти в каждой строке матрицы наибольший элемент и поменять его местами с элементом главной диагонали
Дана целочисленная квадратная матрица. Найти в каждой строке наибольший элемент и поменять его...

Найти в каждой строке матрицы наибольший элемент и поменять его местами с элементом главной диагонали
Задание: Дана целочисленная квадратная матрица. Найти в каждой стро*ке наибольший элемент и...

Найти в каждой строке матрицы наибольший элемент и поменять его местами с элементом главной диагонали
дана целочисленная квадратная матрица. Найти в каждой строке наибольший элемент и поменять его...

Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали
Дана целочисленная квадратная матрица. Найти в каждой строке наибольший элемент и поменять его...

Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали
Двумерные массивы, условие в заголовке! Заранее спасибо)

7
Kuzia domovenok
2839 / 2426 / 621
Регистрация: 25.03.2012
Сообщений: 8,642
Записей в блоге: 1
Завершенные тесты: 1
15.05.2019, 06:03 2
C++
1
2
3
4
int i;
for(i=n; i>0 && a[i]>b; --i)
  a[i]=a[i-1];//сдвиг правой части
a[i]=b;//вставка в середину
C++
1
2
3
4
5
6
7
for (int i=0; i<n; ++i)
{
  int max=0;
  for (int j=1; j<n; ++j)
    if (a[i][j]>a[i][max]) max=j;
  swap(a[i][i], a[i][max]);//обмен с элементом главной диагонали.
}
Добавлено через 38 секунд
блок-схемы в XXI веке не нужны

Не по теме:

Слово блок-схема пишется через дефис.

1
Kinilos
0 / 0 / 0
Регистрация: 30.03.2019
Сообщений: 3
15.05.2019, 16:48  [ТС] 3
мой препод этого не считает)
0
Yetty
2803 / 1958 / 1282
Регистрация: 18.12.2017
Сообщений: 6,289
15.05.2019, 20:51 4
Kuzia domovenok, поскольку Вы не отреагировали, продублирую в теме. выход за пределы массива при i=n
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
for(i=n; i>0 && a[i]>b; --i)
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
a[i]>b
b здесь с чем должно сравниваться ?
0
15.05.2019, 20:51
Kuzia domovenok
2839 / 2426 / 621
Регистрация: 25.03.2012
Сообщений: 8,642
Записей в блоге: 1
Завершенные тесты: 1
15.05.2019, 21:06 5
да, наверное a[i-1] дооллжно с B сравниватьчя
C++
1
2
3
4
int i;
for(i=n; i>0 && a[i-1]>b; --i)
  a[i]=a[i-1];//сдвиг правой части
a[i]=b;//вставка в середину
1
Yetty
2803 / 1958 / 1282
Регистрация: 18.12.2017
Сообщений: 6,289
15.05.2019, 21:18 6
Kuzia domovenok, всё равно не очень. лучше через доп. массив n+1 и указать на него. или vector.
0
Kuzia domovenok
2839 / 2426 / 621
Регистрация: 25.03.2012
Сообщений: 8,642
Записей в блоге: 1
Завершенные тесты: 1
16.05.2019, 08:44 7
Yetty, а что не так-то. Классическая вставка, проводится например при сортировке вставками. Наверное тот, кто заказывал вставку уж лучше знает, сколько места в массиве осталось. Можно даже ++n; в конец дописать, чтоб не забывался размер массива.
0
Kinilos
0 / 0 / 0
Регистрация: 30.03.2019
Сообщений: 3
16.05.2019, 08:45  [ТС] 8
у нас щас зачет будет и нужно 9 лаб сделать и я вообще не знаю смогу ли 9 программ написать за 2 пары. потому что не очень шарю в c++
0
16.05.2019, 08:45
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.05.2019, 08:45

Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали.
Дана целочисленная квадратная матрица. Найти в каждой строке наибольший элемент и поменять его...

Найти в каждой строке наибольший элемент и поменять его местами с элементом главной диагонали
Есть целочисленная квадратная матрица.Найти в каждой строке наибольший элемент и поменять его...

В каждой строке матрицы A (n, n) найти наибольший элемент и поменять его местами с соответствующим диагональным элементом.
В каждой строке матрицы A (n, n) найти наибольший элемент и поменять его местами с соответствующим...


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

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

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