Создайте двухмерный массив. Заполните его случайными числами и покажите на экран. Пользователь выбирает количество сдвигов и положение (влево, вправо, вверх, вниз). Выполнить сдвиг массива и показать на экран полученный результат. Сдвиг циклический. Например, если мы имеем следующий массив
1 2 0 4 5 3
4 5 3 9 0 1
и пользователь выбрал сдвиг на 2 разряда вправо, то мы получим
5 3 1 2 0 4
0 1 4 5 3 9.
с++
#include <iomanip>
using namespace std;
int main() {
int n,k,m;
cout<<"N = "; cin>>n;
cout<<endl;
if (n%2!=0) {
cout<<"недопустимое значение N: "<<n<<endl;
return(1);
}
cout<<setw(12)<<"gooses"<<setw(10)<<"rabbits"<<endl;
m=n/4; k=(n-m*4)/2;
while (m>=0) {
if (k>0) cout<<setw(10)<<k;
else cout<<setw(10)<<"--";
if (m>0) cout<<setw(10)<<m;
else cout<<setw(10)<<"--";
cout<<endl;
m--; k+=2;
}
system("pause");
return(0);
}
//PascalABC.NET 3.2 сборка 1318
Const
n=10;
Var
m,fm:real;
mc,fmc,i:integer;
val:array[1..n] of real;
begin
for i:=1 to n do
begin
readln(val[i]);
if val[i]>0 then
begin
inc(fmc);
fm+=val[i];
end
else
if val[i]<0 then
begin
inc(mc);
m+=abs(val[i]);
end
else
begin
writeln('Funny joke!(no)');
exit;
end;
end;
writeln('Male average=',m/mc);
writeln('Female average=',fm/fmc);
end.