• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

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

  • Автор темы Автор темы CTPEJlOK
  • Дата начала Дата начала

CTPEJlOK

Ученик
Регистрация
1 Апр 2016
Сообщения
3
Реакции
0
Баллы
0
Нужна помощь в написании программы. PascalABC

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

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

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

Заранее спасибо!
 
Да пожалуйста:
Код:
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.
 
Назад
Сверху