Дан массив размера N (N>1). Осуществить циклический сдвиг элементов массива вправо на одну позицию (при этом A1 перейдет в A2, A2 — в A3, …, AN — в A1). C++
Program abc;Const n=3; m=3;Var a:array[1..n,1..m] of integer; b,y,i,j,sum:integer; srd:real; Begin Writeln('Введите числа массива: '); For i:=1 to n do For j:=1 to m do Begin Write('a[',i,',',j,']= '); Readln(a[i,j]); if a[i,j]>0 then begin sum:=sum+a[i,j]; inc(b); end else If a[i,j]<0 then Inc(y); End; If sum>0 then begin srd:=sum/1 b; Writeln('Среднее =',srd); end else Writeln('Нет положительных членов массива'); If y>0 then begin Writeln('Количество отрицательных элементов =',y); end else Writeln('Нет отрицательных членов массива');End.
Var i: integer; begin for i:=1 to 9 do write(i); writeln(10); for i:=0 to 8 do write(i); writeln(9); for i:=1 to 2 do write('0'); for i:=1 to 7 do write(i); writeln('8'); for i:=1 to 3 do write('0'); for i:=1 to 6 do write(i); writeln('7'); for i:=1 to 4 do write('0'); for i:=1 to 5 do write(i); writeln('6'); for i:=1 to 5 do write('0'); for i:=1 to 4 do write(i); writeln(5); for i:=1 to 6 do write('0'); for i:=1 to 3 do write(i); writeln('4'); for i:=1 to 7 do write('0'); for i:=1 to 2 do write(i); writeln(3); for i:=1 to 8 do write('0'); write('1');writeln('2'); for i:=1 to 9 do write('0'); writeln(1); end.
Как сделать более кратко не знаю. Но эта программа работает.
for i:=1 to 9 do write(i); writeln(10);
for i:=0 to 8 do write(i); writeln(9);
for i:=1 to 2 do write('0'); for i:=1 to 7 do write(i); writeln('8');
for i:=1 to 3 do write('0'); for i:=1 to 6 do write(i); writeln('7');
for i:=1 to 4 do write('0'); for i:=1 to 5 do write(i); writeln('6');
for i:=1 to 5 do write('0'); for i:=1 to 4 do write(i); writeln(5);
for i:=1 to 6 do write('0'); for i:=1 to 3 do write(i); writeln('4');
for i:=1 to 7 do write('0'); for i:=1 to 2 do write(i); writeln(3);
for i:=1 to 8 do write('0'); write('1');writeln('2');
for i:=1 to 9 do write('0'); writeln(1);
end.
Как сделать более кратко не знаю. Но эта программа работает.