Pascal, динамические структуры данных. матрица, размещена в динамической памяти звучит так: дана матрица размера n*m (n< =150, m< =200). элементы 1й строки циклически сдвинуть на 1 позицию вправо, 2й строки на 2 позиции, 3й строки на 3 позиции и т. д просьба, написать программу, с комментариями, т.к. с указателями толком не разобрался. заранее . турбо-паскаль
187
338
Ответы на вопрос:
Uses crt; type mco = array[1..200] of longint; {строка массива - до 200 столбцов} dv = ^mco; {указатель на строку массива} mr = array[1..150] of dv; {массив указателей на строки} var a: mr; {создается массив указателей на строки} n,m: longint; procedure shiftcycle(row: longint; k: longint); var i, j, e: longint; begin for i : = 1 to k do begin e : = a[row]^[m]; for j : = m - 1 downto 1 do a[row]^[j + 1] : = a[row]^[j]; a[row]^[1] : = e end; end; var i, j, e: longint; begin clrscr; writeln('введите число строк и столбцов массива'); readln(n,m); writeln('введите элементы массива'); for i : = 1 to n do begin getmem(a[i], m * sizeof(longint)); {фактическое выделение памяти под i-ю строку строку массива} writeln('строка ',i,': '); for j : = 1 to m do read(a[i]^[j]) end; writeln; for i : = 1 to n do begin shiftcycle(i, i); for j : = 1 to m do write(a[i]^[j]: 4); writeln; freemem(a[i], m * sizeof(longint)) {освобождение памяти из-под i-й строки массива} end end. тестовый прогон: введите число строк и столбцов массива 4 5 введите элементы массива строка 1: 1 2 3 4 5 строка 2: 6 7 8 9 10 строка 3: 11 12 13 14 15 строка 4: 16 17 18 19 20 5 1 2 3 4 9 10 6 7 8 13 14 15 11 12 17 18 19 20 16
Var a, b: real; begin write('введите a,b: '); readln(a, b); writeln('гипотенуза = ', sqrt(sqr(a) + sqr(b)): 0: 2); end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
dimasik432526.10.2021 08:47
-
dankalko200105.03.2022 00:16
-
Den289110.06.2022 04:50
-
slivinskaja8313.02.2020 00:53
-
xxxromsavxxx05.05.2021 10:27
-
akrasnoplakhtyc20.04.2020 22:33
-
987210517.11.2021 23:01
-
Margoha8002907114.05.2020 22:43
-
Lenakorzyn23.11.2022 19:09
-
Lena11111529.12.2020 19:36
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.