КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Процедуры и функции общие для всех типов файлов. Вычисления значений формул
Файлы Быстрая сортировка Вычисления значений формул Вычисления чисел Фибоначчи Вычислить N! Function fact(n:byte):longint; Begin If n>0 then fact:=n*fact(n-1) Else fact:=1; End; Begin writeln(fact(3)); End;
Function fib(n:byte):longint; Begin If n=0 then fib=0; Else if n=1 then fib:=1 Else fib:=fib(n-1)+fib(n-2); End; Begin Writeln(fib(3)); End. <Формула>=<Цифра> |(<Формула> <Операция> <Формула>) <Цифра>=0..9 <Операция>= +,-,* Function f:longint; Var c,op:char; left,right:integer; Begin Read(c); If (c>=’0’) and (c<=’9’) Then f:=ord(c) – ord(‘0’) Else Begin Left:=f: read(op); righr:=f; Case op of ‘+’:f:=left+right’ ‘-‘:f:=left-right; ‘*’:f:left*right; End; Read(c); End; End; Begin Writeln(f); Readln; End;
Написать функцию для вычисления значения формулы преобразовав f(x) так, что бы она вычисляла результат деления и работала с многоразрядными числами Идея быстрой сортировки: 1) Выбрать элемент, который назовем опорным 2) Разделить массив на 2 части. Левую (в которой содержатся элементы не больше опорного) и Правую(В которой содержатся элементы не меньшими опорного) 3) Повторить действия для левой и правой части
Const n =____; Type TVector=array[1..n] of integer; Procedure quicksort(var x:tvector; l,r:word); Vat y,buf:integer; I,j:integer; Begin Y:=x[(l+r) div 2]; I:=l; j:=r; while i<=j do begin while x[i]<y do inc(i); while y[j]>y do dec(j); if i<=j then buf:=x[i]; x[i]:=x[j]; x[j]:=buf; inc(i); dec(j); end; end; if i<j then quickSort(I,J); else auicksort(I,r); end; begin input(x); quicksort(x,1,n); output; end.
Д.З. Посчитать время работы сортировки «qs» для 100к элементов, 200к, 400к. T:=gettickcount; T:=gettickcount-t; {замер времени исполнения функции}
1) Физические (поименованная область на диске) 2) Логические (переменная файлового типа) Три типа файлов: 1) Типизированные файлы File – of – базовый тип(любой кроме файловов) Type TSstudent=record …… End; Myfile=file of TStudent Var F1:file of byte; F2:file of integer; F3:file of array[1..100] of byte; F4:file of char;
F5:file of myfile; {Все компоненты нумеруются с нуля} 2) Текстовые файлы Text Var t:text 3) Нетипизированные файлы File Var t:file
Два типа доступа к файлам: 1) Последовательный (sequential access file) (в текстовых файлах используется только последловательный) 2) Прямой (random access file) (В бинарный и типизированных)
Размер файловой переменной Var t:file of Sizeof(?) - 128 Var t:text Sizeof(?) - 256 Var t:file Sizeof(f)-128
1) Procedure assignfile (var f; fn:string) (связывает файловую переменную f с физическим файлом на диске) Например: a) assignFile(f,’c:\temp\test.pas’) b) assignFile(f,’ test.pas’) c) readln(filename); assignFile(f,filename); d) “con” – консоль (путь файла) e) ‘prn’ – Принтер f) ‘lpt1(3)’ g) ‘aux’ – мультимедийные устройства h) ‘nul’ – i) assignFile(f,’ con’) 2) procedure reset(var f) (Открывает файлы для чтения а типизированные и бинарные еще и для записи. После открытия указатель устанавливается на начало файла) 3) procedure rewrite(var f) (Открывает файл для записи. Если файла не существует, то он создастся. Если файл существует – то содержимое файла уничтожается, а указатель устанавливается на начало файла) 4) procedure closefile (var f) (Закрывает открытый файл) 5) function EOF(var f):Boolean (Возвращает значение тру если достигнут признак конца файла) assignFile(f,’filename’); reset(f); writeln(eof(f)); assignFile(f,’filename’); reset(f); while not eof(f) do begin считали оброботали вся фигня лалала что за мачмала под звуки репа у моего окна end; closeile(f); 6) Function IOresult:word (После вызова значения «Сбрасывается» в 0. При ошибке после обращения к этой функции выключаются операции ввода вывода.)
Дата добавления: 2014-01-07; Просмотров: 216; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |