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

Берилген ис аркет акпарат беруши немесе кабылдаушыга катыстыайтылганын аныктаныз:компьютер акпарат берди.Мугалим сабак тусиндирди.Окушы мукият тындады.балалар теледидар корди.Аспазшы тамактын дамин татты ​

Показать ответ
Ответ:
SashaD02
SashaD02
20.03.2020 09:25
Var
  f: text;
  i, j, n, n1: integer;
  matrix: array[,] of real;
begin
  assign(f, 'informat8.txt');
  reset(f);
  //найдём количество строк в матрице
  while not eof(f) do
   begin
    readln(f);
    inc(n);
  end;
  writeln('исходная матрица размерности ', n, 'x', n);
  //инициализируем массив (размерность узнали выше)
  matrix := new real[n, n];
  reset(f);
  // далее работаем с матрицей размерности [0..n-1] (инициализация происходит, начиная с 0)
  for i := 0 to n - 1 do
  begin
    for j := 0 to n - 1 do
    begin
      read(f, matrix[i, j]);
      write(matrix[i, j]:8:2);
    end;
    readln(f);
    writeln;
  end;
  writeln;
  n1 := 0;
  for i := 0 to n - 1 do
    for j := 0 to n - 1 do
      if matrix[i, j] < 0 then inc(n1);
  if n1 > round(n * n / 2) then
  begin
    writeln('Отрицательных элементов больше половины');
    //удваиваем элементы в чётных строках
    for i := 0 to n - 1 do
    begin
      if odd(i) then begin
        for j := 0 to n - 1 do
           matrix[i, j] := matrix[i, j] * 2;
      end;
    end;
  end else
  begin
    writeln('Отрицательных элементов меньше половины или ровно половина');
    //удваиваем элементы последнего столбца
    for i := 0 to n - 1 do
      matrix[i, n - 1] := matrix[i, n - 1] * 2;
  end;
    writeln('результирующая матрица');
  for i := 0 to n - 1 do  begin
    for j := 0 to n - 1 do
      write(matrix[i, j]:8:2);
    writeln;
  end;
end.

Результат работы:


Написать программу в паскаль или исправить ошибку в моей программе. в матрице имеются как положитель
0,0(0 оценок)
Ответ:
ulianiabelka
ulianiabelka
13.08.2020 21:42

а) исполнился 2 раза

б) исполнился 2 раза

в) исполнился 3 раза

Объяснение:

Не совсем понял суть вопроса, но, скорее всего, задача состоит в том, чтобы подсчитать число итераций (количество прохождений цикла), поэтому, распишу такую постановку вопроса

а) for i:=1 to 2 do

В данном цикле переменная i принимает значение 1 и проводит итерации (повторения) до тех пор, пока не дойдёт до значения 2.

- первый проход (i равно единице)

- второй проход (i равно двум)

- конец

То есть, в этой циклической конструкции код исполнился 2 раза (т.к. i увеличивалось с единицы до двух)

б) for i:=2 to 3 do

В данном цикле переменная i принимает значение 2 и проводит итерации (повторения) до тех пор, пока не дойдёт до значения 3.

- первый проход (i равно двум)

- второй проход (i равно трём)

- конец

То есть, в этой циклической конструкции код исполнился 2 раза (т.к. i увеличивалось с двух до трёх)

в) for i:=1 to 3 do

В данном цикле переменная i принимает значение 1 и проводит итерации (повторения) до тех пор, пока не дойдёт до значения 3.

- первый проход (i равно единице)

- второй проход (i равно двум)

- третий проход (i равно трём)

- конец

То есть, в этой циклической конструкции код исполнился 3 раза (т.к. i увеличивалось с единицы до трёх)

Приношу извинения за то, что на русском языке, но украинский я не знаю :)

Надеюсь и правильно понял суть вопроса

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота