dylanboy
02.06.2020 11:09

1. Что будет выведено на экран после выполнения программы: Program sluch;
var a,b,c,s:integer;
begin
a:=random (100,999);
writeln(a);
b:=a div 100;
c:=a mod 100 div 10;
s:=a mod 100 mod 10;
writeln ('сотни ', b);
writeln ('десятки ',c);
writeln ('единицы ', s)
end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
MashaZhukova12345
12.05.2022 16:10
// PascalABC.NET 3.3, сборка 1547 от 07.10.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var n:=ReadInteger('Количество строк/столбцов в матрице:');
  Writeln('*** Исходная матрица ***');
  var a:=MatrRandom(n,n,-99,99);
  a.Println(4); Writeln(4*a.ColCount*'-');
  var (s,p):=(0,BigInteger(1));
  for var i:=0 to n-1 do
    if (a[i,i]>0) and (a[i,i].IsEven) then s+=a[i,i]
    else
      if a[i,n-1-i].IsOdd then p*=a[i,n-i-1];
  Writeln(s*p)
end.

Пример
Количество строк/столбцов в матрице: 13
*** Исходная матрица ***
   1 -62  88  54  98 -68 -10 -69  39 -69 -83  32 -31
 -55 -57  51 -44 -15  -5   6  83  42  -9 -27  11  22
  -4 -61  -4  -7  -9  50  20  67  94 -57  24 -51  -1
  21  40 -21 -87 -17  62  61  52 -19  23 -66  45  41
 -93 -84 -82  58  47  16 -57 -23  35 -49  35 -54  40
 -33 -87   1 -49  99 -73 -92  85  73  65   5  30 -92
  10  50  69 -85  16 -38  48  49  44   5  50 -64  -5
 -92 -94 -78  85 -11  43  66  43  -4  49 -49 -70  23
 -93  38  55 -67 -50  13 -71  39 -93  -8   8  21  35
 -26  -2  90  22   8  51 -84   5 -81 -98  64  88 -24
  62  63 -35 -86 -98  18  85  92 -45 -89  94  11 -45
 -63 -92  55 -98  14  14 -35  54 -30 -31  53  74 -59
  -1 -85 -81  87  36  91 -55  74  51 -34 -25  93  -9

216716207400
0,0(0 оценок)
Ответ:
Егор1123321
31.12.2021 19:13
Procedure ShellStr(var s: string);
{ сортирует символы строки методом Шелла }
var
  i, j, n, step: integer;
  c: char;
begin
  s := Trim(s);
  n := Length(s);
  step := n div 2;
  while step > 0 do
  begin
    for j := n - step downto 1 do
    begin
      i := j;
      while i <= n - step do
      begin
        if s[i] > s[i + step] then
        begin
          c := s[i];
          s[i] := s[i + 1];
          s[i + 1] := c
        end;
        i := i + step
      end
    end;
    step := step div 2
  end
end;

procedure TrimNullsLeft(var s: string);
{ Усекает левые (незначащие нули) в строке s }
var
  i, n: integer;
begin
  i := 1; n := Length(s);
  while (s[i] = '0') do i := i + 1;
  s := Copy(s, i, n - i + 1)
end;

var
  p, ns: integer;
  s, M, N: string;
  ml, nl: integer;
  f: text;

begin
  Assign(f,'input.txt');
  Reset(f);
  Readln(f,s);
  Close(f);
  Assign(f,'output.txt');
  Rewrite(f);
  ns := Length(s);
  p := Pos(' ', s);
  ml := p - 1;
  M := Copy(s, 1, ml);
  ShellStr(M);
  TrimNullsLeft(M);
  ml := Length(M);
  N := Copy(s, p + 1, ns - p);
  ShellStr(N);
  TrimNullsLeft(N);
  nl := Length(N);
  if ml < nl then Writeln(f,M)
  else if nl < ml then Writeln(f,N)
  else if M < N then Writeln(f,M) else Writeln(f,N);
  Close(f);
  Writeln('Программа завершила работу')
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота