1)
program s_parallelogramm;
var
a,h,s: real;
begin
write('Основание = '); readln(a);
write('Высота = '); read(h);
if ((a=0) or (a<0)) or ((h=0) or (h<0)) then writeln('Ошибка! Значения основания и высоты должно быть натуральными числами')
else
begin
s:=a*h;
writeln('Площадь (S) параллелограмма = ', s);
end;
end.
2)
program sp_kvadrata;
var
a,p,s: real;
begin
write('Сторона квадрата = '); readln(a);
p:=4*a;
s:=sqr(a);
writeln('Периметр (P) квадарата = ', p);
writeln('Площадь (S) квадарата = ', s);
end.
3)
program e_kinet;
var
m,v,e: real;
begin
write('Масса тела (m, кг) = '); readln(m);
write('Скорость тела (v, км/ч) = '); readln(v);
e:=m*sqr(v)/2;
writeln('Кинетическая энергия (Ек, Дж) = ', e);
end.
1)
program vivod_chisel;
var
i, a: integer;
begin
a:=11;
for i:=1 to 45 do
begin
write(a:3);
a:=a+2;
end;
end.
2)
program sym_trex_chisel_krat5;
var
mas: array[1..900] of integer;
i,a,sym: integer;
begin
a:=100;
sym:=0;
for i:=1 to 900 do
begin
mas[i]:=a;
if mas[i] mod 5 = 0 then sym:=sym+mas[i];
a:=a+1;
end;
writeln('Сумма трехзначных чисел, кратных 5 = ', sym);
end.
Объяснение:
Здесь полная аналогия с тем, как мы складываем в обычной, десятичной системе. Объясню лучше на примере.
Мы знаем, что можно складывать числа "в столбик":
24
+13
37
то есть строго разряд под разрядом. Но что мы делаем, когда в одном разряде получается число, больше 9? Правильно, переносим десяток в старший разряд!
15
+19
24 (не 214!)
Здесь та же ситуация, отличие только в том, что максимальная цифра в разряде равна 7 (как в нашей десятичной записи максимальная цифра в записи разряда равна 9, а следующее число - 10 - уже состоит из двух цифр в записи - 1 и 0). Значит, если мы хотим записать число 8 в восьмеричной записи, мы напишем это как 10₈ (нижний индекс показывает систему счисления)
А теперь попробуем сложить два числа в восьмеричной системе:
21₈
+ 16₈
37₈
Разряд под разрядом, ничего сложно. А давайте возьмем пример поинтереснее:
77₈
+ 77₈
7₈ + 7₈ = 16₈, это значит, что в младшем разряде мы напишем 6, а десятки припишем в старший разряд.
1
77₈
+ 77₈
*6
Так как 7₈ + 7₈ + 1₈ = 17₈, то 7 записываем в свой, соответствующий, разряд, а единицу в старший, получив при этом ответ 176₈
В правильности ответа можем убедиться, переведя это все в десятичную запись: 77₈ = 63, 176₈ = 126, 63 + 63 = 126, все верно.
Единственный дискомфорт при таком методе - непривычные результаты сложения. Например, 7 + 7 = 14 (в десятичной записи), но в примере выше 7₈ + 7₈ = 16₈. Поэтому тут нужно быть аккуратным!
Объяснение:
Линейный алгоритм - это алгоритм, в котором нет ветвлений и циклов.