Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornaya_rabota_PASCAL_ukr.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
365.06 Кб
Скачать

Завдання підвищеної складності

  1. Розглянемо довільне натуральне число й знайдемо суму його цифр, потім суму цифр отриманого числа й так далі, поки не одержимо однозначне число. Назвемо це число цифровим коренем. Потрібно написати програму, що для заданого N (N<10100) знаходить його цифровий корінь.

  2. Задано N натуральних чисел a1,a2,...,a (1Ј N Ј 20), кожне з яких перебуває в інтервалі від 1 до 10000. Необхідно визначити кількість натуральних дільників добутку a1*a2*...*a.

  3. Написати функцію пошуку корінь полінома ступеня n. Вихідними параметрами будуть числа a1, a2,...,an. Комплексних корінь ураховувати.

  4. Потрібно написати програму, що виводить у порядку зростання всі правильні нескоротні дроби, знаменники яких не перевершують N (2<=N<=500).

  5. На екрані комп'ютера, що працює в операційній системі Windows, було відкрито N (N <= 20) вікон, положення кожного з яких однозначно визначається четвіркою натуральних чисел - X1 Y1 X2 Y2 - координатами лівого верхнього й правого нижнього кута вікна. Очевидно, що вікна, відкриті пізніше, можуть частково або повністю перекривати відкриті раніше. Вікно вважається видимим, якщо видно хоча б один утворюючий його пиксел.

Лабораторна робота 9 Робота з файлами

Теоретический материал

Справочник по процедурам и функциям

Ціль роботи: познайомити з поняттям файлового типу даних (типізовані, текстові й нетипізовані файли); виробити навички роботи з файловим типом даних у мові програмування Pascal. навчитися зчитувати інформацію з файлів, записувати інформацію у файл; навчиться вирішувати завдання з використанням файлів

Загальні відомості

Файл являє собою структурований тип даних, що містить послідовність компонентів одного типу й однієї довжини. Число елементів у файлі (довжина файлу) не фіксовано. Це є основною відмінністю файлу від масиву.

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

Приклад

Приклад1. Переписати з текстового файлу f у файл g рядка в переверненому виді, порядок рядків буд.б. зворотним. Етапи рішення завдання:

 Будемо зчитувати файл f построчно й перевертаючи рядка будемо записувати їх у масив, далі створимо файл і заповнимо його рядками з масиву міняючи порядок рядків на зворотний.

 Складемо блок -схему програми.

Уміст самих блоків не повинне викликати більших утруднень у значеннєвому розумінні, головне тут це - технічна реалізації мовою Паскаль, тому запишемо реалізації кожного блоку на Паскале.

а) "Зчитуємо рядка з файлу F"

assign(f,'input.dat');

reset(f);

while not eof(f) do

begin readln(f,st);

end;

б) "Перевертаємо рядка й записуємо їх у масив"

st1:='';

for i:= 1 to length(st) do

st1:= st[i]+st1;

m[k]:=st1;

k:=k+1;

в) "Записуємо у файл g"

assign(g,'output.dat');

rewrite(g);

for i:= 1tokdowriteln(g,m[i]);

3.Програма цілком

program example;

var

f,g:text;

m:array[1..100] of string;

k,i:integer;

begin

assign(f,'input.dat');

reset(f);

k:=0;

while not eof(f) do

begin readln(f,st);

k:=k+1;

st1:='';

for i:= 1 to length(st) do st1:= st[i]+st1;

m[k]:=st1;

end;

assign(g,'output.dat');

rewrite(g);

for i:= 1tokdowriteln(g,m[i]);

end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]