Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний технічний університет України
“Київський політехнічний інститут”
Кафедра ОТ
ЗВІТ
про виконання лабораторної роботи № 4
з дисципліни
“Основи програмування ”
Тема: ОРГАНІЗАЦІЯ ПІДПРОГРАМ
Постановка задачі
Задане натуральне число n. З’ясувати, чи є серед чисел n, n + 1, …, 2(n числа-близнюки, тобто прості числа, різниця між якими дорівнює двом. Вивести усі пари таких близнюків.
аналітичні викладки
Прості числа-близнюки це пара простих чисел, різниця між якими становить 2.
Всі пари простих-близнюків крім (3, 5) мають вид 6n+-1.
Справді для будь-якої пари простих чисел-близнюків число, що знаходиться між ними є очевидно парним. Також воно ділиться на 3, оскільки з трьох послідовних чисел одне має ділитися на три. Тому дане число також ділиться на 6, а двоє сусідніх чисел мають вид 6n+-1.
блок-схема алгоритму
текст програми.
program lab4;
uses crt;
var
n,k1,b2,b3,{vvodimoe zna4enie}
l:integer;
q:string; {flag povtoreniy programi}
procedure bliz (j:integer; var b,b1:integer); {proverka bliznec}
var i,k{peremenaya cikla}
:integer; {predideshie prost 4iclo}
function pros(r,s:integer):integer; {funkciya delenia}
begin
pros:=r mod s;
end;
begin
K:=0;
b1:=b; {prisvoenoe ctarogo prost 4icla}
for i:=1 to j do
begin
if pros(j,i)=0 then
k:=k+1; {pods4et dilitelei}
end;
if k=2 then
b:=j; {prisvoenie prostogo 4isla}
k:=0; {obnylenie shet4ika}
end;
begin {osnovnaya programa}
clrscr;
writeln ('Laboratorna robota 4');
writeln ('Variant 15');
writeln('vikonav Kononec German ip-02');
q:='yes'; {startovoe zna4enie vneshnego cikla}
while (q='yes') or (q='Y') or (q='y') do {yslovie}
begin
write('vvidite n=');
readln(n); {vvod 4isla n}
if n>2 then
for l:=n-1 to 2*n do {cikl c 4islom n}
begin
bliz(l,b2,b3); {procedura}
if b2-b3=2 then {proverka bliznicov}
writeln(b3,' i ',b2,' blizneci'); {vivod}end
else writeln('v zadanom promezytke bliznecov net, ili neverno vvedeno znachenie');
writeln('povtorit` program? (yes\no)'); {zapros na povtor programi}
readln(q); {vvidenie zna4enia cikla}
end;
end. {konec}
Відеокопія результату
/
Висновок
Навчився складати програми використовуючи підпрограми. Освоїв можливості передачі даних у підпрограми та повернення їх до основної програми. Викликати підпрограму багато разів або з тіла іншої підпрограми. Також побачив різницю між процедурою та функцією у мові програмування pascal.
/
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!