// PascalABC.NET 3.2, сборка 1353 от 27.11.2016 // Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('n='); var k:=ReadInteger('Введите 1<k<=n:'); if (k>n) or (k<1) then exit; var a:=MatrRandomReal(n,n,1,20); a.Println(7,2); k-=1; var d:=a[k,k]; Writeln(n*7*'-'); for var j:=0 to n-1 do a[k,j]/=d; a.Println(7,2) end.
2. А пока в школах учат писать вот так. Хорошо видно, насколько школа отстает от современных технологий.
const nn=20; var a:array[1..nn,1..nn] of real; i,j,n,k:integer; d:real; begin Write('n= '); Read(n); Write('Введите 1<k<=n: '); Read(k); if (k>n) or (k<1) then exit; randomize; for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=19*random+1; Write(a[i,j]:7:2) end; Writeln end; d:=a[k,k]; for i:=1 to 7*n do Write('-'); Writeln; for j:=1 to n do a[k,j]:=a[k,j]/d; for i:=1 to n do begin for j:=1 to n do Write(a[i,j]:7:2); Writeln end end.
Program qq; var x, y, z, c, a, b: real; begin writeln('Введите стоимость билета бизнесс-класса:'); readln(x); if x > 0 then begin y:= x / 2; writeln('Введите количество оставшихся билетов бизнесс-класса, затем введите количество оставшихся билетов эконом-класса'); readln(a, b); if (a >=0) and (b >= 0) then begin c:= a*x + y*b; z:= (120*y + 40*x) - c ; writeln('Доход авиакомпании:', z); end else writeln('Решение невозможно'); end; end.
Вот так всё работает. 1. Не там поставили end; 2. лишнее else writeln('Решение невозможно'); 3. У меня ругался паскаль на то что в условия при and не взяты в круглые скобки. if (a >=0) and (b >= 0) then