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

Методы приближённого расчёта коэффициентов весомости (приоритетов) критериев и максимального собственного числа матрицы парных сравнений. как рассчитываются приоритеты вариантов по каждому критерию?

👇
Открыть все ответы
Ответ:
kseshkaShkolnikova
kseshkaShkolnikova
16.12.2021
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016
const
  n=5;
type
  Matrix=array[1..n,1..n] of integer;

procedure DummySchool(var a:Matrix);
begin
  Writeln('Ввод элементов матрицы');
  for var i:=1 to n do begin
    Write(n,' элементов строки ',i,': ');
    for var j:=1 to n do Read(a[i,j]);
    end;
  Writeln('Сформирована матрица ',n,'x',n);
  for var i:=1 to n do begin
    for var j:=1 to n do Write(a[i,j]:5);
    Writeln
    end
end;

begin
  var B:Matrix;
  DummySchool(B);
  var sn:=0;
  var sp:=0;
  for var i:=1 to n do
    for var j:=1 to n do
      if B[i,j]<0 then sn+=B[i,j]
      else
        if B[i,j]>0 then sp+=B[i,j];
  Writeln('Сумма отрицательных ',sn);
  Writeln('Сумма положительных ',sp)
end.

Тестовое решение:
Ввод элементов матрицы
5 элементов строки 1: 6 23 -5 13 9
5 элементов строки 2: 42 0 -38 16 37
5 элементов строки 3: -5 -18 3 11 8
5 элементов строки 4: 9 13 -11 0 3
5 элементов строки 5: 19 -17 0 15 5
Сформирована матрица 5x5
    6   23   -5   13    9
   42    0  -38   16   37
   -5  -18    3   11    8
    9   13  -11    0    3
   19  -17    0   15    5
Сумма отрицательных -94
Сумма положительных 232
4,7(81 оценок)
Ответ:
astrafikal
astrafikal
16.12.2021
Var
  count, i, d1, d2, d3, d4, d5, d6: integer;
const
  MIN = 189980;
  MAX = 205505;
begin
  count := 0;
  for i := MIN to MAX do
    begin
      d1 := i div 100000;
      d2 := i mod 100000 div 10000;
      d3 := i mod 10000 div 1000;
      d4 := i mod 1000 div 100;
      d5 := i mod 100 div 10;
      d6 := i mod 10;
      if ( (d6 * 100000) + (d5 * 10000) + (d4 * 1000) + (d3 * 100) + (d2 * 10) + d1 ) = i 
      then
        count := count + 1;
    end;
  writeln('в промежутке от ', MIN, ' до ', MAX, ' ', count, ' счастливых билетов');
end.
4,5(85 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ