1)Начало
2)Сравни первое и второе числа;если первое меньше второго,то поменяй их местами.
3)Сравни второе и третьего числа;если второе меньше третьего ,то поменяй их местами.
4)Если теперь три числа расположены в порядке убывания ,то исполни пункт 5) этого алгоритма; иначе вернись. к пункту 2).
<span>5)Конец</span>
1)Алгоритм решения задачи: <span>Программа должна запрашивать у пользователя следующую информацию:диаметр бака;высота бака;расход краски (площадь поверхности, которую можно покрасить одной банкой краски).В результате программа должна выдавать количество требуемых банок. При получении дробного числа округление должно всегда происходить в большую сторону.<span>Площадь крыши бака (круга) вычисляется по формуле <span>p * d2 /4</span> (где p – число пи, d - диаметр).
Площадь боковой поверхности цилиндра: p * d * h (где h – высота).
</span></span><span>Программа на языке Паскаль:
<span>const pi = 3.14;
var
d, h, b: real;
top, wall, q: real;
q_int: integer;
begin
write('Диаметр: ');
readln(d);
write('Высота: ');
readln(h);
write('Окрашиваемая площадь одной банкой: ');
readln(b);
top := pi * sqr(d) / 4.0;
wall := pi * d * h;
q := (top + wall) / b;
q_int := trunc(q) + 1;
write('Количество банок: ', q_int);
readln
end.
</span></span>
Uses crt;
type mas=array[1..1000] of integer;
var a:mas;
n,i:integer;
procedure gnomesort(var arr:mas; size : Integer);
var i, j, t : Integer;
begin
i := 2;
j := 3;
while i <= size do
begin
if arr[i-1] <= arr[i] then
begin
i := j;
j := j + 1
end
else
begin
t := arr[i-1];
arr[i-1] := arr[i];
arr[i] := t;
i := i - 1;
if i = 1 then
begin
i := j;
j := j + 1
end
end
end;
end;
begin
write('Размер массива n=');
read(n);
writeln('Исходный массив:');
for i:=1 to n do
read(a[i]);
writeln;
gnomesort(a,n);
writeln('Результат сортировки:');
for i:=1 to n do
write(a[i],' ');
end.
1)
for i := 1 to n do
read(a[i]);
for i := 1 to n do
if (a[i] div 100 = 0)and(a[i] div 10 > 0) then
write(a[i], ' ');
2)
for i := 1 to n do
read(a[i]);
for i := 1 to n do
if (a[i] mod 2 = 0) then
write(a[i], ' ');
3)
for i := 1 to n do
read(a[i]);
for i := 1 to n do
if (a[i] mod 2 = 0)then
a[i] := a[i]*2
else
a[i] := a[i] - 1;
for i := 1 to n do
wirte(a[i]);