РГЗ по предмету "Программирование на языке Pascal". Модуль 1. Вариант 1.
Исходные коды всех программ
Сборник задач по языку Паскаль - А.И.Семенов
Модуль 1. Задание 1. Вариант 1.
Условие задачи: Определить время, через которое встретятся два тела, равноускоренно движущиеся навстречу друг-другу, если известны их начальные скорости, ускорения и начальное расстояние между ними.
Блок-схема задачи:
Текст программы:
program z1;
uses crt;
var
a1,a2,V1,V2,t,s,d,t1,t2:real;
begin
clrscr;
write('Enter V1= ');
read(v1);
write('Enter V2= ');
read(v2);
write('Enter a1= ');
read(a1);
write('Enter a2= ');
read(a2);
write('Enter S= ');
read(s);
d:=sqr(V1)+8*a1*s;
t1:=(-V1+sqrt(d))/(2*a1);
d:=sqr(V2)+8*a2*s;
t2:=(-V2+sqrt(d))/(2*a2);
t:=t2-t1;
write('t= ',t:5:2,' km\h');
readkey;
end.
Модуль 1. Задание 2. Вариант 1.
Условие задачи: Вычислить значение выражения:
Блок-схема задачи:
Текст программы:
program z2;
uses crt;
var x:real;
begin
clrscr;
writeln('/Zadanie: A/');
write('x= ');read(x);
writeln('Result= ',sqr(x+1)+3*(x+1):5:2);
writeln;x:=0;
writeln('/Zadanie: B/');
write('x= ');read(x);
writeln('Result= ',ln(abs(exp(2*x)-(x/(4*ln(x/(x+1))))+12*x)):5:2);
readkey;
end.
Модуль 1. Задание 3. Вариант 1.
Условие задачи: На плоскости расположена окружность радиуса R с центром в начале координат. Ввести произвольные координаты точки и определить, лежит ли она на окружности. Решить задачу для R=2 для точек с координатами: (0;2),(-1,5;0,7), (1;1), (3;0).
Блок-схема задачи:
Текст программы:
program z3;
uses
crt;
var
r,x,y:real;
begin
clrscr;
write('R= ');read(r);
write('X= ');read(x);
write('Y= ');read(y);
if (r*r=sqr(x)+(sqr(y))) then
writeln('Toshka (',x:5:2,',',y:5:2,') legit na okr.')
else
writeln('Toshka (',x:5:2,',',y:5:2,') NE legit na okr.');
readkey;
end.
Модуль 1. Задание 4. Вариант 1.
Условие задачи: Два отрезка R и W на плоскости, заданы координатами своих концов. Определить, имеют ли эти отрезки общие точки.
Блок-схема задачи:
Текст программы:
program z4;
uses crt;
var x1,x2,x3,x4,y1,y2,y3,y4,
q34,q13,q14,q24,q23,q12,q,
s1,s2,s3,s4:real;
begin
clrscr;
write('x1= '); read(x1);
write('y1= '); read(y1);
write('x2= '); read(x2);
write('y2= '); read(y2);
write('x3= '); read(x3);
write('y3= '); read(y3);
write('x4= '); read(x4);
write('y4= '); read(y4);
q34:=sqrt(sqr(x3-x4)+sqr(y3-y4));
q13:=sqrt(sqr(x1-x3)+sqr(y1-y3));
q14:=sqrt(sqr(x1-x4)+sqr(y1-y4));
q24:=sqrt(sqr(x2-x4)+sqr(y2-y4));
q23:=sqrt(sqr(x2-x3)+sqr(y2-y3));
q12:=sqrt(sqr(x1-x2)+sqr(y1-y2));
q:=(q14+q13+q34)/2;
s1:=sqrt(q*(q-q14)*(q-q13)*(q-q34));
q:=(q24+q23+q34)/2;
s2:=sqrt(q*(q-q24)*(q-q23)*(q-q34));
q:=(q14+q24+q12)/2;
s3:=sqrt(q*(q-q14)*(q-q24)*(q-q12));
q:=(q13+q23+q12)/2;
s4:=sqrt(q*(q-q13)*(q-q23)*(q-q12));
if (s1+s2=s3+s4) then writeln('YES') else writeln('NO');
readkey;
end.
Модуль 1. Задание 5. Вариант 1.
Условие задачи: Даны два действительных числа N и M. Заменить первое число на 0, если оно меньше или равно второму и уменьшить значение первого и второго чисел на их полу сумму в противном случае.
Блок-схема задачи:
Текст программы:
program z5;
uses crt;
var m,n:real;
procedure wr;
begin
writeln('n= ',n:5:2);
writeln('m= ',m:5:2);
end;
begin
clrscr;
write('n= ');read(n);
write('m= ');read(m);
if (n<=m) then
begin
n:=0;
wr;
end
else
begin
n:=n-((n+m)/2);
m:=m-((n+m)/2);
wr;
end;
readkey;
end.
Модуль 1. Задание 6. Вариант 1.
Условие задачи: Оператор выбора. Вычислить значение функции:
Блок-схема задачи:
Текст программы:
program z6;
uses crt;
var x:integer;
y:real;
begin
clrscr;
write('x= ');read(x);
case x of
-32000..-2:y:=pi/x;
-1..1:y:=arctan(x);
else y:=2*pi*sqr(x);
end;
writeln('Result= ',y:5:2);
readkey;
end.
Модуль 1. Задание 7. Вариант 1.
Условие задачи:
По заданной формуле члена ряда с номером k составить:
a) Программу вычисления, с помощью цикла repeat...untill, суммы первых членов заданного ряда, при k=1,2,..,n;
б) Программу вычисления, с помощью цикла while, всех членов ряда не меньших заданного числа E (число E может изменяться от 0.1 до 0.000000001).
Блок-схема задачи
Текст программы:
program z7;
uses crt;
var
k,n:integer;
i,e:real;
begin
Clrscr;
writeln('Zadanie: a');
write('Vvedi n= ');
read(n);
repeat
k:=k+1;
i:=i+(1/((2*k-1)*(2*k+1)));
until k=n;
writeln(i:5:9);
writeln;
writeln('Zadanie: b');
write('Vvedi E= ');
read(e);
k:=0;
while i>=e do
begin
k:=k+1;
i:=(1/((2*k-1)*(2*k+1)));
write(' ',i:5:5);
end;
readkey;
end.
Модуль 1. Задание 8. Вариант 1.
Условие задачи: Найдите значение выражения:
Блок-схема задачи
Текст программы:
program z8;
uses crt;
var i,n:integer;
q,w,e:real;
begin
clrscr;
write('Vvedi n= ');
read(n);
for i:=1 to n do
begin
q:=cos(i);
w:=w+sin(i);
e:=e+(q/w);
end;
writeln('Result= ',e:5:5);
readkey;
end.
Модуль 1. Задание 9. Вариант 1.
Условие задачи: Найти натуральное число от 1 до 10000 с максимальной суммой делителей.
Блок-схема задачи:
Текст программы:
program z9;
uses
crt;
var
i,j,s,s1,qq,n:integer;
begin
clrscr;
write('Vvedi chislo= ');read(n);
for i:=1 to n do
begin
for j:=1 to i do
begin
if i mod j=0 then
begin
s:=s+j;
end;
end;
if s>s1 then
begin
s1:=s;
qq:=i;
s:=0;
end;
end;
writeln('result= ',qq);
readkey;
end.
Модуль 1. Задание 10. Вариант 1.
Условие задачи: Написать программу проверки существования «близнецов», т.е. простых чисел, разность между которыми равна двум, среди чисел n, n+1…2n, где n – данное число.
Блок-схема задачи
Текст программы:
program z10;
uses
crt;
var
i,j,n,q,
q1,q2,q3:integer;
begin
clrscr;
write('Please enter n= ');
read(n);
for i:=n to 2*n do
begin
q:=0;
for j:=2 to 2*n do
begin
if (i mod j<>0) then
begin
q:=q+1;
end;
end;
if q=(2*n)-2 then
begin
q1:=i;
if (q2=q1-2)and(q2<>0) then
begin
q3:=q2;
writeln(q3,' ',q1);
end;
end;
q2:=q1;
end;
readkey;
end.
Похожие статьи: