De rezolvat in Pascal
1) Se dă un tablou bidimensional cu m linii şi n coloane, 1≤m,n≤50, cu componente întregi şi un număr întreg k. Se cere să se afişeze tabloul cu componentele mărite cu k. Exemplu: Date de intrare: m=2 n=3 k= 5 elemente: 1 2 3 Date de ieşire: 6 7 8 4 5 6 9 10 11
2)Se introduc două matrici cu m linii şi n coloane. Să se afişeze matricea sumă a celor două matricidate.
3) Se introduce o matrice cu m linii şi n coloane. Să se afişeze elementele astfel încât liniile să devină coloane. Exemplu: m=2, n=3 matricea 1 2 3 se va afişa 1 4 4 5 6 2 5 3 6
4) Să se afişeze suma şi produsul tuturor elementelor unei matrici cu m linii şi n coloane cu componente reale. Câte elemente sunt întregi? Exemplu: Date de intrare: m=2 n=2 matrice: 4 5 3 Date de ieşire: s=15 p=120 6 numere intregi 1 1 2
5) Dat un tablou bidimensional cu n linii şi n coloane, afişaţi cea mai mare componentă şi poziţiile pe care le ocupă. Exemplu: Date de intrare: n=2 matrice: 4 7 Date de ieşire: max=7 pozitii 1 2 2 2. 5 7
Răspunsuri la întrebare
1)
var
a: array[1..101,1..101] of integer;
i,j,n,m,k: integer;
begin
read(m);
read(n);
read(k);
for i:=1 to m do
for j:=1 to n do
begin
read(a[i,j]);
a[i,j]:=a[i,j]+k;
end;
for i:=1 to m do
begin
for j:=1 to n do
write(a[i,j],' ');
writeln();
end;
end.
2)
var
a,b,c: array[1..101,1..101] of integer;
i,j,n,m: integer;
begin
read(m);
read(n);
for i:=1 to m do
for j:=1 to n do
read(a[i,j]);
for i:=1 to m do
for j:=1 to n do
read(b[i,j]);
for i:=1 to m do
for j:=1 to n do
c[i,j]:=a[i,j]+b[i,j];
for i:=1 to m do
begin
for j:=1 to n do
write(c[i,j],' ');
writeln();
end;
end.
3)
var
a: array[1..101,1..101] of integer;
i,j,n,m: integer;
begin
read(m);
read(n);
for i:=1 to m do
for j:=1 to n do
read(a[i,j]);
for i:=1 to n do
begin
for j:=1 to m do
write(a[j,i],' ');
writeln();
end;
end.
4)
var
a: array[1..101,1..101] of real;
i,j,n,m,k: integer;
s,p: real;
begin
s:=0;
p:=1;
k:=0;
read(m);
read(n);
for i:=1 to m do
for j:=1 to n do
begin
read(a[i,j]);
s:=s+a[i,j];
p:=p*a[i,j];
if a[i,j]-trunc(a[i,j])=0 then
k:=k+1;
end;
write(s,' ');
write(p,' ');
write(k,' ');
end.
5)
var
a: array[1..101,1..101] of integer;
i,j,n,m,max: integer;
begin
max:=-1;
read(m);
read(n);
for i:=1 to m do
for j:=1 to n do
begin
read(a[i,j]);
if a[i,j]>max then
max:=a[i,j];
end;
for i:=1 to m do
for j:=1 to n do
if a[i,j]=max then
begin
write(i,' ',j);
writeln();
end;
end.