bng453
21.05.2023 23:13

Дана программа на языке паскаля авс по решению слу методом гаусса. нужно написать комментарии к алгоритму программы, т.е. что мы делаем в каждой строке. умооляю procedure gay(n: integer; a: matrica; b: mass; var x: mass; var m: boolean); var i,j,p,h: integer; f,max,r,s: real; begin m: =false; for p: =1 to n do begin max: =abs(a[p,p]); h: =p; for i: =p+1 to n do if abs(a[i,p])> max then begin max: =abs(a[i,p]); h: =i; end; for j: =1 to n do begin r: =a[p,j]; a[p,j]: =a[h,j]; a[h,j]: =r; end; r: =b[p]; b[p]: =b[h]; b[h]: =r; for i: =p+1 to n do begin f: =a[i,p] / a[p,p]; for j: =p to n do a[i,j]: =a[i,j]-f*a[p,j]; b[i]: =b[i]-f*b[p]; end; end; if a[n,n]=0 then begin if b[n]=0 then writeln('бесконечно много решений') else writeln('решить невозможно') end else begin m: =true; for i: =n downto 1 do begin s: =0; for j: =i+1 to n do begin r: =a[i,j]*x[j]; s: =s+r; end; x[i]: =(b[i]-s)/ a[i,i]; end; end; end;

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
akovlevavika444
29.12.2020 04:20
Текст приведенной ниже программы организует ввод данных и запись их в типизированный файл. Для завершения ввода в качестве названия надо ввести символ "звездочка" ( * ).

type
  song=record
  name,style:string[20];
  duration:real
  end;
var
  f:file of song;
  r:song;
begin
  Assign(f,'MySongs.dat');
  Rewrite(f);
  Writeln('Вводите данные в порядке "наименование, стиль, длительность');
  Writeln('Для окончания ввода укажите символ * вместо наименования');
  repeat
    Readln(r.name);
    if r.name<>'*' then begin
      Readln(r.style);
      Readln(r.duration);
      Write(f,r)
    end
  until r.name='*';
  Close(f)
end.
0,0(0 оценок)
Ответ:
FlowerBlue17
03.01.2020 00:03
Переведем 57 в двоичное:
57 / 2 = 28 (в остатке 1)
28 / 2 = 14 (в остатке 0)
14 / 2 = 7 (в остатке 0)
7 / 2 = 3 (в остатке 1)
3 / 2 = 1 (в остатке 1)
1 / 2 = 0 (в остатке 1)
57(10) = 111001(2)
Переведем 48 в двоичное:
48 / 2 = 24 (в остатке 0)
24 / 2 = 12 (в остатке 0)
12 / 2 = 6 (в остатке 0)
6 / 2 = 3 (в остатке 0)
3 / 2 = 1 (в остатке 1)
1 / 2 = 0 (в остатке 1)
48(10) = 110000(2)

111001


110000

Первый бит в обоих случаях равен 1, значит, первый бит маски тоже равен 1.
Второй бит в обоих случаях равен 1, значит, второй бит маски тоже равен 1.
Третий бит в IP-адресе равен 1, а в адресе сети равен 0, значит, третий бит маски равен 0.
Если третий бит маски равен нулю, то все остальные биты маски тоже равны нулю.
Но при переводе десятичных чисел в двоичные мы получили 6-битовое двоичное число, а нам нужно 8-битовое. Значит, слева добавляем два нуля.

00111001


00110000

Свойство маски гласит, что в ней сначала до некоторого разряда записаны только единицы, а затем только нули. Значит, первый и второй бит в новом представлении маски равны 1.
Искомая маска: 11110000(2).
Переведем 11110000 в десятичное число.
(1*2^7)+(1*2^6)+(1*2^5)+(1*2^4)+(0*2^3)+(0*2^2)+(0*2^1)+(0*2^0)=128+64+32+16=240
ответ: 240(10)
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота