Другие языки программирования и технологии
Помогите Паскаль АВС
Даны упорядоченные по возростанию массивы А [1..n] и B[1..m].Составить программу, которая из этих двух массивов делает третий С, тоже упорядоченный в возрастющем порядке!
uses crt;
var
a: array [1..50] of integer;
b: array [1..50] of integer;
c: array [1..100] of integer;
i,an,bn,cn,ai,bi,ci: integer;
begin
write('an, bn = ');
readln(an,bn);
cn:=an+bn;
writeln('Ýëåìåíòû ìàññèâà a: ');
for i:=1 to aN do begin
a[i]:=i; //random(51);
write(a[i],' '); end;
writeln;
writeln('Ýëåìåíòû ìàññèâà b: ');
for i:=1 to bN do begin
b[i]:=2*i; //random(51);
write(b[i],' '); end;
writeln;
ci := 1;
ai := 1;
bi := 1;
while (ai<=aN) and (bi<=bN) do
begin
if a[ai]<b[bi] then
begin
c[ci] := a[ai];
ai:=ai+1;
end
else
begin
c[ci] := b[bi];
bi:=bi+ 1;
end;
ci:=ci+ 1;
end;
while ai<=aN do
begin
c[ci] := a[ai];
ai:=ai+1;
ci:=ci+ 1;
end;
while bi<=bN do
begin
c[ci] := b[bi];
bi:=bi+ 1;
ci:=ci+ 1;
end;
writeln('Ðåçóëüòàò ñëèÿíèÿ: ');
for
i:=1 to cN do
write(c[i],' ');
end.
var
a: array [1..50] of integer;
b: array [1..50] of integer;
c: array [1..100] of integer;
i,an,bn,cn,ai,bi,ci: integer;
begin
write('an, bn = ');
readln(an,bn);
cn:=an+bn;
writeln('Ýëåìåíòû ìàññèâà a: ');
for i:=1 to aN do begin
a[i]:=i; //random(51);
write(a[i],' '); end;
writeln;
writeln('Ýëåìåíòû ìàññèâà b: ');
for i:=1 to bN do begin
b[i]:=2*i; //random(51);
write(b[i],' '); end;
writeln;
ci := 1;
ai := 1;
bi := 1;
while (ai<=aN) and (bi<=bN) do
begin
if a[ai]<b[bi] then
begin
c[ci] := a[ai];
ai:=ai+1;
end
else
begin
c[ci] := b[bi];
bi:=bi+ 1;
end;
ci:=ci+ 1;
end;
while ai<=aN do
begin
c[ci] := a[ai];
ai:=ai+1;
ci:=ci+ 1;
end;
while bi<=bN do
begin
c[ci] := b[bi];
bi:=bi+ 1;
ci:=ci+ 1;
end;
writeln('Ðåçóëüòàò ñëèÿíèÿ: ');
for
i:=1 to cN do
write(c[i],' ');
end.
i := 1;
j := 1;
k := 1;
while (i <= n) and (j <= m) do begin
if a[i] <= b[j] then begin
c[k] := a[i];
inc(i)
end else begin
c[k] := b[j];
inc(j)
end;
inc(k)
end;
while i <= n do begin
c[k] := a[i];
inc(i);
inc(k)
end;
while j <= m do begin
c[k] := b[j];
inc(j);
inc(k)
end;
j := 1;
k := 1;
while (i <= n) and (j <= m) do begin
if a[i] <= b[j] then begin
c[k] := a[i];
inc(i)
end else begin
c[k] := b[j];
inc(j)
end;
inc(k)
end;
while i <= n do begin
c[k] := a[i];
inc(i);
inc(k)
end;
while j <= m do begin
c[k] := b[j];
inc(j);
inc(k)
end;
Программа к задачи про умножение и сложение матриц
Const Max=50;
type
matrix = array [1..Max,1..Max] of Double;
Var AA,BB,CC,DD,EE,FF: matrix;
ii,jj,kk,nn,mm,ll : integer;
Summa : double;
procedure umnoj(AAA,BBB:matrix; var CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
for jj:=1 to nn do
begin
Summa:= 0;
for ll:= 1 to nn do
Summa:= Summa + AAA[ii,ll]*BBB[ll,jj];
CCC[ii,jj] := Summa;
end;
end;
procedure print(CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
begin
for jj:=1 to nn do
write(CCC[ii,jj]:8:2);
writeln;
end;
end;
procedure sum(AAA,BBB:matrix; var CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
for jj:=1 to nn do
begin
CCC[ii,jj]:= AAA[ii,jj]+BBB[ii,jj];
end;
end;
procedure sumE(AAA:matrix; var CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
for jj:=1 to nn do
begin
if ii=jj then CCC[ii,jj]:= AAA[ii,jj]+1
else
CCC[ii,jj]:= AAA[ii,jj];
end;
end;
begin
write('Введите размерность матриц n (<=50)--> ');
readln(NN);
writeln('Введите 1-ю матрицу (A):');
for ii:=1 to nn do
for jj:=1 to nn do
begin
write('Введите A[',ii,',',jj,'] --> ');
readln(AA[ii,jj]);
end;
writeln('Введите 2-ю матрицу (X):');
for ii:=1 to nn do
for jj:=1 to nn do
begin
write('Введите X[',ii,',',jj,'] --> ');
readln(BB[ii,jj]);
end;
writeln('A');
print(AA);
writeln('X');
print(BB);
umnoj(AA,BB,CC); //AX
writeln('AX');
print(CC);
writeln('XA');
umnoj(BB,AA,DD); //XA
print(DD);
writeln('AX+XA');
sum(CC,DD,EE);
print(EE);
sumE(EE,FF);
writeln('AX+XA+E');
print(FF);
end.
Const Max=50;
type
matrix = array [1..Max,1..Max] of Double;
Var AA,BB,CC,DD,EE,FF: matrix;
ii,jj,kk,nn,mm,ll : integer;
Summa : double;
procedure umnoj(AAA,BBB:matrix; var CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
for jj:=1 to nn do
begin
Summa:= 0;
for ll:= 1 to nn do
Summa:= Summa + AAA[ii,ll]*BBB[ll,jj];
CCC[ii,jj] := Summa;
end;
end;
procedure print(CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
begin
for jj:=1 to nn do
write(CCC[ii,jj]:8:2);
writeln;
end;
end;
procedure sum(AAA,BBB:matrix; var CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
for jj:=1 to nn do
begin
CCC[ii,jj]:= AAA[ii,jj]+BBB[ii,jj];
end;
end;
procedure sumE(AAA:matrix; var CCC:matrix);
var
ii,jj,ll : integer;
begin
for ii:=1 to nn do
for jj:=1 to nn do
begin
if ii=jj then CCC[ii,jj]:= AAA[ii,jj]+1
else
CCC[ii,jj]:= AAA[ii,jj];
end;
end;
begin
write('Введите размерность матриц n (<=50)--> ');
readln(NN);
writeln('Введите 1-ю матрицу (A):');
for ii:=1 to nn do
for jj:=1 to nn do
begin
write('Введите A[',ii,',',jj,'] --> ');
readln(AA[ii,jj]);
end;
writeln('Введите 2-ю матрицу (X):');
for ii:=1 to nn do
for jj:=1 to nn do
begin
write('Введите X[',ii,',',jj,'] --> ');
readln(BB[ii,jj]);
end;
writeln('A');
print(AA);
writeln('X');
print(BB);
umnoj(AA,BB,CC); //AX
writeln('AX');
print(CC);
writeln('XA');
umnoj(BB,AA,DD); //XA
print(DD);
writeln('AX+XA');
sum(CC,DD,EE);
print(EE);
sumE(EE,FF);
writeln('AX+XA+E');
print(FF);
end.
Похожие вопросы
- Паскаль АВС. Информатика 7 класс. ПОМОГИТЕ ПОЖАЛУЙСТА!!! ДО КОНЦА ОСАЛОСЬ 3.5 ЧАСА!
- ПОМОГИТЕ С ИНФОРМАТИКОЙ ПОЖАЛУЙСТА !!!паскаль авс
- Срочно задачи по Паскалю-АВС!!!
- Решить задачи в Паскале АВС
- Напишите пожалуйста в паскале АВС программы
- помогите. паскаль. приведите пример програмы в паскале,любую program P1 var и т.д.
- Товарищи программисты на Delphi и Pascal помогите девушке!!!)) вопрос глупый..насчет паскаля..
- Нужно написать программы в Паскале! Массивы! Срочно! Помогите!
- Программа на паскале! Помогите(бесплатно)
- Помогите записать на языке паскаля.
что здесь написано?