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
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Основи програмування та алгоритмічні мови

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

Міністерство освіти і науки України Національний технічний університет України “Київський політехнічний інститут” Кафедра ОТ ЗВІТ про виконання лабораторної роботи № 9.2 з дисципліни “Основи програмування та алгоритмічні мови” Тема: ТЕКСТОВІ ФАЙЛИ Варіант 28 Постановка задачі Створити текстовий файл, вводячи рядки з клавіатури. Сформувати новий файл, що складається зі слів вхідного файлу, які зустрічаються у ньому більше N раз. Розмістити ці слова в новому файлі в порядку зростання їхньої довжини. Вивести вміст вхідного і створеного файлів. Аналітичні викладки Створити текстовий файл, зчитати слова з нього в масив, відсортувати масив за довжиною і алфавітом, записати слова, що повторюються більше N раз у новий файл. Блок-схема алгоритму розв’язання задачі   Текст програми program lab_9_2; uses crt; const max = 100; type str = string[15]; mas = array[1..max] of str; var m,r:mas; {Масиви даних} _N, {параметр N} n,v:word; {лічильники слів} a,b:string; k:char; {Створення} procedure create(const a:string); var st:string; s1, s2:char; f : text; begin Assign (f, a); Rewrite (f); Writeln ('input text (right arrow to end): '); REPEAT s1 := readkey; s2 := readkey; if (s1 = #0) and (s2 = #77) then break; write (s1, s2); ReadLn (st); st := s1 + s2 + st; Writeln (f, st); UNTIL False; Close (f); end; procedure blank(var s:string); begin while (s[1] = ' ') do Delete (s, 1, 1); while Pos (' ', s) <> 0 do Delete (s, Pos (' ', s), 1); if s[Length (s)] <> ' ' then s := s + ' '; end; {Формування масиву} procedure form(var m:mas; st:string; var n:word); begin while Pos (' ', st) <> 0 do begin n := n + 1; m[n] := Copy (st, 1, Pos (' ', st) - 1); Delete (st, 1, Pos (' ', st)); end; end; {Зчитування файлу} procedure readf(const a:string; var m:mas; var n:word); var f:text; st:string; begin Assign (f, a); reset (f); n := 1; while not Eof(f) do begin readln(f,st); blank(st); form(m, st, n); end; close (f); end; {Запис файлу} procedure writef(const a:string; const m:mas; n:word); var i:word; f:text; begin Assign (f, a); rewrite (f); for i := 1 to n do writeln (f, m[i], ' '); close(f); end; {Виведення файлу} procedure outf(const a:string); var st:string; f:text; begin Assign(f, a); reset(f); writeln ('This is ',a); while not Eof(f) do begin readln(f, st); writeln(st); end; close(f); end; procedure swap (var a,b:str); var k:string; begin k:=a; a:=b; b:=k; end; {Сортування масиву} procedure sort (var m:mas; i:word); var k,j,l:word; begin For k:=1 to i-1 do for j := 1 to i-k do if (length(m[j]) > length(m[j+1])) or ((length(m[j]) = length(m[j+1])) and (m[j] > m[j+1])) then swap(m[j],m[j+1]); end; {Створення масиву слів, що задовольняють умові} procedure filter (const m:mas; n:word; var r:mas; var v:word); var i, k:word; begin i := 1; k := 1; v := 1; for i := 1 to n do if m[i+1] = m[i] then k := k + 1 else if k >= _N then begin r[v] := m[i]; v := v + 1; k := 1; end; v := v - 1; end; begin TextColor(0); TextBackGround(7); clrscr; a := '9_2in.txt'; b := '9_2out.txt'; create(a); outf(a); Write ('Vvedite N: '); Readln(_N); readf(a, m, n); sort(m, n); filter(m,n,r,v); writef(b, r, v); outf(b); readkey; end. Результати виконання програми / Висновок Під час виконання лабораторної роботи я вивчив особливості створення і обробки текстових файлів. Програма працює правильно: записує в файл ті слова, що зустрічаються в даному файлі більше N раз.
Антиботан аватар за замовчуванням

01.03.2013 19:08

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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