В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География

Задача: Ввести матрицю п*м а дійсними елементами. Елементи матриці, які належать проміжку [a,b] замінити на максимальний елемент матриці, решту елементів матрицi замінити на номер рядка, в якому знаходиться максимальний елемент.

Вивести матрицю в прямокутному вигляді.
В ПРОГРАМІ Algo
ів та 3 кращих відповідей

Показать ответ
Ответ:
den532
den532
27.04.2023 01:05
Если цепочки две, то выводится ближайшая. Пойдет?

//t1.txt должен быть в папке с программой
//Pascal
var
  f: text;
  numValue, Counts, n, c, t, i: integer;
begin
  assign(f, 't1.txt');
  reset(f);
  Counts := 0;
  c := 0;
  while not eof(f) do
    begin
      readln(f, n);
      if (c = 0) or (n = t) then
        c := c + 1
      else
        c := 1;
      t := n;
      if c > Counts then
      begin
          Counts := c;
          numValue := n
      end
    end;
  close(f);
  assign(f, 't2.txt');
  rewrite(f);
  writeln('Длина цепочки: ', Counts);
  for i := 1 to Counts do
    writeln(f, numValue);
  close(f)
end.

Pascal abc дан текстовый файл t1.txt, содержащий целые числа, не превышающие 30000. найти длину само
0,0(0 оценок)
Ответ:
nastia110228
nastia110228
01.09.2022 07:08
Const
  k = 3;
  p = 3;

var
  f: array [1..k, 1..p] of byte;
  mini: array [1..2] of byte := (1, 1);
  maxi: array [1..2] of byte := (1, 1);

procedure Swap(var a, b: integer);
var
  p: integer;
begin
  p := a; 
  a := b; 
  b := p;
end;

begin
  for i: byte := 1 to k do
  begin
    for j: byte := 1 to p do
    begin
      f[i, j] := random(10, 100);
      write(f[i, j]:3);
      if (f[mini[1], mini[2]] > f[i, j]) then
      begin
        mini[1] := i;
        mini[2] := j;
      end;
      if (f[maxi[1], maxi[2]] < f[i, j]) then
      begin
        maxi[1] := i;
        maxi[2] := j;
      end;
    end;
    writeln();
  end;
  writeln();
  
  swap(f[1, p], f[maxi[1], maxi[2]]);
  swap(f[p, 1], f[mini[1], mini[2]]);
  
  for i: byte := 1 to k do
  begin
    for j: byte := 1 to p do
      write(f[i, j]:3);
    writeln();
  end;
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота