Алгоритмічні мови обробка масивів

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Контрольна робота

з дисципліни "Основи програмування"

на тему

Алгоритмічні мови: обробка масивів

Завдання 1. Символьні типи даних. Робота з рядками

Короткі теоретичні відомості.

Символьний тип (char) являє собою тип даних, призначених для зберігання одного символу (літери, знака чи коду).

Функції над символьними змінними:

chr (x) - визначення символу з набору символів за порядковим номером;

ord (x) - визначення порядкового номера символу в наборі символів;

upcase (x) - перетворення малих літер у прописні;

pred (x) - визначення попереднього елемента;

succ (x) - визначення подальшого елемента.

Тип даних string (рядок) спеціально призначений для обробки рядків (ланцюжків символів). Змінна типу string складається з елементів типу char. Змінні типу string можуть бути оголошені наступним чином:

var Імя_переменной1: string;

Імя_переменной2: string [n];

Змінна типу string оголошується, як правило, шляхом зазначення імені змінної, зарезервованого слова string і вказівки (у квадратних дужках) максимального розміру (довжини) рядки, яка може зберігатися в цій змінній. Якщо максимальний розмір рядка не вказаний, то він автоматично приймається рівним 255 - максимально можлива довжина рядка.

Стандартні процедури та функції для рядків:

  • функція Length - визначення фактичної довжини текстового рядка, що зберігається в зазначеній змінної;

  • функція UpCase - перетворення символу будь літери з рядкового в прописної;

  • функція Copy - копіювання фрагмента деякою рядки з однієї змінної в іншу;

  • функція Pos - здійснення в деякій рядку пошуку певного фрагменту;

  • функція Concut - з'єднання рядків;

процедури Insert і Delete - вставка фрагмента з одного рядка в іншу, видалення фрагмента з рядка [1-8].

Постановка завдання.

Дана послідовність слів; між сусідніми словами - кома, за останнім словом - крапка. Надрукувати цю ж послідовність слів, але видаливши з неї повторні входження слів. Скласти блок схему алгоритму і програму.

Лістинг програми

uses crt;

var str: array [1 .. 10] of string; - масив для слів

Slovo, st: string; - рядок пропозиції

i, j, n, k: integer; - допоміжні змінні

begin

ClrScr;

Writeln ('Programma ydalyaet povtornoe vhojdenie slov');

Writeln;

Writeln ('Vvedite posledovatelnost slov v formate: <>,<>,<>.'); - формат введення слів у програмі

Write ('Vashi slova:');

Readln (Slovo);

if Length (Slovo) <1 then - перевірка на введення слів

begin

Writeln ('Nujno vvesti slovo!');

Halt;

end;

j: = 0; i: = 1; k: = 1; n: = 1; - н.у. для змінних

while i <= Length (Slovo) do - цикл в якій слова з пропозиції заносяться в масив begin рядків

n: = i;

while (Slovo [i ]<>',') and (Slovo [i ]<>'.') do begin inc (i); inc (j); end;

str [k]: = Copy (Slovo, n, j); - занесення в масив слова

j: = 0;

inc (k);

inc (i);

end;

str [k ]:='.';

for i: = 1 to k-1 do - цикл в якому відбувається порівняння і видалення

for j: = (i +1) to k-1 do begin однакових слів у реченні

if str [i] = str [j] then begin

str [j ]:='';

end;

end;

st :='';

for j: = 1 to k-1 do begin - формування пропозиції з неповторюваних слів

if (str [j ]<>'') then st: = st + str [j ]+',';

end;

delete (st, Length (st), 1);

st: = st +'.';

writeln;

writeln ('Posledovatelnost');

write ('bez povtoreniy:', st); - висновок результату

readln;

end.

Блок-схема алгоритму програми.




















Рис.1 Блок-сема програми завдання 1.

Результати роботи програми.

Завдання 2. Організація програм з використанням процедур і функцій

Короткі теоретичні відомості.

У випадку, коли одна і та ж послідовність дій повинна виконуватися на різних етапах обробки інформації, можна використовувати процедури і функції. У загальному вигляді заголовок процедури має вигляд:

procedure Імя_процедури (Список параметрів);

Список параметрів - перелік імен для позначення вихідних даних і результатів роботи процедури із зазначенням їхніх типів. Параметри, перераховані в списку, називаються формальними. Константа, змінні, типи, описані в блоці program, називаються глобальними. Допускається опис процедури, що не містить параметри. Виклик процедури має вигляд:

Імя_процедури (Список параметрів);

Параметри, що містяться в Списку параметрів при виклику процедури, називаються фактичними.

Функції - це процедури особливого характеру, результатом роботи яких є деяке значення, подібне змінної. Результат роботи функції присвоюється імені функції. Загальна структура функції збігається зі структурою процедури, за винятком заголовка. Заголовок функції має наступний вигляд:

Function Імя_функціі (Список параметрів): Тіп_результата;

Процедури і функції заносяться у головній програмі після розділу var і перед bеgіn основного блоку програми [1-8].

Постановка завдання.

За речовинним числа а> 0 обчислити величину

Скласти блок схему алгоритму і програму.

Лістинг програми.

uses crt;

var t: real; - допоміжні змінні

st1, st2, st3: real; - допоміжні змінні

a, a2, a3: real; - проміжні змінні

t1, t2, t3: real; - допоміжні змінні

Function pow1 (x, v: real): real; - функція для піднесення числа x у ступінь v

Begin

if (v = 0.0) then - перевірка умови v> 0

pow1: = 1

else

if (x = 0.0) then - - перевірка умови x <> 0

pow1: = 0

else

if (x> 0.0) then

pow1: = exp (v * ln (x)) - обчислення числа в заданій ступеня

else

if (odd (trunc (v))) then

pow1: =-exp (int (v) * ln (-x))

else

pow1: = exp (int (v) * ln (-x));

End;

BEGIN

clrscr;

st1: = 1 / 3;

st2: = 1 / 6;

st3: = 1 / 7;

writeln ('Format vvoda chisla: *.*');

write ('Vvedite vewestvennoe chislo "a ":');

readln (a);

a2: = a * a +1; - проміжні обчислення

a3: = 3 + a; - проміжні обчислення

t1: = pow1 (a, st1);

t2: = pow1 (a2, st2);

t3: = (1 + pow1 (a3, st3));

t: = (t1-t2) / t3; - обчислення заданої формули

writeln;

write ('Otvet: t =', t); - висновок результату

readln;

END.

Блок-схема алгоритму програми.















Рис.2 Блок-сема програми завдання 2.

Результати роботи програми.

Завдання 3. Робота з файлами

Короткі теоретичні відомості.

Файл - це послідовність компонент, що є об'єктами одного і того ж типу. Кількість компонент у файлі заздалегідь не обмовляється, компоненти файлу не мають індексів. У Паскалі можливе використання трьох файлових типів: текстові файли, компонентні файли, безтипових файли.

Процедури і функції, що використовуються при обробці файлів будь-яких типів:

процедура Assign (Var_file, Road) пов'язує змінну Var_file з деяким ім'ям файлу, яке зберігається у змінній Road;

процедура Reset (f) відкриває файл з ім'ям f для читання;

процедура Rewrite (f) створює новий файл f і відкриває його для запису;

процедура Erase (f) стирає існуючий файл з диска;

функція EOF (f) перевіряє досягнення кінця файлу;

функція Close (f) закриває файл f.

Типізований, або компонентний файл - це файл з оголошеним типом його компонент. Оголошення такого типу має структуру:

var Імя_переменной_файла: file of Тіп_елементов_файла;

Текстові файли організовуються по рядках і оголошуються наступним чином:

var file: text;

Крім загальних для всіх файлів процедур і функцій, визначені ще кілька, що працюють тільки з текстовими файлами:

процедура Append (file), що відкриває текстовий файл file для дозапису в кінець файлу;

функція EOLn (file), що перевіряє досягнення кінця рядка [1-8].

Постановка завдання.

Скопіювати з файлу F1 в файл F2 рядка, починаючи з N до K. Скласти блок схему алгоритму і програму.

Результати роботи програми.

Файл F2.txt

sasa

ss

fedg

dfhdfh

Лістинг програми.

uses crt;

var f, g: text; - логічні імена файлів

s: string; - допоміжні змінні

i, n, m: integer; - допоміжні змінні

BEGIN

clrscr;

assign (f, 'D: \ FF \ F1.txt'); - відкриття файлу F1.txt з D: \ FF \ F1.txt

reset (f);

assign (g, 'D: \ FF \ F2.txt'); - відкриття файлу F2.txt з D: \ FF \ F2.txt

rewrite (g);

writeln ('Kopirovat stroki'); - запит на копіювання рядків

write ('s:');

readln (n);

write ('po:');

readln (m);

i: = 1;

while not EOF (f) do begin - цикл в якому відбувається копіювання

з позиції n до позиції m

readln (f, s);

if (i> = n) and (i <= m) then

begin

writeln (g, s);

end;

inc (i);

end;

writeln ('Gotovo!'); - результати виконання програми у файлі F2.txt

close (g);

close (f);

readln;

end.

Блок-схема алгоритму програми.












Рис.3 Блок-сема програми завдання 3.

Список використаних джерел

1. Абрамов С.О., Зима О.В. Почала інформатики. -М.: Наука, 1990.

2. Грогоно П. Програмування на мові Паскаль. - М.: Світ, 1982.

3. Йенсен К., Вірт H. Паскаль. Керівництво для користувача і опис мови. -М.: Фінанси і статистики, 1982.

4. Пермінов О.М. Програмування на мові Паскаль. - М.: Радіо і зв'язок, 1988.

5. Пильщиків В.М. Збірник вправ з мови Паскаль. - М.: Наука, 1989.

6. Прайс Д. Програмування на мові Паскаль. Практичне керівництво. -М.: Світ, 1987.

7. Турбо Паскаль 7.0. - К.: Торгово-видавниче бюро BHV, 1996.

8. Фаронов В.В. Турбо Паскаль 7.0. Початковий курс. Навчальний посібник.-М.: «Нолидж», 1997.

Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Контрольна робота
50.9кб. | скачати


Схожі роботи:
Алгоритмічні мови обробка одновимірних масивів
Обробка масивів даних у середовищі Turbo Pascal
Алгоритмічні мови програмування
Основи програмування та алгоритмічні мови
Алгоритмічні мови використання множин
Алгоритмічні мови використання процедур при роботі з двовимірними масивами
Гомоморфной обробка мови
Обробка сировини виробництво напівфабрикатів обробка овочів і грибів
Програмування масивів
© Усі права захищені
написати до нас