Пишет "ошибка времени выполнения: system.indexoutofrangeexception: индекс находился вне границ массива." и не выводит отсортированный массив. что делать? //ввести кол-во эл-тов n одномерного массива целого типа и сгенерировать массив в диапазоне [-70,80]. требуется: //1 вывести сгенерированный массив в отдельной строке, найти max и min эл-ты и поменять их местами //2 отсортировать полученный массив по убыванию и вывести в 3-ей строке program dz1; var x: array[1..100]of integer; i,max,min,n,t,buf,k: integer; begin write('введите кол-во эл-тов n: '); readln(n); for i: =1 to n do begin x[i]: =random(106)-35; end; writeln('вывод сген. массива'); for i: =1 to n do write (x[i],' '); writeln; writeln; //1 writeln('поиск max: '); max: =x[1]; for i: =2 to n do if (maxx[i])then begin min: =x[i]; end; writeln('min=',min); writeln('max=',max); t: =x[max]; x[max]: =x[min]; x[min]: =t; //2 for i: =1 to n-1 do begin for k: =1 to n-1 do begin if x[k] < x[k+1] then begin buf: =x[k]; x[k]: =x[k+1]; x[k+1]: =buf; end; end; end; writeln; writeln('массив отсортирован'); for k: =1 to n do write(x[k],' '); readln; for k: =1 to n-1 do read(x[n]); readln(x[n]); end. заранее .
104
422
Ответы на вопрос:
Program dz1; var x: array[1..100]of integer; i,max,min,n,t,buf,k: integer; begin write('введите кол-во эл-тов n: '); readln(n); for i: =1 to n do x[i]: =random(151)-70; writeln('вывод сген. массива'); for i: =1 to n do write (x[i],' '); writeln; writeln; //1 writeln('поиск max и min: '); max: =1; min: =1; for i: =2 to n do begin if (x[max]< x[i])then max: =i; if (x[min]> x[i])then min: =i; end; writeln('min=',x[min]); writeln('max=',x[max]); t: =x[max]; x[max]: =x[min]; x[min]: =t; //2 for i: =1 to n-1 do for k: =1 to n-i do if x[k] < x[k+1] then begin buf: =x[k]; x[k]: =x[k+1]; x[k+1]: =buf; end; writeln; writeln('массив отсортирован'); for i: =1 to n do write(x[i],' '); writeln; end. пример: введите кол-во эл-тов n: 15вывод сген. массива32 -38 -35 53 -50 31 66 16 5 28 64 -11 20 -43 -1поиск max и min: min=-50max=66массив отсортирован66 64 53 32 31 28 20 16 5 -1 -11 -35 -38 -43 -50
В начале считаем сумму, переведя числа в десятеричную:
2+8+16=26
26 в двоичной это 11010.
ответ: 11010.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Like294213.05.2020 04:22
-
НатальяНОВ12.05.2022 03:18
-
Tatarin57022.06.2020 11:07
-
Sarzhanovaperuza15.09.2022 15:33
-
Pilots2105.05.2022 22:10
-
Ангел2332455620.09.2021 01:27
-
coldon08.12.2022 04:09
-
glupostsroghdeniy09.08.2021 16:21
-
Solari29.09.2022 00:30
-
kookie0426.05.2022 11:57
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.