Материалы сайта
Это интересно
Контрольные по информатике
(Скачать оригинал реферата)Задание 1. (вариант Б) 1.Значение логического типа обозначаются встроенными идентификаторами констант TRUE (истина) и FALSE (ложь). При внутреннем представлении они занимают 1 байт памяти. Справедливо условие: True>FALSE. Логические выражения имеют значения типа boolean, т.е. TRUE или FALSE. Для операндов типа boolean определены следующие логические операции: NOT— логическое НЕ; AND— логическое И; OR— логическое ИЛИ; XOR— логическое исключающее ИЛИ. Для операндов простых типов данных и строк применимы операции отношения: =,<,<=,>,>=,<>,in. Примеры логических выражений: 1 3 2 if (i>0) and (j<0) or (i<0) and (j>0) then i:=2; В данном примере проверяется два условия либо одновременно i положительно и j отрицательно, либо наоборот— i отрицательно и j положительно, при истинности одного из этих условий переменной i присваивается значение 2. 1 2 If not a then b:=false; В данном примере если переменная a имеет значение false переменной b присваивается значение false. 1 2 3 If not a or b then a:=b; В данном примере переменной а присваивается значение, содержащееся в переменной b, при условии, что а имеет значение false или b true. 2. В языке Паскаль ввод-вывод информации осуществляется через файловые переменные. Перед тем, как осуществить ввод-вывод, файловая переменная должна быть связана с конкретным внешним файлом с помощью процедуры ASSIGN. Этим файлом может быть файл на магнитном диске, а также устройство вычислительного комплекса. Затем файл должен быть открыт для чтения и/или записи. После этого можно осуществлять организацию ввода-вывода. После работы с файлом он, как правило, должен быть закрыт с помощью процедуры CLOSE. Это требование обязательно должно соблюдаться для файла, в который производилась запись. Процедура ASSIGN (Var_file, Road): с помощью этой процедуры вы связываете файловую переменную Var_file с некоторым именем файла, которое хранится в переменной Road. Var Var_file: file of integer; Road: string[14]; ... Road:=’Data.dat’; Assign (Var_file, Road); Вы не можете связывать некоторую файловую переменную с файлом посредством этой процедуры в том случае, если данный файл уже открыт. Процедура Reset: данная процедура открывает существующий файл данных, имя которого перед этим было связано при помощи процедуры Assign с некоторой файловой переменной, указанной в процедуре Reset как параметр. Assign (var_file, ‘Data.dat’); Reset (Var_file); Данная процедура содержит необязательный параметр Size целого типа, который используется только с файлами без типа и задает размер пересылаемого элемента информации в байтах. По умолчанию этот параметр равен 128. Файл текстового типа может быть открыт либо для чтения процедурой Reset, либо для записи процедурой Rewrite или Append. Процедура Rewrite: создает новый файл и открывает его для записи или чтения. Если файл с таким именем уже существует, его содержимое стирается, а сам файл открывается заново. Rewrite (Var_file); открывает существующий файл, связанный с файловой переменной Var_file. Процедура Close: закрывает ранее открытый файл, связанный с указанной переменной в качестве параметра файловой переменной. Close (Var_file); При попытке закрыть файл, который не был до этого открыт или который уже закрыт, возникает ошибочная ситуация. Процедура Rename: позволяет переименовать существующий файл, связанный с указанной в качестве параметра файловой переменной. Данная процедура применяется только к закрытым файлам. Assign (Var_file, ‘Data.dat’); Rename (Var_file, ‘Text.dat’); Процедура Erase: стирает существующий файл с диска. При этом файловая переменная должна быть предварительно связана с реально существующим файлом. Assign (Var_file, ‘Data.dat’); Erase (Var_file); Функция EOF: используя данную логическую функцию, в процессе считывания информации Вы можете проверить, достигнут ли конец файла, т.е. находится ли указатель файла за последним элементом или нет. While not EOF (Var_file) do read (Var_file, m[i]); данный фрагмент программы иллюстрирует процесс чтения элементов массива из файла, связанного с переменной Var_file, до тех пор, пока не будет достигнут конец файла. Функция IOResult: предназначена для поиска ошибок, возникающих при работе с файлами. Эта функция возвращает результат последней операции ввода- вывода, если автоматический контроль за ошибками, возникающими в процессе операций ввода-вывода, отключен с помощью директивы компилятора {$I-}. При безошибочном выполнении операций ввода-вывода данная функция возвращает ноль, если же ошибка имела место, то данная функция возвращает код ошибки. {$I-} Reset (‘C:\data.dat’); if IOResult <>0 then writeln (‘ Ошибка при открытии файла’); {$I+} Тип файл представляет собой последовательность компонент одного типа, расположенных на внешнем устройстве. Компоненты могут быть любого типа, за исключением типа файл (или содержащего компоненты типа файл) и типа объекта. Число компонент в файле не объявляется. Для задания типа файл следует использовать зарезервированные слова file и of, после чего указать тип компонент файла. Type number = file of integer; symb = file of ‘A’..’Z’; Стандартный тип Text определяет тип файла, содержащий символы, объединенные в строки. Следует иметь ввиду, что тип Text в Турбо-Паскале не эквивалентен тину file of char. Введя файловый тип, можно определять переменные файлового типа: Var F1:number; F2:Text; В Турбо-Паскале можно использовать файл без типа, при определении которого не указывается тип компонент. В этом случае работа с файлом осуществляется на физическом уровне в соответствии с внутренним форматом его данных. При этом реальные компоненты файла могут иметь и различный тип. Тип файл можно определять и непосредственно при введении файловых переменных. Файловые переменные имеют специфическое применение. Над ними нельзя выполнять никаких операций (присваивание значений, сравнивание и т.д.). Кроме того, через файловую переменную можно получить информацию о конкретном файле (тип, параметры, имя и т.д.). Задание 2. (вариант 7) uses crt; var x,z:real; begin clrscr; write ('Введите x:'); readln (x); z:=sqrt(abs(x*cos(x))+sin(x/2)*sqr(sin(x/2))); clrscr; writeln ('x=',x:5:2,' z=',z:5:2); end. Задание 3а. (вариант 6) uses crt; var x:array[1..10] of integer; y:array[1..10] of boolean; z:real; i:integer; begin clrscr; for i:=1 to 10 do begin y[i]:=false; x[i]:=random(100); end; for i:=1 to 10 do if frac(x[i]/2)=0 then y[i]:=true; for i:=1 to 10 do write (x[i]:4,';'); writeln; for i:=1 to 10 do if y[i]=true then write (i:4); end. Задание 4. (вариант 7) uses crt; type traz=record city:string[50]; dat:string[8]; tor:string[5]; dr:integer; price:real; end; var f1:file of traz; f2:text; raz:traz; n:char; flag:boolean; function chek(s:string):boolean; var i:integer; begin chek:=true; for i:=1 to 5 do if not((s[i] in ['0'..'9']) or (s[i]=':')) then chek:=false; end; begin clrscr; assign (f1,'1.dat'); assign (f2,'1.txt'); rewrite (f1); append (f2); repeat clrscr; write ('Введите город:'); readln(raz.city); write (' Введите дату разговора:'); readln(raz.dat); write (' Введите время разговора'); repeat readln (raz.tor); flag:=chek(raz.tor); if flag=false then writeln ('Ошибка!!! Повторите ввод:'); until flag; write(' Введите длительность разговора:'); readln (raz.dr); write ('Введите стоимость:'); readln (raz.price); write ('Продолжить? «*»- закончить ввод!'); readln (n); write (f1,raz); until n='*'; reset (f1); while not eof(f1) do begin read (f1,raz); if raz.city='Санкт-Петербург' then write (f2,raz.dat:9,raz.tor:6,raz.dr:5,raz.price:6:2); end; close (f1); close (f2); end. Список литературы А.М. Епанешников. Программирование в среде Turbo Pascal 7.0. М., 1997. Турбо паскаль 7.0. Киев, 1996. В.В. Качала. Основы программирования на языке Турбо-паскаль. Мурманск, 1994.
Файлы данного реферата: 1 2 3 4 5 6 7 8 9 10 11