Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Тема лекції: „Організація циклів ”
Цикл це група операцій, які виконуються багаторазово.
1. Цикл For:
вираз1, вираз2 відповідно початкове та кінцеве значення параметра циклу;
В циклі For параметр циклу завжди змінюється з кроком „один” або „мінус один” (downto);
Приклад:
For i:=1 to 10 do write (i:2);
For i:=10 downto 1 do write (i:2);
For i:=1 to 10 do begin
a:= i*2;
writeln (a:3)
end;
2. Цикл While називається циклом з передумовою.
While <умова> do <тіло циклу>;
де умова це вираз, який приймає значення True або False;
оператор простий або складений оператор.
Якщо <умова> приймає значення True, тоді виконується тіло циклу, якщо <умова> приймає значення False цикл припиняє свою роботу.
3. Цикл Repeat називається циклом з постумовою
Repeat <тіло циклу> until <умова>;
Приклад:
x:=1;
Repeat
y:=sqr(x);
writeln(y);
x:=x+2;
until x>35;
Тіло циклу завжди виконується хоча б один раз тому, що умова продовження циклу стоїть у кінцевому операторі until. Якщо результат виразу (умова) приймає значення True цикл припиняє свою роботу, якщо False цикл продовжує працювати. Цей цикл не потребує використання „операторних дужок” begin…end.
Обовязково повинен змінюватися параметр циклу; якщо параметр циклу не змінюється, цикл виконується нескінченно.
Для більш зручного управління циклічними операторами до складу мови Turbo Pascal 7.0 входять дві процедури:
Break процедура передає управління оператору, який стоїть відразу за циклом;
Continue процедура передає управління кінцевому оператору циклу без виконання групи операторів тіла циклу.
Приклад програми до лабораторної роботи №2:
Умова: Обчислити .
Program Sum;
Uses Crt;
var
s: real;
i:integer;
begin
clrscr;
s:=0;
for i:=1 to 20 do
s:=s+1/sqr(i);
writeln(сума дорівнює , s:5:2);
readln
end.
Тема лекції: „Масиви”
Масив це впорядкована послідовність величин, яка позначена одним імям.
Type
< імя типу >=array [ тип індексу] of <тип компонентів>;
var
<ідентифікатор,...>: < імя типу >;
або
var
< імя масиву >: array [ тип індексу] of <тип компонентів>;
Наприклад:
Type
massiv=array [1..20] of integer;
var
m: massiv;
або
var
m: array [1..20] of integer;
При введенні та виведенні масиву треба організувати відповідний цикл:
var
x: array [1..5] of real;
i: integer;
………………………
for i:=1 to 5 do readln(x[i]); - {введення масиву}
................................
for i:=1 to 5 do writeln(x[i]); - {виведення масиву}
Приклад програми до лабораторної роботи №3:
Умова: Дано масив цілих чисел. Обчислити добуток та кількість непарних елементів масиву.
Program Mas;
Uses Crt;
var
a: array [1..100] of integer;
i, k, n, dob: integer;
begin
clrscr;
write(Введіть розмір масиву:);
readln(n);
writeln(Введіть масив чисел:);
for i:=1 to n do
readln(a[i]);
k:=0; dob:=1;
for i:=1 to n do
if a[i] mod 2 <>0 then begin
k:=k+1;
dob:=dob*a[i];
end;
writeln(добуток непарних елементів в масиві дорівнює, dob:4);
writeln(кількість непарних елементів в масиві,k:2);
readln
end.
Матриця це двовимірний масив.
var
a: array [1..4,1..5] of integer;
Якщо треба ввести або вивести елементи матриці, вживають вкладені цикли:
Const
n=3; m=4;
var
a: array [1..n,1..m] of real;
i, j:integer;
…………………………….
for i:=1 to n do begin
for j:=1 to m do введення матриці 3х4
read(a[i,j]); readln;
end;
for i:=1 to n do begin
for j:=1 to m do виведення матриці 3х4
write(a[i,j]); writeln;
end;
Приклад програми до лабораторної роботи №4:
Умова: Отримати дійсну матрицю [aij]i,j=1,…5,перший рядок якої задається формулою a1j = 2j+3, другий рядок задається формулою a2j = j -, а кожний наступний рядок це сума двох попередніх.
Program Matr;
Uses Crt;
Const
n=5;
var
a: array [1..n,1..n] of real;
i, j:integer;
begin
clrscr;
i:=1;
for j:=1 to n do
a[1,j]:=2*j+3;
i:=2;
for j:=1 to n do
a[2,j]:= j-3/ (2+1/j);
for i:=3 to n do
for j:=1 to n do
a[i,j]:= a[i-1,j]+a[i-2,j];
writeln( отримана матриця:);
for i:=1 to n do begin
for j:=1 to n do
write(a[i,j]); writeln;
end;
readln
end.
5