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

×M]v]}uÙuõÓÅ××]W××Ý×]x]w]}uÙuýÝuõ×E××]WßW]5]}uÙuõÓE××]×Þ]w]}uÕuýíuõ×E×÷××N×]:]}uÙuýíuõÓ¥××]ÞW];]}tåuøÝuõ×u×ãu×çe×çu×ã×ã×çU×ãÅ×ã×çE×çÕ××^×_ ПРОГРАМИСТЫ

Показать ответ
Ответ:
6676228
6676228
07.07.2020 03:31
//Данная программа вычисляет детерминант матрицы
//PascalABC.NET 3.2 сборка 1318

    Var
  c:char;
  Reci:array of integer;
  ma:array of array of integer;
  n,nc,ip:integer;
  resf:real;

  function minor(ip,i,n:integer; var reci:array of integer):real;
  Var
    ic,j,c,ipp,icc:integer;
    res:real;
    b:boolean;
    arf:array[1..4] of integer;
  begin
  b:=true;
  c:=0;
  reci[ip]:=i;
  ipp:=ip+1;
  if ipp=nc-1 then
  begin
    for ic:=1 to n do
      begin
        for j:=1 to ip do
          if ic=reci[j] then
  b:=false;
          if b=true then
           begin
            inc(c);
            arf[c]:=ma[ipp,ic];
           end;
         b:=true;
        end;
       inc(ipp);
       for ic:=1 to n do
      begin
        for j:=1 to ip do
          if ic=reci[j] then
  b:=false;
          if b=true then
           begin
            inc(c);
            arf[c]:=ma[ipp,ic];
           end;
         b:=true;
        end;
       minor:=arf[1]*arf[4]-arf[2]*arf[3];
      end
      else
  begin
      for ic:=1 to n do
      begin
        for j:=1 to ip do
          if ic=reci[j] then b:=false;
         if b=true then
            res+=ma[ipp,ic]*power(-1,ipp+i)*minor(ipp,ic,n,reci);
           b:=true;
         end;
    minor:=res;
   end;
end;

procedure start();
Var
  i,j:integer;
begin
  write('Введите количество строк и столбцов:');
  readln(n);
  ip:=1;
  nc:=n;
  setlength(Reci,n+1);
  setlength(ma,n+1);
  for i:=1 to n do
  setlength(ma[i],n+1);
  writeln('Введите матрицу:');
  for i:=1 to n do
    for j:=1 to n do
      readln(ma[i][j]);
  for i:=1 to n do
    resf+=ma[ip][i]*power(-1,ip+i)*minor(ip,i,n,reci);
  writeln('Res:',resf);
end;

begin
repeat
readln(c);
until c in ['Z','z','Y','y'];
if c in ['Y','y'] then halt else start();
end.

Пример работы программы:
3 //введено ни z, ни y, повторяем ввод
z //продолжаем программу
Введите количество строк и столбцов:3
Введите матрицу:
9
1
2
8
3
7
4
6
5
Res:-183
0,0(0 оценок)
Ответ:
ovveall
ovveall
14.08.2020 17:52
Чтобы было удобнее, располагаем перед собой алфавит:


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


такое действие выполняем для каждой буквы в слове

Итак, шифруем слова:
ИНФОРМАЦИЯ => ЛРЧСУПГЩЛВ
КОМПЬЮТЕР => НСПТБХЗУ
ЧЕЛОВЕК => ЪЗОСЕЗН

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