Нужно решение
1.В программе описан одномерный целочисленный массив A с индексами от 1 до 10. Ниже представлен фрагмент программы, записанный на языке программирования Паскаль, в котором значения элементов сначала задаются, а затем меняются. Сколько элементов массива будут четными? (Решение представить в виде таблицы трассировки.)
for i:=1 to 10 do
A[i]:=10-i;
for i:=1 to 8 do
А[i+2]:=A[i]+A[i+2];
2.. Дана программа на языке программирования Паскаль.
var s,t: integer;
begin
readln(s);
readln(t);
if (s < 10) or (t < 10)
then writeln('ДА')
else writeln('НЕТ')
end.
Было проведено 9 запусков этой программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:
(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5)
Сколько было запусков, при которых программа напечатала «НЕТ»? Перечислите эти запуски.
3.Файл размером 68 Кбайт передаётся через некоторое соединение со скоростью 1024 бит в секунду. Определите размер файла в Кбайтах, который можно передать за то же время через другое соединение со скоростью 256 бит в секунду.
// Внимание! Если программа не работает, обновите версию!
begin
var xa,ya,xb,yb,xc,yc:real;
Write('Введите координаты точки А: '); Read(xa,ya);
Write('Введите координаты точки B: '); Read(xb,yb);
Write('Введите координаты точки C: '); Read(xc,yc);
var xd:=(xb+xc)/2;
var yd:=(yb+yc)/2;
var ma:=sqrt(sqr(xd-xa)+sqr(yd-ya));
Writeln('ma=',ma:0:5);
var AB:=sqrt(sqr(xb-xa)+sqr(yb-ya));
var AC:=sqrt(sqr(xc-xa)+sqr(yc-ya));
var BC:=sqrt(sqr(xc-xb)+sqr(yc-yb));
var Wb:=sqrt(AB*BC*(sqr(AB+BC)-AC*AC))/(AB+BC);
Writeln('Wb=',Wb:0:5)
end.
Результат
Введите координаты точки А: 0 0
Введите координаты точки B: 2 1
Введите координаты точки C: -2 3
ma=2.00000
Wb=2.66667
Var p:real;
Begin
p:=(a+b+c)/2;
result:=Sqrt(p*(p-a)*(p-b)*(p-c))
End;
Function Tr(a,b,c:real):boolean;
Begin
result:=(a+b>c)and(a+c>b)and(b+c>a)
End;
Var
a,b,c,k1,k2,h,t,s,r1,r2:real;
Begin
writeln(' найти радиус или площадь треугольника? если радиус,то нажмите 1. Если площадь, то нажмите 2 ');
readln(k1);
if k1=1 then
begin
writeln('окружность вписанная(нажмите 1) или описанная(нажмите 2)?');
readln(k2);
write('сторона а = ');
readln(a);
write('сторона b = ');
readln(b);
write('сторона с = ');
readln(c);
if Tr(a,b,c) then
begin
s:=Sq(a,b,c);
if k2=1 then
begin
r1:=(a+b+c)/(2*s);
writeln('радиус вписанной окружности = ' , r1);
end;
if k2=2 then
begin
r2:=a*b*c/(4*s);
writeln('радиус описанной окружности = ', r2);
end;
end else WriteLn('Треугольник не существует');
end
else
if k1=2 then
begin
writeln('что вам известно? если а и h, то нажмите 1. если а,b,с то нажмите 2' );
readln(k2);
if k2=1 then
begin
write('высота = ');
readln(h);
write('cторона = ');
readln(t);
s:=1/2*h*t;
writeln('площадь = ',s);
end;
if k2=2 then
begin
Write('a = ');
ReadLn(a);
Write('b = ');
ReadLn(b);
Write('c = ');
ReadLn(c);
if Tr(a,b,c) then
begin
s:=Sq(a,b,c);
writeln('площадь = ',s) ;
end else WriteLn('Треугольник не существует');
end;
end;
end.
Пример:
найти радиус или площадь треугольника? если радиус,то нажмите 1. Если площадь, то нажмите 2
2
что вам известно? если а и h, то нажмите 1. если а,b,с то нажмите 2
1
высота = 3
cторона = 4
площадь = 6