Опишите на паскале алгоритм вычисления разности максимального среди элементов, имеющих чётные значения, и максимального среди элементов, имеющих нечётные значения, в заданном целочисленном массиве из 30 положительных элементов (в предположении, что в массиве есть и чётные, и нечётные элементы).
143
211
Ответы на вопрос:
Если в нашем распоряжении имеется современная версия pascalabc.net 3.2, то есть минимум два способа решить такую . массив мы будем заполнять случайными числами из интервала [1; 98]. первый способ - использовать имеющуюся в этой версии паскаля возможность находить максимумы и минимумы встроенными в язык средствами. это быстро программируется и обычно страхyет от возможных ошибок при написании более детальных программ. // pascalabc.net 3.2, сборка 1353 от 27.11.2016 // внимание! если программа не работает, обновите версию! begin var a: =arrrandom(30,1,98); a.println; writeln('d=',a.where(x-> x.iseven).max-a.where(x-> x.isodd).max) end. пример 29 52 58 75 13 77 63 13 17 6 67 17 53 51 14 93 83 30 81 17 93 58 13 71 78 96 42 66 4 91 d=3 второй способ не привязан к упомянутой выше версии языка, т.е. может быть использован в школах, исповедующих " стиль программирования" естественно, он длиннее и можно будет сравнить количество строк кода. алгоритм основан на последовательном переборе элементов массива и одновременном получении максимума среди четных и нечетных его элементов. const n=30; var a: array[1..30] of integer; i,a1max,a2max: integer; begin randomize; a1max: =0; a2max: =0; for i: =1 to n do begin a[i]: =random(98)+1; write(a[i],' '); if a[i] mod 2 < > 0 then begin if a1max< a[i] then a1max: =a[i] end else if a2max< a[i] then a2max: =a[i] end; writeln; writeln('d=',a2max-a1max) end. замечу, что данный вариант программы содержит фрагмент, в котором школьники (да и не только школьники) часто делают ошибку. if a[i] mod 2 < > 0 then begin if a1max< a[i] then a1max: =a[i] end else if a2max< a[i] then a2max: =a[i] выделенные мной begin и end на первый взгляд не нужны. но в этом-то и ошибка! по правилам языка паскаль когда внутри одного if встречается другой if и хотя бы один из них неполный, т.е. не содержит else, последний else относится к самому последнему из if, который без его будет неполным. запутанно? поясню на нашем фрагменте. его без этих begin end можно понимать так: if a[i] mod 2 < > 0 then if a1max< a[i] then a1max: =a[i] else if a2max< a[i] then a2max: =a[i] но можно и так: if a[i] mod 2 < > 0 then if a1max< a[i] then a1max: =a[i] else if a2max< a[i] then a2max: =a[i] и паскаль, увы, понимает как раз по последнему варианту. посему как раз begin end решают эту проблему. встречается она не часто и о ней быстро забывают. а потом нарываютcя и не могут понять причины. что ж, выбор как решать - за вами!
Текстильная промышленность нашей страны выпускает много разнообразных тканей, различных по составу, строению и отделке. Ткани отличаются по внешнему виду, свойствам и требуют разных приемов обработки как в процессе шитья, так и при стирке, чистке и глаженье.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
AAOO17.01.2022 03:38
-
ЖенушкаV19.11.2020 08:52
-
sensed13.01.2022 19:28
-
Заноза1902.01.2021 18:41
-
shulgavitaliy1ozo6g128.11.2022 01:20
-
7gklass201731.01.2020 16:16
-
Atax1a119.01.2023 17:00
-
bosi979720.05.2022 02:28
-
mihaikl21.05.2020 19:19
-
aliya77usa29.11.2020 09:32
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.