|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
Опции темы | Опции просмотра |
01.04.2016, 18:40 | #1 (permalink) |
Новичок
Регистрация: 01.04.2016
Сообщений: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Нужна помощь в написании программы. PascalABC
Создать типизированный файл целых чисел и поместить в него 10 случайных чисел. Удалить из файла шестое и седьмое числа. Найти в файле наименьшее число и три числа, стоящих за ним. Вывести в текстовый файл найденные значения и их среднее арифметическое. В программировании полный нуль, так что нужна готовая программа, желательно (но не обязательно) с пояснениями. П.С. Знаю, что задача поставлена немного некорректно, если последнее число и будет тем самым наименьшим, на этот случай просто припишите туда Error какой-нибудь и все. Заранее спасибо! |
01.04.2016, 18:40 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Упростить решение проблемы могут эти темы Нужна помощь в написании программы Нужна помощь в написании программы C++ |
01.04.2016, 20:26 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Да пожалуйста:
Код:
Var n,i,Min,Imin:Integer; f1,fx:File of Integer; f2:Text; Ar_M:Real; Begin Randomize; Assign(f1,'xxx'); Rewrite(f1); Assign(f2,'yyy.txt'); Rewrite(f2); Assign(fx,'zzz'); Rewrite(fx); Writeln(f2,'Initial array:'); for i:=1 to 10 do begin n:=Random(100); Write(f1,n); Write(f2,n:4); end; Writeln(f2); Writeln(f2); Writeln(f2,'New array:'); Close(f1); Reset(f1); for i:=1 to 10 do begin read(f1,n); if (i<6) or (i>7) then write(fx,n); end; Close(f1); Close(fx); Reset(fx); Rewrite(f1); for i:=1 to 8 do begin read(fx,n); write(f1,n); write(f2,n:4); end; Writeln(f2); Writeln(f2); Write(f2,'Minimal value: '); Close(fx); Erase(fx); Close(f1); Reset(f1); Min:=200; for i:=1 to 8 do begin Read(f1,n); if n<Min then begin Min:=n; Imin:=i; end; end; Reset(f1); Writeln(f2,Min); Writeln(f2); Write(f2,'Arithmetic mean: '); if Imin>5 then Writeln(f2,'Error!') else begin Ar_M:=0; for i:=1 to 8 do begin read(f1,n); if (i>=Imin) and (i<=Imin+3) then Ar_M:=Ar_M+n/4; end; writeln(f2,Ar_M:0:3); end; Close(f2); End. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
Метки |
pascalabcnet, type |
Опции темы | |
Опции просмотра | |
|
|