Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 01.04.2016, 18:40   #1 (permalink)
CTPEJlOK
Новичок
 
Регистрация: 01.04.2016
Сообщений: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Exclamation Нужна помощь в написании программы. PascalABC

Собственно, сам текст программы:
Создать типизированный файл целых чисел и поместить в него 10 случайных чисел. Удалить из файла шестое и седьмое числа. Найти в файле наименьшее число и три числа, стоящих за ним. Вывести в текстовый файл найденные значения и их среднее арифметическое.

В программировании полный нуль, так что нужна готовая программа, желательно (но не обязательно) с пояснениями.

П.С. Знаю, что задача поставлена немного некорректно, если последнее число и будет тем самым наименьшим, на этот случай просто припишите туда Error какой-нибудь и все.

Заранее спасибо!
CTPEJlOK вне форума   Ответить с цитированием

Старый 01.04.2016, 18:40
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Упростить решение проблемы могут эти темы

Нужна помощь в написании программы
Нужна помощь в написании программы C++

Старый 01.04.2016, 20:26   #2 (permalink)
Vladimir_S
Специалист
 
Регистрация: 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.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Метки
pascalabcnet, type

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 10:18.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.