Обнулить правый нижний угол матрицы симметричный левому.. надо, не понимаю как обнулить правый..#include#include using namespace std; typedef int telem ; //определение типа элементов массиваtypedef telem *tstr ; //определение типа "указатель на telem"typedef tstr *tmatr; //определение типа "указатель на указатель на telem"void inputmatr(tmatr a, int n) ; void outputmatr(tmatr a, int n) ; void sort_obmenf(tmatr a, int n) ; void nullmas (tmatr a, int s); int main(){ int i, j ; int n ; //число строк матрицы tmatr a; //объявляется переменная-указатель на указатель на telem setlocale(lc_all,"russian") ; cout < < "\nвведите половину массива: " ; cin > > n; a = new tstr [2*n] ; //выделение динамической памяти под массив //указателей на строки массива for(i = 0; i < 2*n; i++) //цикл выделения памяти под каждую строку *(a + i) = new telem [2*n] ; //каждому элементу массива указателей //на строки присваивается адрес начала //области памяти, выделяемой под строку inputmatr(a, 2*n) ; cout < < "исходная матрица: \n" ; outputmatr(a, 2*n) ; sort_obmenf(a, n) ; cout < < "матрица с отсортированными строками: " < < endl ; outputmatr(a, 2*n) ; cout < < endl ; nullmas (a,n); outputmatr(a, 2*n) ; //освобождение динамической памяти for(i = 0; i < 2*n; i++) delete a[i] ; delete a ; return 0 ; }void inputmatr(tmatr a, int n){ for(int i = 0 ; i < n ; i++) for(int j = 0 ; j < n ; j++) *(*(a + i) + j) = 10 * i + j; }//сортировка элементовvoid sort_obmenf(tmatr a, int s){bool flag = true; do { flag = false; for(int i = 0; i < 2*s-1; i++) { for(int j = 0; j < 2*s-1; j++) { if(a[i+1][j+1]> a[i][j]) { swap(a[i][j], a[i+1][j+1]); flag = true; } } } } while(flag); }void outputmatr(tmatr a,int n){ int i, j ; for(i = 0; i < n; i++) {for(j = 0; j < n; j++) {cout.width(2) ; //ширина поля выводимого параметра cout < < *(*(a + i) + j) < < ' ' ; } cout < < "\n"; }}void nullmas (tmatr a, int s){ int i, j ; for(i=0; i { for(j=0; j< 2*s; j++) { a[i][j]=0; } }for(j=s-1; j> s-i-1; j--) { for(i=2*s-1; i > s+j ; i--) { a[i][j]=0; }}for(j=s-1; j> s-i-1; j--) { for(i=2*s-1; i > s+j ; i--) { a[i][j]=0; }}}
124
245
Ответы на вопрос:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
airmenplay24.01.2022 14:48
-
Ilvina124krs16.10.2020 05:35
-
ппапаапа07.05.2020 06:03
-
Mojo22827.11.2022 14:20
-
IrynadiV12.07.2021 04:20
-
Politik200008.11.2020 06:51
-
allaaleksandro123.12.2020 21:00
-
pollywhite119.09.2020 16:18
-
Topskiy1315.02.2021 17:57
-
xokkey106.04.2022 11:52
![Caktus Image](/tpl/img/cactus.png)
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.