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

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

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

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

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

Рік:
2013
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Алгоритмічні мови та програмування
Група:
ІБ-13

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” ІКТА кафедра „ЗАХИСТ ІНФОРМАЦІЇ” ЗВІТ до лабораторної роботи №4 З КУРСУ “АЛГОРИТМІЧНІ МОВИ І ПРОГРАМУВАННЯ” на тему: „РОБОТА З ТЕКСТОВИМИ ФАЙЛАМИ. СИМВОЛЬНІ ТА РЯДКОВІ ЗМІННІ” Варіант № 12 2. ПОВНИЙ ТЕКСТ ЗАВДАННЯ Дано текстовий файл, в якому міститься програма мовою Турбо-Паскаль. Скласти блок-схеми алгоритмів та програму мовою Турбо-Паскаль для виведення на екран текстового файлу (Лабораторна робота №3) в якому не зустрічаються слова “for”, “then”, “іf”, “else”. Підрахувати кількість рядків, в яких кількість приголосних літер парна. Для обробки текстового файлу використовувати розроблені процедури та функції для роботи зі стрічками. Оформити виконання одного із завдань у вигляді підпрограми. 3. ОСТАТОЧНА ВЕРСІЯ БЛОК-СХЕМИ АЛГОРИТМУ Функція nPrugol(s)  Підпрограма DelWord(is, s) 4. СПИСОК ІДЕНТИФІКАТОРІВ КОНСТАНТ, ЗМІННИХ, ПРОЦЕДУР І ФУНКЦІЙ, ВИКОРИСТАНИХ У ПРОГРАМІ, ТА ЇХ ПОЯСНЕННЯ gol – константа перелічувального типу яка містить усі голосні літери; all – константа перелічувального типу яка містить усі літери; oper – константа перелічувального типу яка містить символи які можуть зустрічатися в тексті програми перед операторами “for”, “then”, “іf”, “else”; n – змінна типу integer для зберігання даних про поточну кількість рядків у яких кількість приголосних букв є непарним; j, i, count – змінні типу integer для зберігання проміжних значень у процедурах та функціях; str – змінна типу string для зберігання проміжних текстових даних; f – змінна типу text за допомогою якої здійснюється читання текстового файлу з диску; DelWord(s1, s2) – користувацька процедура яка видаляє слово що міститься в стрічковій змінні s1 з стрічкової змінної s2; nPrugol(s) – користувацька функція яка повертає кількість приголосних букв в рядку s; clrscr – процедура очистки екрана яка об’явлена в модулі crt; readkey – процедура яка очікує натискання будь-якої клавіші; writeln – процедура виведення текстових повідомлень і значень змінних на екран чи у файл; readln – процедура яка зчитує дані з клавіатури чи файлу та присвоює відповідне значення змінній; Delete(s, i, j) – процедура яка видаляє з рядка s певну кількість символів j починаючи з i-того символу; Inc(i) – процедура інкременту, яка збільшує числову змінну i на 1; Assign – процедура яка зв’язує ідентифікатор текстової змінної з файлом на диску; reset – процедура яка відкриває файл для читання; close – процедура яка закриває файл; Pos(s1, s2) – функція яка повертає позицію першого символу входження рядка s1 в рядок s2 Length(s) – функція яка повертає довжину рядка s; Eof(f) – функція яка повертає true якщо досягнуто кінець файлу f; mod – операція для знаходження остачі від ділення. 5. ОСТАТОЧНА ВЕРСІЯ ПРОГРАМИ program lab4; uses crt; var f:text; str:string; n:integer; {===================================} procedure DelWord(is:string; var s:string); const oper=[' ',';','(',')','{','}']; var i,j:integer; begin i:=Pos(is,s); j:=Length(is); if (i<>0) and ((i=1) or (s[i-1] in oper)) and ((i+j-1=Length(s)) or (s[i+j] in oper)) then Delete(s,i,j); end; {===================================} function nPrugol(s:string):integer; const gol=['a','e','i','y','o']; all=['a'..'z']; var i,count:integer; begin count:=0; for i:=1 to Length(s) do if (s[i] in all) and not (s[i] in gol) then inc(count); nPrugol:=count; end; {===================================} begin assign(f,'lab3.pas'); reset(f); clrscr; n:=0; while not eof(f) do begin read(f,str); DelWord('for',str); DelWord('then',str); DelWord('if',str); DelWord('else',str); writeln(str); readln(f); if (nPrugol(str) mod 2=1) then inc(n); end; writeln; writeln('Kilkist radkiv z neparnoy kilkisty prugolosnuh:',n:3); close(f); readkey; end. 6. РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ program SortMas; uses crt; const n=5; type mas=array [1..n,1..n] of integer; var a:mas; r,s:byte; sum,sg:real; {=============================================} function sGeom(a:mas;i:byte):real; var j:byte; dob,sg:real; begin dob:=1; j:=i+1 to n do dob:=dob*a[i,j]; sg:=exp(1/(n-i)*ln(abs(dob))); (dob<0) and ((n-i) mod 2=1) sg:=-sg; sGeom:=sg; end; {=============================================} procedure PrintMas; var i,j:byte; begin i:=1 to n do begin j:=1 to n do write(a[i,j]:4); writeln; end; end; {=============================================} procedure Sort; var x:integer; k,i,j:byte; begin k:=1 to n do i:=2 to n do j:=n downto i do a[j,k]>a[j-1,k] begin x:=a[j-1,k]; a[j-1,k]:=a[j,k]; a[j,k]:=x; end; end; {=============================================} begin clrscr; writeln('Vvedit matrix A (rozmir ',n,'x',n,'):'); r:=1 to n do s:=1 to n do begin write('a[',r,',',s,']:= '); readln(a[r,s]); end; writeln; Writeln('Vvedeno matrix A:'); PrintMas; Sort; writeln('Rezultatu robotu programu, Matrix A:'); writeln; PrintMas; sum:=0; r:=1 to n-1 do begin sg:=sGeom(a,r); writeln('Seredne geom radka ',r,':',sg:3:2); sum:=sum+sg; end; writeln; writeln('Suma = ',Sum:3:2); readkey; end. Kilkist radkiv z neparnoy kilkisty prugolosnuh: 29
Антиботан аватар за замовчуванням

30.04.2013 23:43

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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