М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Kirakler2000
Kirakler2000
13.04.2023 05:32 •  Информатика

Дан двумерный массив a размером n*n. написать программу определения номера столбца с максимальной суммой элементов. дан двумерный массив а размером n*n. в каждой строке изменить значения элементов, стоящих за минимальным элементом этой строки, на 1

👇
Ответ:
Аля16111
Аля16111
13.04.2023

Обе програмки проверены на АВС Паскале. Работают :)

 

Program User6165_1;
const n=10;
var
  a:array[1..n,1..n] of integer;
  stosum:array[1..n] of integer;//массив для хранения сумм столбцов
  i,j,nomer,sum : integer;
begin
  Randomize;
  for i:=1 to n do
    for j:=1 to n do
      a[i,j]:= Random(100); //заполняем массив
  writeln('*** alphaues is thinking... ***');
  for j:=1 to n do
    begin
      sum:=0;  
      for i:=1 to n do
        sum:=sum+a[i,j]; // находим сумму столбца
      stosum[j]:=sum;
    end;
  nomer:=1;
  sum:=stosum[1];
  for j:=1 to n do
    begin
      if sum<stosum[j] then sum:=stosum[j];
      nomer:=j;
    end;
  writeln;
  for i:=1 to n do
    begin
      for j:=1 to n do
        write(a[i,j]:5);//выводим массив
      writeln;
    end;
    writeln('*** столбец с максимальной суммой - ',nomer,'-й');
end.

Program User6165_2;
const n=10;
var
  a:array[1..n,1..n] of integer;
  stosum:array[1..n] of integer;//массив для хранения сумм столбцов
  i,j,nomer,min : integer;
begin
  Randomize;
  for i:=1 to n do
    for j:=1 to n do
      a[i,j]:= Random(100); //заполняем массив
  writeln('*** alphaues is thinking... ***');
  writeln;
  for i:=1 to n do
    begin
      for j:=1 to n do
        write(a[i,j]:5);//выводим массив
      writeln;
    end;
  for i:=1 to n do
    begin
      min:=a[i,1];  
      nomer:=1;
      for j:=1 to n do
        if min>a[i,j] then
        begin
          min:=a[i,j];
          nomer:=j;
        end;
      if nomer<n then
      begin
        a[i,nomer+1]:=1;
        writeln(i,'-я строка: мин. элемент - ',nomer,'-й. Следующий заменён на 1.');
      end
      else
        writeln(i,'-я строка: мин. элемент - ',nomer,'-й. Это последний элемент в строке.');
    end;
end.

4,7(47 оценок)
Открыть все ответы
Ответ:
ZnAnIjAbro
ZnAnIjAbro
13.04.2023
Все сильнее и сильнее высокие технологии входят в нашу жизнь. Компьютеризированные телескопы, множество гаджетов- это не воспаленная фантазия писателей, а наше время. Одной из таких "фантастических чуд"- роботы. Роботы все чаще и чаще заменяют человека на множествах работ, где "железному другу" проще, чем человеку. Посредством алгоритмов роботы решают самые запутанные задачи. К примеру, роботизированный станок используется на множествах фабрик, от производства конфет и до заводов по сборке автомобилей. Почти каждая деталь сделана специальным станком, подчиняющийся алгоритмам и командам, созданных человеком. 
4,6(8 оценок)
Ответ:
Тян255
Тян255
13.04.2023
Перевод целого числа из десятичной системы счисления в систему с другим основанием делается путем последовательного целочисленного деления числа на основание системы с запоминанием остатков. Практика показывает, что если надо сделать перевод десятичного числа в системы по основанию 16, 8 и 2, то наименьшие трудозатраты получаются, когда перевод начинают с шестнадцатиричной системы, поскольку количество делений получается минимальным.
600 / 16 = 37 и остаток 8.
37 / 16 = 2 и остаток 5
Выписываем числа в обратном порядке, получаем 258.
Итак, 600 (10) = 258 (16).
Для перехода к двоичной системе каждую цифру шестнадцатиричного числа записываем в виде 4х разрядного двоичного числа (тетрады):
258 (16) = 0010 0101 1000 (2) или просто 1001011000 (незначащие нули опускаем).
Для перехода к восьмеричной системе разбиваем справа налево двоичный код на триады (т.е. по три двоичных разряда) и каждую триаду заменяем восьмеричной цифрой.
1001011000 (2) = 1 001 011 000 (2) = 1130 (8)
4,6(80 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ