Нужно . надо написать программу на pascalabcnet, которая создаёт типизированный файл из 40 вещественных чисел. расположенны они по такому принципу: первые 10- положительные, вторые 10- отрицательные, третьи 10- полижетельные, четвёртые 10- отрицательные (пример: 1 2 3 4 5 6 7 8 9 10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 21 22 23 нужно создать новый типизированный файл, в котором эти же числа будут расположены следующим образом: первые 5- положительные, вторые 5- отрицательные, третьи 5 - положительные и так далее.
122
302
Ответы на вопрос:
// pascalabc.net 3.3, сборка 1579 от 18.11.2017 // внимание! если программа не работает, обновите версию! нулевой шаг: создание типизированного файла нужной структуры begin var f: file of real; assign(f,'myreal.bin'); rewrite(f); loop 2 do begin seqrandominteger(10,1,100).select(t-> t/10).foreach(t-> write(f,t)); seqrandominteger(10,-100,-1).select(t-> t/10).foreach(t-> write(f,t)); end; f.seek(0); // начало файла var b: real; while not eof(f) do begin read(f,b); print(b) end; println; f.close end. пример: 9.7 1 4.1 8.3 5.6 9.3 2.2 9.3 5.8 8.8 -8.8 -7.7 -1.4 -5.2 -7.2 -8.3 -1.3 -8.9 -6.3 -4.8 3.5 3.8 3.2 6 3.2 4.5 10 4.5 6.1 0.7 -8 -0.8 -3.3 -9.5 -7.9 -0.9 -7.4 -9.4 -1.8 -4.6 собственно, программа begin var f1,f2: file of real; assign(f1,'myreal.bin'); reset(f1); if f1.filesize mod 20< > 0 then begin writeln('количество компонент во входном файле не кратно 20'); exit end; assign(f2,'myreal2.bin'); rewrite(f2); var buf: =new real[5]; var b: real; while not eof(f1) do begin // переписываем пять положительных loop 5 do begin read(f1,b); write(f2,b) end; // считываем пять положительных в буфер for var i: =0 to 4 do read(f1,buf[i]); // переписываем пять отрицательных loop 5 do begin read(f1,b); write(f2,b) end; // пишем пять положительных из буфера foreach var t in buf do write(f2,t); // переписываем пять отрицательных loop 5 do begin read(f1,b); write(f2,b) end end; f1.close; // контрольное чтение f2.seek(0); // к началу while not eof(f2) do begin read(f2,b); print(b) end; writeln; f2.close end. пример 9.7 1 4.1 8.3 5.6 -8.8 -7.7 -1.4 -5.2 -7.2 9.3 2.2 9.3 5.8 8.8 -8.3 -1.3 -8.9 -6.3 -4.8 3.5 3.8 3.2 6 3.2 -8 -0.8 -3.3 -9.5 -7.9 4.5 10 4.5 6.1 0.7 -0.9 -7.4 -9.4 -1.8 -4.6
Впредложении 38 символов(символ-буква,пробел,точка) 38*16=608 бит 608 бит можно перевести в 76 байт, но нам это не нужно. ответ: 2
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Даринёк03.11.2020 07:13
-
nikakoheleva1428.02.2023 19:01
-
Danefremov0308.10.2022 11:10
-
odarka159606.03.2020 07:55
-
саня133626.11.2021 22:14
-
Katri192116.11.2020 20:28
-
sokolovskaymasha28.11.2020 14:50
-
Ренаткрутой10.12.2020 09:53
-
kristy43rus15.11.2021 22:07
-
justnastya115.04.2020 23:37
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.