var a,b,c,d:integer;
begin
writeln('鶴亀算問題を解きます。');
writeln('頭の総数を入力してください。');
readln(a);
writeln('次に足の総数を入力してください。');
readln(b);
c:=(b-2*a) div 2;
d:=(4*a-b) div 2;
writeln('鶴の頭数は', c,'で、亀の総数は', d,'ですね、簡単ですよ。hahaha');
var a,b:array[1..2,1..2] of real;
i,j:integer;
s:real;
begin
{第1部 行列aの入力}
for i:=1 to 2 do
for j:=1 to 2 do
begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
{第2部 逆行列bの計算}
for i:=1 to 2 do
s:=a[1,1]*a[2,2]-a[1,2]*a[2,1];
if s=0 then
writeln('逆行列は存在しません')
else
b[1,1]:=a[2,2]/s;
b[1,2]:=-s*a[1,2]/s;
b[2,1]:=-s*a[2,1]/s;
b[2,2]:=s*a[1,1]/s;
readln;
{第3部 行列aの出力}
writeln('行列aは');
for i:=1 to 2 do
begin
for j:=1 to 2 do write(a[i,j]:10:1);
writeln;
end;
readln;
{第4部 行列bの出力}
writeln('逆行列bは');
for i:=1 to 2 do
begin
for j:=1 to 2 do write(b[i,j]:10:1);
writeln;
end;
readln;
end.
var a,b,c:array[1..3,1..3] of real;
i,j,k:integer;
s:real;
begin
{第1部 行列aの入力}
for i:=1 to 3 do
for j:=1 to 3 do
for k:=1 to 3 do
begin
write('a[',i,',',j,',',k,']=');
readln(a[i,j,k]);
end;
{第2部 逆行列bの計算}
for i:=1 to 3 do
s:=a[1,1]*a[2,2]*a[3,3]+a[2,1]*a[3,2]*a[1,3]+a[3,1]*a[1,2]*a[2,3]
-a[3,1]*a[2,2]*a[1,3]-a[2,1]*a[1,2]*a[3,3]-a[1,1]*a[3,2]*a[2,3];
if s=0 then
writeln('逆行列は存在しません')
else
{第3部 行列aの出力}
writeln('行列aは');
for i:=1 to 3 do
begin
for j:=1 to 3 do
for k:=1 to 3 do write(a[i,j,k]:10:1);
writeln;
end;
readln;
{第4部 行列bの出力}
writeln('逆行列bは');
for i:=1 to 3 do
begin
for j:=1 to 3 do
for k:=1 to 3 do write(b[i,j,k]:10:1);
writeln;
end;
readln;
var a,b:array[1..3,1..3] of real;
i,j,k:integer;
s:real;
begin
{第1部 行列aの入力}
for i:=1 to 3 do
for j:=1 to 3 do
begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
{第2部 逆行列bの計算}
for i:=1 to 3 do
s:=a[1,1]*a[2,2]*a[3,3]+a[2,1]*a[3,2]*a[1,3]+a[3,1]*a[1,2]*a[2,3]
-a[3,1]*a[2,2]*a[1,3]-a[2,1]*a[1,2]*a[3,3]-a[1,1]*a[3,2]*a[2,3];
if s=0 then
writeln('逆行列は存在しません')
else
{第3部 行列aの出力}
writeln('行列aは');
for i:=1 to 3 do
begin
for j:=1 to 3 do write(a[i,j]:10:1);
writeln;
end;
readln;
{第4部 行列bの出力}
writeln('逆行列bは');
for i:=1 to 3 do
begin
for j:=1 to 3 do write(b[i,j]:10:1);
writeln;
end;
readln;
end.