DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Комп’ютеризовані системи
Кафедра:
Не вказано

Інформація про роботу

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Алгоритмічні мови та програмування

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ Національний університет «Львівська політехніка»   РОБОТА З ФАЙЛАМИ. ЛАБОРАТОРНА РОБОТА № 4 З КУРСУ «АЛГОРИТМІЧНІ МОВИ І ПРОГРАМУВАННЯ» для студентів спеціальності 6.0914 «Комп’ютеризовані системи, автоматика і управління» Львів 2008 ПОВНИЙ ТЕКСТ ЗАВДАННЯ Дано текстовий файл в якому міститься програма мовою Турбо Паскаль (Лабораторна робота №3). Словами є слова в коментарях, назви ідентифікаторів, зарезервовані слова, які розділяються між собою згідно із синтаксисом мови Турбо Паскаль. Написати програму мовою Турбо Паскаль обробки текстового файлу з використанням розроблених процедур та функцій для роботи зі стрічками. Сформувати із заданого текстовий файл в якому вилучити символи “(”, “)”. Написати підпрограму, яка здійснює аналіз програми мовою Паскаль, представленої у вигляді заданого текстового файлу на наявність помилок по написанню процедур введення “READ”, “READLN”. Перевірити заданий та одержаний текстові файли на наявність помилок в процедурах введення. БЛОК-СХЕМА АЛГОРИТМУ ПРОГРАМИ ПРОЦЕДУРА ПОШУКУ ПОМИЛКИ ERROR_SEARCH : СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ПРОЦЕДУР ТА ФУНКЦІЙ, ВИКОРИСТАНИХ У ПРОГРАМІ, ТА ЇХ ПОЯСНЕННЯ СПИСОК : CH CHECK SYMBOL X Y I V K C M N ERROR_SEARCH ПОЯСНЕННЯ ІДЕНТИФІКАТОРІВ : CH – змінна для зберігання символів файлу під час читання CHECK – змінна для накопичення символів під час читання у змінній SYMBOL SYMBOL – накопичувач символів для порівняння X – ідентифікатор текстового файлу Lab_3 – з якого читаються дані Y – ідентифікатор текстового файлу Lab_3(Copied) – куди записуються дані I – лічильник для накопичення у SYMBOL V – логічна змінна для перевірки вірності умови K – логічна змінна для перевірки вірності умови C – логічна змінна для перевірки вірності умови M – логічна змінна для перевірки вірності умови N – логічна змінна для перевірки вірності умови ERROR_SEARCH – процедура сортування матриці A Змінні V,K,C,M,N – ВИКОРИСТОВУЮТЬСЯ У ДВОХ ПІДПРОГРАМАХ ДЛЯ ДІАГНОСТИКИ ПОМИЛКИ : ПЕРЕВІРКА НАЯВНОСТІ ДУЖОК СИНТАКСИС ПРОЦЕДУРИ ЯК ЗАРЕЗЕРВОВАНОГО СЛОВА НАЯВНІСТЬ ; ПОСЛІДОВНОСТІ У ДУЖКАХ ТИПУ : ІДЕНТИФІКАТОР , … ОСТАТОЧНО ВІДЛАГОДЖЕНИЙ ТЕКСТ ПРОГРАМИ program Lab_4; uses crt; var ch:char; check,symbol:string; x,y:text; i:integer; v,k,c,m,n:boolean; procedure Error_Search; begin writeln('Program file check :'); assign(y,'d:\lab_3(copied).txt'); writeln; writeln('External Read procedure Analyse'); reset(y); while not(eof(y)) do begin read(y,ch); check:=ch; symbol:=''; if(ch='r') then for i:=1 to 4 do begin symbol:=(Symbol+check);read(y,ch);check:=ch;end; if symbol='read' then begin k:=true;if ch='(' then m:=true; repeat if ch='(' then c:=true;if ch=')' then begin v:=true;read(y,ch); if ch=';' then n:=true;end; read(y,ch); until eoln(y); end; end; if (c=true)and(m=true) then writeln('Left ( present') else if k=true then writeln('Error.No symbol ('); if v=true then writeln('Right ) present') else if k=true then writeln('Error.No symbol )'); if k=false then writeln('Syntax read as word false.Analyse aborted') else writeln('Syntax read as word true'); if v=true then if n=true then writeln('Symbol ; present in order for read procedure') else writeln('No symbol ;.Error.Syntax read procedure false') else if k=true then writeln('Error.Can not finish symbol ; check - there is no )'); reset(y); Writeln; writeln; writeln('Internal Procedure read analyse'); while not(eof(y)) do begin read(y,ch); check:=ch; symbol:=''; if(ch='r') then for i:=1 to 4 do begin symbol:=(Symbol+check);read(y,ch);check:=ch;end; if symbol='read' then if ch='(' then begin read(y,ch); while not(ch=')') do begin if (ch in['a'..'z']) then m:=true else c:=false;read(y,ch); if (m=true)and((ch=',')or(ch='[')or(ch=']')) then n:=true else v:=false;read(y,ch); end end else begin writeln('Error.Internal read procedure check failed - no (');k:=false;end; end; if Not(k=false) then if (m=true)and(c=false) then writeln('Error.No idenefier after symbol ( or after ,,[,]') else if (n=true)and not(v=false) then writeln('Internal Syntax check ok') else writeln('Error.No symbol ,,[,] after idenefier'); close(y); assign(x,'d:\lab_3.pas'); writeln; writeln('Lab_3 file check :'); writeln; writeln('External Read procedure Analyse'); reset(x); while not(eof(x)) do begin read(x,ch); check:=ch; symbol:=''; if(ch='r') then for i:=1 to 4 do begin symbol:=(Symbol+check);read(x,ch);check:=ch;end; if symbol='read' then begin k:=true;if ch='(' then m:=true; repeat if ch='(' then c:=true;if ch=')' then begin v:=true;read(x,ch); if ch=';' then n:=true;end; read(x,ch); until eoln(x); end; end; if (c=true)and(m=true) then writeln('Left ( present') else if k=true then writeln('Error.No symbol ('); if v=true then writeln('Right ) present') else if k=true then writeln('Error.No symbol )'); if k=false then writeln('Syntax read as word false.Analyse aborted') else writeln('Syntax read as word true'); if v=true then if n=true then writeln('Symbol ; present in order for read procedure') else writeln('No symbol ;.Error.Syntax read procedure false') else if k=true then writeln('Error.Can not finish symbol ; check - there is no )'); reset(x); Writeln; writeln; writeln('Internal Procedure read analyse'); while not(eof(x)) do begin read(x,ch); check:=ch; symbol:=''; if(ch='r') then for i:=1 to 4 do begin symbol:=(Symbol+check);read(x,ch);check:=ch;end; if symbol='read' then if ch='(' then begin read(x,ch); while not(ch=')') do begin if (ch in['a'..'z']) then m:=true else c:=false;read(x,ch); if (m=true)and((ch=',')or(ch='[')or(ch=']')) then n:=true else v:=false;read(x,ch); end end else begin writeln('Error.Internal read procedure check failed - no (');k:=false;end; end; if Not(k=false) then if (m=true)and(c=false) then writeln('Error.No idenefier after symbol ( or after ,,[,]') else if (n=true)and not(v=false) then writeln('Internal Syntax check ok') else writeln('Error.No symbol ,,[,] after idenefier'); close(x); writeln; writeln('No procedure Readln available.Check impossible'); end; begin clrscr; assign(x,'d:\lab_3.pas'); assign(y,'D:\Lab_3(copied).txt'); reset (x); rewrite(y); while not(eof(x)) do begin read(x,ch); if (ch=')') or (ch='(') then while (ch=')') or (ch='(') do read(x,ch); write(y,ch); end; close(x); close(y); Error_Search; readln; end. РЕЗУЛЬТАТИ ВИКОНАННЯ ПРОГРАМИ Program file check : External Read procedure Analyse Error.No symbol ( Error.No symbol ) Syntax read as word true Error.Can not finish symbol ; check - there is no ) Internal Procedure read analyse Error.Internal read procedure check failed - no ( Lab_3 file check : External Read procedure Analyse Left ( present Right ) present Syntax read as word true Symbol ; present in order for read procedure Internal Procedure read analyse Internal Syntax check ok No procedure Readln available.Check impossible
Антиботан аватар за замовчуванням

18.05.2012 12:16

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!