Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Звіт з дисципліни.docx
Скачиваний:
4
Добавлен:
15.09.2019
Размер:
3.31 Mб
Скачать

Теми 4. Файли записів мета|ціль|:

вивчення файлових типів даних, придбання|надбання| практичних навиків|навичок| створення|створіння| і обробки файлів, використання елементів записів, основних структур файлових даних.

Варіант 2.

Завдання:

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

Словесний алгоритм:

  1. Відкриваємо файл p4_2.txt

  2. Записуємо данні до файлу.

  3. Дописуємо данні про три нові вузи.

  4. Закриваємо файл.

Блок схема:

Програмний код:

program p4_2;

uses crt;

label 1,2,3,4;

type wed=record

name_univer:string[20];

number_stud:integer;

value_fak:integer;

end;

var f:text;

a,i,n,g:integer;

s,ss:string;

comp2:wed;

comp:array[1..100] of wed;

begin

assign(f,'p4_2.txt');

rewrite(f);

1:writeln('Enter number record ');read(g);

for i:=1 to g do begin

writeln('Enter name atlet ');read(comp[i].name_univer);

writeln('Enter number atlet ');read(comp[i].number_stud);

writeln('Enter point atlet ');read(comp[i].value_fak);

writeln(f,comp[i].name_univer,comp[i].number_stud,comp[i].value_fak);

end;

4:writeln('Enter Enter the desired action ');read(a);

if a=1 then goto 1 else

if a=2 then goto 2 else

if a=3 then goto 3 else

goto 4;

3:append(f);

for i:=1 to 3 do begin

writeln('Enter name atlet ');read(comp[i].name_univer);

writeln('Enter number atlet ');read(comp[i].number_stud);

writeln('Enter point atlet ');read(comp[i].value_fak);

writeln(f,comp[i].name_univer,comp[i].number_stud,comp[i].value_fak);

end;

close(f);

2:end.

Тестування програми:

Тема 5. Множини

Варіант 2

Завдання 1: Дана непустая последовательность символов. Требуется построить и напе- чатать множество, элементами которого являются встречающиеся в после- довательности буквы от 'A' до 'F' и от 'X' до 'Z'.

Словесний алгоритм:

  1. Вводимо рядок символів.

  2. Застосовуємо множини.

  3. Відсіюємо непідходящі символи.

  4. Виводимо результат на екран.

Блок схема:

Програмний код:

Uses Crt;

Type

nabor = set of char;

Var str: string [128];

M,Mzp: nabor;

d,x,y,i: integer;

Begin

ClrScr;

Write (Введите текст: ');

ReadLn (str);

d := length (str);

Mzp := ['A'..'F', 'X'..'Z'];

M := [];

for i := 1 to d do

if str [i] in Mzp

then

M := M + [str[i]];

Write ('Множество: [');

for i := 1 to 255 do

if chr(i) in M

then

Write ('''', chr(i), ''', ');

x := WhereX;

y := WhereY;

GotoXY (x-2, y);

WriteLn (']');

ReadLn;

End.

Тестування програми:

Завдання 2: Операції над масивами. При виконанні завдання слід врахувати пріе-мипрограмування, використані у наведеній нижче програмі:

Program Eratosphen; Const

n = 256; Var

Sieve, Primes: Set of 2..n; Next: byte;

j: word;

Begin

Sieve := [2..n]; Primes := [ ];

Next := 2;

repeat

while not (Next in Sieve) do Next := Next + 1;

Primes := Primes + [Next];

j := Next;

while j <= n do

begin

Sieve := Sieve-[j];

j := j + Next

end; until Sieve = [ ]; for j := 2 to n do

if j In Primes then Write(j:5)

end;

Из множества целых чисел [1..1000] получить множество чисел, являющихся квадратами четных чисел и вывести их на экран.

Словесний алгоритм:

  1. Застосовуємо решето Ератосфена.

  2. Вводимо відбір простих чисел.

  3. Виводимо результат на екран.