Vipnikavto58
?>

Разобрать программу n_2стр 118, используя ее как контрольный пример, написать программу вычисления площади треугольника ипериметра прямоугольнака s=(1/2)ah, P=2(a+b)​

Информатика

Ответы

tsatskina857
//PascalABC.NET (версия 3.1, сборка 1196 от 09.03.2016)
function
Transpose(a: array[,] of integer): array[,] of integer;
//Поворот на 90гр по часовой стрелке
begin
  var m := Length(a, 0);
  var n := Length(a, 1);
  Result := new integer[n, m];
  for var i := 0 to n-1 do begin
    for var j := 0 to m-1 do
      Result[i, j] := a[m-1-j, i];
  end;
end;

begin
  var n := ReadInteger('Введите n:');
//Заполнение матрицы NxN сл. числами и вывод на экран
  var a :=MatrixRandom(n, n);
  for  var i:=0 to n-1 do begin
    for var j:=0 to n-1 do
      Print(a[i,j]);
    println;
    end;
     println;

  Println('поворот влево на 90 гр');
  var b := Transpose(a);
  b:=Transpose(b);
  b:=Transpose(b);
  for  var i:=0 to n-1 do begin
    for var j:=0 to n-1 do
      Print(b[i,j]);
    println;
    end;
  println;

  Println('поворот вправо на 90гр');
  b := Transpose(a);
  for  var i:=0 to n-1 do begin
    for var j:=0 to n-1 do
      Print(b[i,j]);
    println;
    end;
 println;

 Println('поворот на 180 гр');
  b := Transpose(a);
  b := Transpose(b);
  for  var i:=0 to n-1 do begin
    for var j:=0 to n-1 do
      Print(b[i,j]);
    println;
    end;
end.
Skvik71
// PascalABC.NET 3.2, сборка 1401 от 14.03.2017
// Внимание! Если программа не работает, обновите версию!

1. Решение без проверки вводимых данных

begin
  var a,b:integer;
  Read(a,b);
  var P:=ArrFill(30,0);
  for var i:=a-1 to b-1 do P[i]:=2;
  P.Println
end.

Пример
2 10
0 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

2. Решение с контролем ввода

begin
  var a:=ReadInteger('Введите a от 1 до 30:');
  if a<1 then begin Writeln('Неверно'); Exit end;
  var b:=ReadInteger('Введите b от '+a.ToString+' до 30:');
  if (b<a) or (b>30) then begin Writeln('Неверно'); Exit end;
  var P:=ArrFill(30,0);
  for var i:=a-1 to b-1 do P[i]:=2;
  P.Println
end.

Пример
Введите a от 1 до 30: 2
Введите b от 2 до 30: 10
0 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

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

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

Разобрать программу n_2стр 118, используя ее как контрольный пример, написать программу вычисления площади треугольника ипериметра прямоугольнака s=(1/2)ah, P=2(a+b)​
Ваше имя (никнейм)*
Email*
Комментарий*