Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lab3_var6_z1

.pas
Скачиваний:
6
Добавлен:
09.05.2015
Размер:
2.01 Кб
Скачать
{Описать логическую функцию check(s) для текстового файла
s, проверяющую, содержит ли файл s латинские буквы.
Указание: введите файл s (последний элемент в файле '.') и
вычислите значение функции check(s)}

program Lab3_var6_z1;

var
S: Text; // Текстовый файл
c:char; //символ, служащий для посимвольной записи и чтения из файла

function check(S: Text): boolean; //функция логического типа для проверки текстового файла
//на наличие символов латинского алфавита

var
Latin: set of char; // множество букв латинского алфавита
Str: string; // Строка для записи и чтения файла
ok: boolean; //Логическая переменная для проверки принадлежности символов
i: integer; // счетчик

begin
ok := false;
Latin := ['a'..'z', 'A'..'Z']; //устанавливаем множество букв латинского алфавита
reset(S); // открываем файл для чтения

while not eof(S) do
begin
read(S, c); //считываем символ из файла
Str:=Str+c; //добавляем его в строку
end;

Writeln('Строка считана: ');
Writeln(Str); //контролируем правильность данных

Close(S); //закрываем файл

i := 0;

repeat
inc(i);
if Str[i] in Latin then ok := true; // проверка принадлежности каждого символа строки
// множеству символов латинского алфавита

until (ok or (i = length(Str))); // выход из цикла если обнаружена буква латинского алфавита или достигнут конец строки

check := ok; //присваиваем значение функции

end;

begin

assign(S, 'lab3_var6_z1.txt'); // связываем файл с именем "S"
rewrite(S); //Открываем для записи

//вводим строку
writeln('Введите строку ("." – конец ввода): ');

repeat
read(c);
write(S,c);
until (c='.');


close(S); //Закрываем файл

Writeln('Файл содержит ланинские символы: ',check(S)); //выводим сообщение вместе с результатом выполнения функции

end.
Соседние файлы в предмете Основы алгоритмизации и программирования