rublevaoe392
?>

Составить программу нахождения площади ромба в паскале

Информатика

Ответы

julya847
Var x,y:integer;
beginwriteln('Введите высоту');
read(x);
writeln('Введите основание');
read(y);
writeln('Площадь ромба = ', y*x);
end.
armsam76
// PascalABC.NET 3.2, сборка 1437 от 03.05.2017
// Внимание! Если программа не работает, обновите версию!

type
  tField=(char,integer);

function GetNewField(oldfld:tField;x,y:integer;var newfld:tField):boolean;
begin
  Result:=true;
  var xo:=oldfld[0];
  case xo.ToLower of
  'a':
    case x of
    -2,-1:Result:=false;
    1:newfld:=(Succ(xo),0);
    2:newfld:=(Succ(Succ(xo)),0)
    end;
  'b':
    case x of
    -2:Result:=false;
    -1:newfld:=(Pred(xo),0);
    1:newfld:=(Succ(xo),0);
    2:newfld:=(Succ(Succ(xo)),0)
    end;
  'g':
    case x of
    -2:newfld:=(Pred(Pred(xo)),0);
    -1:newfld:=(Pred(xo),0);
    1:newfld:=(Succ(xo),0);
    2:Result:=false
    end;
  'h':
    case x of
    -2:newfld:=(Pred(Pred(xo)),0);
    -1:newfld:=(Pred(xo),0);
    1,2:Result:=false
    end;
  else
    case x of
    -2:newfld:=(Pred(Pred(xo)),0);
    -1:newfld:=(Pred(xo),0);
    1:newfld:=(Succ(xo),0);
    2:newfld:=(Succ(Succ(xo)),0)
    end
  end;
  if Result=true then begin
    var yo:=oldfld[1];
    case yo of
    1:
      case y of
      -2,-1:Result:=false;
      else newfld:=(newfld[0],yo+y);
      end;
    2:
      case y of
      -2:Result:=false;
      else newfld:=(newfld[0],yo+y);
      end;
    7:
      case y of
      -2,-1,1:newfld:=(newfld[0],yo+y);
      2:Result:=false
      end;
    8:
      case y of
      -2,-1:newfld:=(newfld[0],yo+y);
      1,2:Result:=false
      end
    else
      newfld:=(newfld[0],yo+y);
    end
  end
end;

begin
  var ax:=Arr(-2,-1,1,2);
  var ay:=ax;
  var s:=ReadlnString('Укажите клетку, на которой стоит конь');
  var f1,f2:tField;
  f1:=(s[1],s[2].ToDigit);
  foreach var x in ax do
    foreach var y in ay do
      if abs(x)+abs(y)=3 then
        if GetNewField(f1,x,y,f2) then Print(f2[0]+f2[1]);
  Writeln
end.

Примеры
Укажите клетку, на которой стоит конь b1
a3 c3 d2

Укажите клетку, на которой стоит конь C5
A4 A6 B3 B7 D3 D7 E4 E6

Укажите все клетки шахматного поля, находящиеся под боем коня, заданного координатами на шахматном п
Adabir20156806

program raf105;

var fioa2:array[1..20] of string;

fioa1:string;

m1,g1,m2,g2,i,o:integer;

begin

write('Введите сегодняшнюю дату (месяц, год) через пробел: ');

readln(m1,g1);

g1:= g1*12;

m1:= m1+g1;

writeln;

for i:=1 to 20 do

begin

 write(i,'. Введите фамилию, имя, отчество и адрес сотрудника: ');

 readln(fioa1);

 write('   Дата поступления (месяц, год): ');

 readln(m2,g2);

 writeln;

 g2:= g2*12;

 m2:= m2+g2;

 if m1-m2>=36

   then begin

   o:= o+1;

   fioa2[o]:= fioa1;

   end;

end;

writeln('Сотрудники которые проработали не менее трёх лет:');

for i:=1 to o do

writeln(i,'. ',fioa2[i]);

end.

Язык программирования PascalABC

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Составить программу нахождения площади ромба в паскале
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

gresovanatalya
Aliferenko
iivanov54
Yurii537
daskal83
Руслан1360
spikahome
sayfullinmr
stasletter
Paikina Natalya30
maksimovskiy7657
fox-cab3444
Екатерина655
Александр734
Иванович-Васильевна1153