1)вывести на экран действительные числа в промежутке от n до m с шагом h=2. 2)определить может ли шахматный конь за один ход попасть из клетки с координатами (x1.y1) в клетку с координатами (x2.y2)
Что касается конкретной программы 1. Описываем нужные нам переменные - это будут стороны прямоугольника a и b. Поскольку нигде ничего о размерах сторон не сказано, придется предположить, что они не обязательно будут целыми , мы опишем эти переменные, как вещественные (real), что позволит работать и с нецелыми значениями. 2. Из геометрии нам известны формулы периметра прямоугольника P=2 x (a+b) и площади прямоугольника S=a x b. Можно описать переменные P, S (тоже real), но смысла в этом нет, поскольку значения P и S нужны только для вывода результатов, так что проще написать нужные выражения непосредственно в операторе вывода. 3. Итак, с описанием переменных закончили, можно начинать основную программу ключевым словом begin. И сразу же пишем к нему завершающий end с точкой на конце - таковы правила языка Паскаль. Вся программа размещается между двумя этими ключевыми словами. 4. Сначала организуем ввод. Это два оператора. Первый оператор выводит так называемое "приглашение" - сообщает о том, что нужно ввести. Второй оператор - это сам ввод. 5. А теперь, как было сказано выше, организуем вывод результатов. Все это сделает один оператор вывода. Программа готова!
var a, b: real;
begin Write('Введите стороны прямоугольника: '); Readln(a, b); Writeln('Периметр равен ', 2 * (a + b), ', площадь равна ', a * b) end.
Тестовое решение: Введите стороны прямоугольника: 4 3.16 Периметр равен 14.32, площадь равна 12.64
Const a=10; type mas=array[1..a] of integer; mas1=array[1..3] of byte; var R, Q, P:mas; X:mas1; i:byte;
procedure Form(var R, Q, P:mas); var sr, sq, sp:byte; begin sr:=0; sq:=0; sp:=0; for i:=1 to a do begin if (R[i]>=2) and (R[i]<=4) then sr:=sr+R[i]; if (Q[i]>=2) and (R[i]<=4) then sq:=sq+R[i]; if (P[i]>=2) and (R[i]<=4) then sp:=sp+R[i]; end; x[1]:=sr; x[2]:=sq; x[3]:=sp; writeln('Massiv x'); for i:=1 to 3 do write(x[i]:3);
end;
begin randomize; for i:=1 to a do begin R[i]:=random(10); Q[i]:=random(10); P[i]:=random(10); end; writeln('Massiv r'); for i:=1 to a do write(R[i]:3); writeln; writeln('Massiv Q'); for i:=1 to a do write(Q[i]:3); writeln; writeln('Massiv P'); for i:=1 to a do write(P[i]:3); end.
1. Описываем нужные нам переменные - это будут стороны прямоугольника a и b. Поскольку нигде ничего о размерах сторон не сказано, придется предположить, что они не обязательно будут целыми , мы опишем эти переменные, как вещественные (real), что позволит работать и с нецелыми значениями.
2. Из геометрии нам известны формулы периметра прямоугольника P=2 x (a+b) и площади прямоугольника S=a x b. Можно описать переменные P, S (тоже real), но смысла в этом нет, поскольку значения P и S нужны только для вывода результатов, так что проще написать нужные выражения непосредственно в операторе вывода.
3. Итак, с описанием переменных закончили, можно начинать основную программу ключевым словом begin. И сразу же пишем к нему завершающий end с точкой на конце - таковы правила языка Паскаль. Вся программа размещается между двумя этими ключевыми словами.
4. Сначала организуем ввод. Это два оператора. Первый оператор выводит так называемое "приглашение" - сообщает о том, что нужно ввести. Второй оператор - это сам ввод.
5. А теперь, как было сказано выше, организуем вывод результатов. Все это сделает один оператор вывода. Программа готова!
var
a, b: real;
begin
Write('Введите стороны прямоугольника: '); Readln(a, b);
Writeln('Периметр равен ', 2 * (a + b), ', площадь равна ', a * b)
end.
Тестовое решение:
Введите стороны прямоугольника: 4 3.16
Периметр равен 14.32, площадь равна 12.64
type mas=array[1..a] of integer;
mas1=array[1..3] of byte;
var R, Q, P:mas;
X:mas1;
i:byte;
procedure Form(var R, Q, P:mas);
var sr, sq, sp:byte;
begin
sr:=0;
sq:=0;
sp:=0;
for i:=1 to a do
begin
if (R[i]>=2) and (R[i]<=4) then sr:=sr+R[i];
if (Q[i]>=2) and (R[i]<=4) then sq:=sq+R[i];
if (P[i]>=2) and (R[i]<=4) then sp:=sp+R[i];
end;
x[1]:=sr;
x[2]:=sq;
x[3]:=sp;
writeln('Massiv x');
for i:=1 to 3 do
write(x[i]:3);
end;
begin
randomize;
for i:=1 to a do
begin
R[i]:=random(10);
Q[i]:=random(10);
P[i]:=random(10);
end;
writeln('Massiv r');
for i:=1 to a do
write(R[i]:3);
writeln;
writeln('Massiv Q');
for i:=1 to a do
write(Q[i]:3);
writeln;
writeln('Massiv P');
for i:=1 to a do
write(P[i]:3);
end.