Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний технічний університет України
“Київський політехнічний інститут”
Кафедра ОТ
ЗВІТ
про виконання лабораторної роботи № 4
з дисципліни
“Основи програмування та алгоритмічні мови”
Тема: Організація підпрограм
Постановка задачі
Для заданих цілих m, k (k > 0) , використовуючи ітераційну формулу
,
для знаходження кореня при заданому натуральному n обчислити
.
Аналітичні викладки
Для знаходження кореня використовується ітераційна формула
При k>m:
При k<m:
Текст програми з коментарями
uses crt;
var k,m:word; {isxodnie dannie}
y:real; {y-iskomaya}
function power(chislo:real; stepen:word):real;
var a:real;
i:integer;
begin
a:=1;
if stepen>=1
then
for i:=1 to stepen do
a:=a*chislo
else
for i:=1 to -1*stepen do
a:=a/chislo;
power:=a;
end;
function koren(p:word; chislo:real):real;
var x,x0:real;
begin
x:=1;
repeat
x0:=x;
x:=((p-1)*x0+chislo/power(x0,p-1))/p;
until abs(x-x0)<0.00001;
koren:=x;
end;
procedure factor(var fi:real; a,z:word);
var i:word;
begin
fi:=1;
if a>z
then
for i:=a downto z+1 do
fi:=fi*i
else if a<z then
for i:=z downto a+1 do
fi:=fi/i;
end;
BEGIN
repeat
clrscr;
writeln('Result of laboratory work 4');
writeln('variant 4');
writeln('Executed student of group IP-02 Bondur Vladislav');
write('vvedite POLOGITEL`NIE k,m: ');
readln(k,m);
factor(y,k,m);
y:=koren(3,sqr(k))*y-koren(5,power(k,3))*sqr(m);
writeln('y=',y:15:10);
writeln('dlya vixoda iz progi nagmite Esc');
until ord(readkey)=27;
END.
Блок-схема алгоритму
Результат виконання програми у вигляді відеокопії екрана
/
Висновки
Отже, перевіримо, чи правильно працює моя програма:
Як бачимо, результат програми співпав з результатами моїх обчислень до 5 знаків після коми. Це пов’язано з невеликими похибками в моїх розрахунках.