4. Дан целочисленный массив из 10 элементов. Отсортировать отрицательные по убыванию, положительные - по возрастанию, оставив отрицательные на местах, принадлежащих, отрицательным, а положительные - на местах, принадлежащих положительным. Вывести на экран исходный и полученный массивы, дополнительных массивов не использовать.
163
482
Ответы на вопрос:
Вот правильно отформатированный код. пока код не отформатирован, понять его сложно, поэтому программисты всегда сразу пишут код с необходимым форматированием. начинающим писать программы тоже необходимо всегда следовать этому же принципу. if (a[h,v]=0) or (a[h-1,v]< > 0) then eng+=1; if a[h,v]< > 0 then if a[h-1,v]=0 then begin a[h-1,v]: =a[h,v]; a[h,v]: =0; end; наличие переменных вида a[h,v] позволяет сделать вывод, что фрагмент программы что-то делает с элементами двумерного массива "а". при этом, эдементы все время встречаются парами вида a[h,v] и a[h-1,v]. если a[h,v] - некий текущий элемент в строке h и столбце v, то a[h-1,v] - это элемент в предыдущей строке и том же столбце. для краткости будем называть элемент a[h,v] текущий, а элемент a[h-1,v] - предшествующий, предполагая просмотр по столбцам. теперь фрагмент программы можно заменить псевдокодом. если (текущий=0) или (предшествующий≠0) то eng+=1; (1) если текущий≠0 то (2) если предшествующий=0 то (3) предшествующий: =текущий; (4) текущий: =0; (5) опреатор eng+=1 - более короткая запись оператора eng: =eng+1, допустимая только в версии pascalabc.net и пришедшая в него из языка c#. это действие обычно называют "плюс единичка в счетчик", подразумевая, что eng подсчитывает количество некоторых событий. в данном случае это событие - случай, когда или текущий элемент нулевой, или предшествующий ненулевой. сделаем псевдокод более компактным. если (текущий=0) или (предшествующий≠0) то (1) добавим 1 в счетчик таких событий (2) если текущий≠0 то (3) если предшествующий=0 то (4) предшествующий: =текущий; текущий: =0; (5) условие (4) проверяется только если выполняется условие (3). это оптимизация кода, которая позволяет не проверять условие (4), если условие (3) не выполняется. такая оптимизация полезна только для старых компиляторов, а pascalabc.net умеет оптимизировать подобные вещи сам. для понимания алгоритма вопрос оптимизации несущественен, поэтому мы можем утверждать, что (5) выполнятнся только при одновременном наступлении (3) и (4). если (текущий=0) или (предшествующий≠0) то добавим 1 в счетчик таких событий если (текущий≠0) и (предшествующий=0) то предшествующий: =текущий; текущий: =0 в последней строке отметим, что предшествующий принимает значение текущий, а текуший обнуляется. но это происходит только если предшествующий был нулём, следовательно можно говорить об обмене значениями. если (текущий=0) или (предшествующий≠0) то добавим 1 в счетчик таких событий если (текущий≠0) и (предшествующий=0) то обменять значения предшествующего и текущего вот все, что делает фрагмент кода.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Adik2006121.11.2021 02:34
-
ДашаУмняшаТ18.03.2022 13:30
-
NASTYASIDorova1004.03.2023 08:46
-
crushkarulit06.05.2021 19:11
-
Инна123443211486513.06.2023 19:52
-
artemykas01.01.2022 22:51
-
Даша200211111110.04.2023 23:55
-
DanilOtlicnic28.04.2021 09:05
-
Valeriiiss04.02.2022 17:16
-
OoMaRиNкАoO01.07.2022 06:54
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.