С вложенных циклов выведите на экран матрицу с n=5 1) 2) 3)
11111 . . 11111. .11111 .
11111 . .00000 . .22222.
11011. .11111 . .33333.
11111 . .00000. .44444 .
11111 . .11111 . .55555.
4) 5)
.10000. .00001.
.01000. .00010.
.00100. .00100.
.00010. .01000.
.00001. .10000.
Сначала сделал с рекурсивной функции, но затруднение было только с суммой элементов, по этому написал через цикл как впрочем и должно быть.
Console.WriteLine("Введите число");
int x = Convert.ToInt32(Console.ReadLine());
int y = x;
int sum = 0;
for (int i = 0; i < 4; i++)
{
y = x % 10;
x = x / 10;
Console.Write(y);
sum = sum + y;
}
Console.Write(" = " + sum);
Console.ReadLine();
var
A, Ap, Ao: array [1..14] of Integer;
i, c, cp, co: Integer;
s: Real;
begin
Randomize;
WriteLn ('Mассив:');
for i := Low (A) to High (A) do begin
A [i] := Random (201) - 100;
Write (A [i], ' ');
end;
cp := 0;
co := 0;
for i := Low (A) to High (A) do begin
if A [i] > 0 then begin
cp := cp + 1;
Ap [cp] := A [i];
end else begin
co := co + 1;
Ao [co] := A [i];
end;
end;
c := Low (A);
for i := 1 to cp do begin
A [c] := Ap [i];
c := c + 1;
end;
for i := 1 to co do begin
A [c] := Ao [i];
c := c + 1;
end;
WriteLn;
WriteLn ('Результат: ');
for i := Low (A) to High (A) do begin
Write (A [i], ' ');
end;
WriteLn;
WriteLn ('Количество положительных элементов массива = ', cp);
end.