в if, что энтером отделен, нужно вписать else. помогите пожалуйста, а то что-то ничего на ум не приходит.
program lab5;
uses crt;
const n=10;
m=10;
var a,b:array [1..n,1..m] of longint;
c:array [1..n] of longint;
i,j,k:integer;
max,f:longint;
begin
clrscr;
randomize;
for i:=1 to n do
begin
f:=1;
for j:=1 to m do
begin
if i=j then f:=1 else
if j>i then f:=f*abs(j-i) else
a[i,j]:=(-1)*(100-f);
write(a[i,j]:7);
end;
writeln;
end;
writeln;
max:=a[1,1];
for j:=1 to m do
begin
for i:=1 to n do
if a[i,j]>max then max:=a[i,j];
write(max:7);
max:=a[1,1];
end;
writeln;
writeln;
for i:=1 to n do
begin
for j:=1 to m do
begin
b[i,j]:=a[n+1-i,n+1-j];
write(b[i,j]:7);
end;
writeln;
end;
repeat
until keypressed;
end.
Так у тебя уже есть там Else... Куда еще поставить-то надо, уточни...
если j<i. не пойму что будет результатом.
...for j:=1 to m do
begin
if i=j then f:=1 else
if j>i then f:=f*abs(j-i) else__________;
a[i,j]:=(-1)*(100-f);
write(a[i,j]:7);
end...
Так вот и будет результатом нижняя строка... Делал бы форматирование текста, все было бы видно:
for j:=1 to m do begin
if i=j then f:=1
else
if j>i then f:=f*abs(j-i)
else a[i,j]:=(-1)*(100-f);
write(a[i,j]:7);
end;
нужно было матрицу задать по формуле a[i,j]=(100-lj-il!)*(-1)
извини, но по твоему если i>j, то тогда факториал будет равен 1?
for j:=1 to m do begin
if i=j then f:=1
else
if j>i then f:=f*abs(j-i)
else a[i,j]:=(-1)*(100-f);
write(a[i,j]:7);
end;
А при чем здесь по-моему? Ты полностью ЗАДАНИЕ приведи, как тебе его дали, а не "типа, тут это надо было..."
Я, понимаешь ли, не вижу сквозь несколько тысяч километров, и через экран читать еще не научился... Я просто показал тебе, как компилятор воспринимает твою программу...
Diablo, вообще-то, это по-твоему ))
а так - какая разница, что больше - i или j?
надо делать
if i=j then...
else...
А если задание у тебя такое как ты показал, на что тебе эти if-ы тогда?
for i:=1 to n do begin
for j:=1 to m do begin
f := 1;
for k := 1 to abs(j - i) do f:=f*k; { <--- Вот тебе вычисление факториала }
a[i,j]:=(-1)*(100-f);
write(a[i,j]:7);
end;
writeln;
end;
знаешь в чем вся штука? я целый день доказывал своему преподу, что никаких условий кроме равенства i=j здесь не нужно. что модуль, он и в африке модуль, а потому разницы нету, что больше i или же j.
но все равно, спасибо что выделил время.
закрыть тему