Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

темах автоматизации управления офисных системах проектирования и моделирования

Работа добавлена на сайт samzan.net: 2016-03-30

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 18.5.2024

Общая характеристика задач обработки файлов.

Файлы - одна из наиболее используемых структур данных в системах автоматизации управления (офисных системах), проектирования и моделирования. В этих системах файлы часто являются не только средством долговременного хранения данных, но и средством связи между различными процессами обработки данных (связь по данным). Файлы, объединенные по функциональному или иному принципу, составляют интегрированную базу данных, информация которой может быть доступна одной или нескольким системам обработки данных.

Практика создания и использования систем обработки файлов данных накопила в настоящее время солидный опыт и определила некоторые базисные задачи для таких систем, а также эффективные методы их алгоритмизации. Это достаточно обширная область, выходящая за рамки основ программирования. Введение в типовые задачи обработки файлов данных. К числу таких задач мы отнесли:

создание файла, т.е. ввод данных в новый или в существующий файл;

анализ файла, т.е. просмотр (чтение) всего содержимого файла и вычисление некоторых интегральных характеристик или показателей этого содержимого;

сортировка файла, предполагающая упорядочение записей файла по заданному логическому критерию, зависящему от содержания записей;

коррекция файла, т.е. изменение содержимого файла либо путем обновления записей, либо коррекции по некоторым глобальным критериям (удаление "лишних" записей);

поиск и выборка данных по некоторым логическим критериям содержимого записей файла;

печать файла, т.е. вывод файла на принтер или на экран в заданном формате размещения информации из записей файла;

Создание файла данных - важнейшая процедура, с которой обычно начинается цикл обработки данных. Она предполагает добавление исходных данных в пустой файл или в уже созданный ранее файл. Исходные данные могут вводиться с различных носителей (в том числе с клавиатуры). Типичной проблемой при вводе исходных данных является контроль возможных ошибок (как синтаксических, таких как соответствие формату или шаблону, так и семантических, связанных со значениями данных). Турбо Паскаль предоставляет для текстовых и типизированных файлов простые средства, как создания нового файла, так и добавления записей в уже существующий файл, а также проверки существования файла или возможности открытия нового файла на указанном носителе.

Следующий пример программы иллюстрирует простой алгоритм создания типизированного файла с некоторыми процедурами контроля.

program create_file; {Создание файла данных о группе студентов}

       uses CRT;

       type stud =record num:byte;name:string[16];average:real end;

                gr_st=file of stud;{типизированный файл записей}

       var gr:gr_st{файл группы студентов}; st:stud{запись о студенте};

             nm:string{имя исходного файла}; s:char{признак Y/N};

             numb:integer{число записей в файле nm};

 BEGIN    clrscr;  repeat write('Имя файла: ');readln(nm);

               if nm='' then halt;assign(gr,nm);s:='Y';

              {$I-}reset(gr);{$I+} if IOResult<>0 then

                    begin write('Открыть новый файл ', nm, '?(Y/N)');

               readln(s); if upcase(s)='Y' then

               begin {$I-}rewrite(gr);{$I+} if IOResult<>0 then

                      begin writeln('Диск недоступен!');nm:= '' end;

               end                                   else nm:='';

                    end until nm<>'';numb:=0;if upcase(s)='Y' then

                        begin seek(gr,filesize(gr));numb:=filesize(gr) end;

           writeln('Всего записей в файле:',numb, '. Введите очередную запись:');

           with st do repeat repeat writeln('Фамилия,инициалы ','Cредний балл');

              readln(name,average);if(average<2)or(average>5) then

              writeln('Ошибка! Повторите ввод последней записи');

           until(average>=2)and(average<=5);inc(numb);num:=numb; write(gr,st);write('Ввод следующей записи?(y/n)');readln(s);

                    until upcase(s)<>'Y';close(gr);if numb=0 then erase(gr);

        {Конец цикла записи}writeln('Всего записей в файле ',nm,' ',numb);

END {create_file}.

Если все точки плоскости, заданные своими координатами, попадают в круг с радиусом R и центром в начале координат, определить их среднюю абсциссу и ординату, иначе распечатать номера точек, не попавших в заданый круг.

Unit Z433_10;

interface

Const n = 5;

Type mass = array[1..n] of real;

function InArea(X,Y:mass; R:real):boolean;

{возвращает true, если все точки попали в круг радиусом R}

procedure SrZnach(A:mass; Var s:real);

{Вычисляет среднее значение массива A}

procedure PrintNum(X,Y:mass; R:real);

{Печатает номера точек, не попавших в круг радиусом R}

implementation

function InArea(X,Y:mass; R:real):boolean;

Var i:integer;

   b:boolean;

Begin

b := true;

i := 0;

repeat i := i + 1;

      if sqrt((sqr(X[i]) + sqr(Y[i]))) > R then b := false

until (not b) or (i >= n);

InArea := b;

end;  {InArea}

procedure SrZnach(A:mass; Var s:real);

Var i:integer;

Begin

s := 0;

for i := 1 to n do

s := s + A[i];

s := s / n;

end;  {SrZnach}

procedure PrintNum(X,Y:mass; R:real);

Var i:integer;

Begin

for i := 1 to n do

if sqrt((sqr(X[i]) + sqr(Y[i]))) > R then write(i,' ');

end;  {PrintNum}

END.

program z433_10;

uses Z433_10;

Var X,Y:mass;

   i:integer;

   R,sx,sy:real;

BEGIN

for i := 1 to n do

 Begin

 write('X: ');

 readln(X[i]);

 write('Y: ');

 readln(Y[i]);

 end;

write('R: ');

readln(R);

if InArea(X,Y,R) then

 Begin

 SrZnach(X,sx);

 SrZnach(Y,sy);

 writeln('A: ',sx,' O: ',sy)

 end

                else Begin

                     write('N: ');

                     PrintNum(X,Y,R);

                     end;

END.




1. Реферат- Понятие философии
2. Краткая история рекламы
3. К методике изучения русско-иного языка
4. тема пожежної сигналізації захищає Ваше майно від загоряння
5. Реферат- В ожидании чуда, или Рекомендации будущим мамам
6. больной B b бэ [b] вrb борода С с
7. тематизированное изложение и демонстрацию клинических и зуботехнических этапов протезирования с опорой на
8. А 28 7 13 8 0 0 21 100
9. ва и ее органов по определению режима регулирования внешнеэкон.html
10. БЕЛОРУССКАЯ ГОСУДАРСТВЕННАЯ СЕЛЬСКОХОЗЯЙСТВЕННАЯ АКАДЕМИЯ
11. Spezifische spekte des 'bersetzens- nleitungen-Benutzerhinweise Definition 'bersetzungsrelevnte formle spekte Mkrostruktur Mikrostruktur Verbltext und Bild Sicherhe
12. Збручский идол путеводитель по славянской Вселенной
13. При поздней диагностике и несвоевременном оказании квалифицированной медицинской помощи прогноз у больши
14. з курсу- ІСТОРІЯ ДЕРЖАВИ ТА ПРАВА УКРАЇНИ.html
15. в Скифии по северовосточному побережью Черного моря в Ахайе т
16. тематизации знания
17. Нотариат, его задачи и место в системе государственных органов
18. Галилей основание современной науки
19. таблица присутствия позитивная инстанция ~ сбор достаточного количества разнообразных случаев явления п
20. реферат дисертації на здобуття наукового ступеня кандидата соціологічних наук Київ