РОБОТА З ТЕКСТОВИМИ ФАЙЛАМИ. СИМВОЛЬНІ ТА РЯДКОВІ ЗМІННІ

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

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

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

Рік:
2006
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Інші

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”  Звіт про виконання лабораторної роботи №4 РОБОТА З ТЕКСТОВИМИ ФАЙЛАМИ. СИМВОЛЬНІ ТА РЯДКОВІ ЗМІННІ Мета роботи - вивчити види файлів, стандартні процедури і функції мови Турбо-Паскаль для роботи з файлами, навчитися складати та відлагоджувати програми для роботи з тестовими файлами. Навчитись використовувати символьні і рядкові змінні для роботи з текстовими файлами. ЗАВДАННЯ Домашня підготовка до роботи 1. Ознайомитися з основними типами файлів і їх описом. 2. Вивчити основні процедури і функції для роботи з текстовими файлами. 3. Ознайомитись зі символьними і рядковими змінними. 4. Вивчити основні процедури та функції для роботи із символьними і рядковими змінними. 5. Дано текстовий файл, в якому міститься програма мовою Турбо Паскаль (Лабораторна робота №3). Скласти блок-схеми алгоритмів та програми мовою Турбо-Паскаль для обробки текстового файлу з використанням розроблених процедур та функцій для роботи зі стрічками. Оформити виконання одного із завдань у вигляді підпрограми. Словами є слова в коментарях, назви ідентифікаторів, зарезервовані слова, які розділяються між собою згідно із синтаксисом мови Турбо Паскаль. Дані для роботи беруться з табл.1 за вказівкою викладача. Таблиця 1 № п/п Завдання  17 Сформувати і вивести на екран текстовий файл в якому символи “+” замінюються словом “SUMA”, символи “-” замінюються символом “MULT”, символи “/” – замінюються символом “DIV”. Підрахувати і вивести на екран кількість символів “:=” у кожному рядку.   Робота в лабораторії 1. Ввести в комп'ютер програми, написані мовою Турбо-Паскаль згідно з отриманим завданням. 2. Відлагодити програми. При необхідності скоригувати блок-схеми алгоритмів та програми у відповідності з виявленими логічними та синтаксичними помилками. 3. Остаточні версії блок-схем, програм та отримані результати занести у звіт з лабораторної роботи. 4. Здати звіт з лабораторної роботи. СПИСОК ІДЕНТИФІКАТОРІВ ЗМІННИХ, ПРОЦЕДУР І ФУНКЦІЙ: str, s – рядкова змінна; p1, p2, p3 – змінні позицій символів “+, - , / ” у рядках; i, k – проміжні змінні; f – даний текстовий файл; temp – перероблений текстовий файл; druk – процедура виведення на екран файлу; kilzn – функція, що обчислює кількість знаків присвоєння; БЛОК-СХЕМА ПРОГРАМА program lab4; uses crt; var f,temp:text; str:string; i,p1,p2,p3:integer; procedure druk(var f:text); var str:string; begin repeat readln(f,str); writeln(str); until eof(f); close(f); reset(f); end; function kilzn(s:string):integer; var i,k:integer; begin k:=0; for i:=1 to length(s) do if (s[i]=':')and(s[i+1]='=') then k:=k+1; kilzn:=k; end; BEGIN clrscr; assign(f, assign(temp,'change.pas'); reset(f); rewrite(temp); while not eof(f) do begin readln(f,str); repeat p1:=pos('+',str); if p1<>0 then begin delete(str,p1,1); insert(' SUMA ',str,p1); end; p2:=pos('-',str); if p2<>0 then begin delete(str,p2,1); insert(' MULT ',str,p2); end; p3:=pos('/',str); if p3<>0 then begin delete(str,p3,1); insert(' DIV ',str,p3); end; until (p1=0) and (p2=0) and (p3=0); writeln(temp,str); end; close(f); close(temp); reset(temp); writeln('PEREROBLENYJ FAJL:'); druk(temp); writeln('KILKIST ZNAKIV PRYSVOJENNA:'); i:=1; while not eof(temp) do begin readln(temp,str); writeln('v riadku ',i:3,' znakiv := - ',kilzn(str):3,' '); i:=i+1; end; END. РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ: PEREROBLENYJ FAJL: PROGRAM LAB3; USES CRT; CONST N=5; TYPE MATRIX=ARRAY[1..N,1..N] OF INTEGER; VAR A:MATRIX; I,J:INTEGER; PROCEDURE SORT_ARRAY; VAR X,Z:INTEGER; BEGIN FOR Z:=1 TO N MULT 1 DO BEGIN FOR J:=1 TO N DO FOR I:=N DOWNTO 2 DO BEGIN IF A[I,J]<A[I MULT 1,J] THEN BEGIN X:=A[I MULT 1,J]; A[I MULT 1,J]:=A[I,J]; A[I,J]:=X; END END END END; FUNCTION SER_HEOM(I:INTEGER):REAL; VAR B:REAL; BEGIN B:=1; FOR J:=1 TO N DO B:=B*A[I,J]; IF B>0 THEN B:=EXP(1 DIV N*LN(B)); IF B<0 THEN B:= MULT EXP(1 DIV N*LN( MULT B)); SER_HEOM:=B END; FUNCTION SER_AR:REAL; VAR S:REAL; BEGIN S:=0; FOR I:=1 TO N DO S:=S SUMA SER_HEOM(I); SER_AR:=S DIV N END; BEGIN CLRSCR; WRITELN('VVEDIT6 ELEMENTY MATRYTSI:'); FOR I:=1 TO N DO FOR J:=1 TO N DO BEGIN WRITE('A[',I,J,']='); READ(A[I,J]); IF J=N THEN WRITELN; END; SORT_ARRAY; WRITELN('VIDSORTOVANA MATRYTSYA:'); FOR I:=1 TO N DO FOR J:=1 TO N DO BEGIN WRITE(A[I,J]:4); IF J=N THEN WRITELN; END; FOR I:=1 TO N DO WRITELN('SEREDNYE HEOMETRYCHNE=',SER_HEOM(I):3:3); WRITELN; WRITE('SEREDNYE ARYFMETYCHNE=',SER_AR:3:3); END. KILKIST ZNAKIV PRYSVOJENNA: v ryadku 1 kilkistb znakiv := - 0 v ryadku 2 kilkistb znakiv := - 0 v ryadku 3 kilkistb znakiv := - 0 v ryadku 4 kilkistb znakiv := - 0 v ryadku 5 kilkistb znakiv := - 0 v ryadku 6 kilkistb znakiv := - 0 v ryadku 7 kilkistb znakiv := - 0 v ryadku 8 kilkistb znakiv := - 0 v ryadku 9 kilkistb znakiv := - 0 v ryadku 10 kilkistb znakiv := - 1 v ryadku 11 kilkistb znakiv := - 0 v ryadku 12 kilkistb znakiv := - 1 v ryadku 13 kilkistb znakiv := - 1 v ryadku 14 kilkistb znakiv := - 0 v ryadku 15 kilkistb znakiv := - 0 v ryadku 16 kilkistb znakiv := - 0 v ryadku 17 kilkistb znakiv := - 1 v ryadku 18 kilkistb znakiv := - 1 v ryadku 19 kilkistb znakiv := - 1 v ryadku 20 kilkistb znakiv := - 0 v ryadku 21 kilkistb znakiv := - 0 v ryadku 22 kilkistb znakiv := - 0 v ryadku 23 kilkistb znakiv := - 0 v ryadku 24 kilkistb znakiv := - 1 v ryadku 25 kilkistb znakiv := - 1 v ryadku 26 kilkistb znakiv := - 1 v ryadku 27 kilkistb znakiv := - 1 v ryadku 28 kilkistb znakiv := - 1 v ryadku 29 kilkistb znakiv := - 1 v ryadku 30 kilkistb znakiv := - 0 v ryadku 31 kilkistb znakiv := - 0 v ryadku 32 kilkistb znakiv := - 0 v ryadku 33 kilkistb znakiv := - 0 v ryadku 34 kilkistb znakiv := - 1 v ryadku 35 kilkistb znakiv := - 1 v ryadku 36 kilkistb znakiv := - 1 v ryadku 37 kilkistb znakiv := - 1 v ryadku 38 kilkistb znakiv := - 0 v ryadku 39 kilkistb znakiv := - 0 v ryadku 40 kilkistb znakiv := - 0 v ryadku 41 kilkistb znakiv := - 0 v ryadku 42 kilkistb znakiv := - 1 v ryadku 43 kilkistb znakiv := - 1 v ryadku 44 kilkistb znakiv := - 0 v ryadku 45 kilkistb znakiv := - 0 v ryadku 46 kilkistb znakiv := - 0 v ryadku 47 kilkistb znakiv := - 0 v ryadku 48 kilkistb znakiv := - 0 v ryadku 49 kilkistb znakiv := - 0 v ryadku 50 kilkistb znakiv := - 0 v ryadku 51 kilkistb znakiv := - 1 v ryadku 52 kilkistb znakiv := - 1 v ryadku 53 kilkistb znakiv := - 0 v ryadku 54 kilkistb znakiv := - 0 v ryadku 55 kilkistb znakiv := - 0 v ryadku 56 kilkistb znakiv := - 0 v ryadku 57 kilkistb znakiv := - 1 v ryadku 58 kilkistb znakiv := - 0 v ryadku 59 kilkistb znakiv := - 0 v ryadku 60 kilkistb znakiv := - 0 v ryadku 61 kilkistb znakiv := - 0 Висновок:на цій лабораторній роботі я вивчив види файлів, стандартні процедури і функції мови Турбо-Паскаль для роботи з файлами, навчився складати та відлагоджувати програми для роботи з тестовими файлами і використовувати символьні і рядкові змінні для роботи з текстовими файлами.
Антиботан аватар за замовчуванням

04.02.2012 18:02-

Коментарі

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

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

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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