Я б написала так, в цикл while добавим счётчик суммы и произведения, s и p соответственно (Первоначально, s := 0; p := 1). Считаем всё это, пока n > 0. Затем в конце просто выводим сумму и произведение)
program mimi;
var n, p, s:integer;
begin
read(n);
s := 0;
p := 1;
while n > 0 do begin
s := s + n mod 10;
p := p*(n mod 10);
n := n div 10;
end;
writeln(s);
writeln(p);
<span>end.</span>
Пойду по пути лени) У тебя в строке 12 условие
if ( i != 2 && j != 1 )
Как мы знаем, если используется && (логическое И), то мы выполняем тело условия в том случае, когда обе части выражения дадут 1 (или true). Так вот. Когда у тебя выполняется цикл по 3 строке. У тебя i = 2, а вот j меняется. Но т. к первая часть выражения i != 2 всегда дает 0 (или false) условие не выполняется не для кого)
Сколько всего бусин и кинь фотку
Var N1:array[1..10] of integer;
N2:array[1..15] of integer;
R1:array[1..10] of integer;
R2:array[1..15] of integer;
min1, min2, max1, max2, i:integer;
R1min, R2min, R1max, R2max:integer;
begin
min1:=500;
min2:=500;
max1:=0;
max2:=0;
randomize;
for i:=1 to 10 do
N1[i]:=random(900)+100;
for i:=1 to 15 do
N2[i]:=random(900)+100;
for i:=1 to 10 do
R1[i]:=random(500);
for i:=1 to 15 do
R2[i]:=random(500);
for i:=1 to 10 do
if R1[i]<min1 then
begin
min1:=R1[i];
R1min:=i;
end else
begin
if R1[i]>max1 then
begin
max1:=R1[i];
R1max:=i;
end;
end;
for i:=1 to 15 do
if R2[i]<min2 then
begin
min2:=R2[i];
R2min:=i;
end else
begin
if R2[i]>max2 then
begin
max2:=R2[i];
R2max:=i;
end;
end;
writeln('v 1 taxoparke min ', N1[R1min]);
writeln('vo 2 taxoparke min ', N2[R2min]);
writeln('v 1 taxoparke max ', N1[R1max]);
writeln('vo 2 taxoparke max ', N2[R2max]);
write('N1 ');
for i:=1 to 10 do
write(N1[i], ' ');
writeln;
write('R1 ');
for i:=1 to 10 do
write(R1[i]:3, ' ');
writeln;
write('N2 ');
for i:=1 to 15 do
write(N2[i], ' ');
writeln;
write('R1 ');
for i:=1 to 15 do
write(N1[i]:3, ' ');
writeln;
end.
var
x: string;
arr: array of char;
begin
readln(x);
arr := x.Split(' ')[1].ToCharArray();
System.Array.Reverse(arr);
writeln(length(arr), ' ', new string(arr));
end.
---------------------------------------
var
c: array of integer := (10, 20, 10, 30, 40, 50, 55, 1, 5, 9, 4, 3, 2);
r, q, s: real;
i, a, b: byte;
begin
q := 1;
i := 1;
r := c.Min();
while (i < length(c)) do
begin
q *= c[i];
i += 2;
end;
readln(a, b);
s := b - a - 1;
writeln('T = ', (R / Q + 1) + S);
end.
-----------------------------
const
k = 5;
p = 5;
var
f: array [1..k, 1..p] of string;
o: real;
df: byte;
begin
for i: byte := 1 to k do
begin
for j: byte := 1 to p do
begin
f[i, j] := random(10, 99).ToString();
write(f[i, j]:3);
if (j >= 7 - i) then
begin
o += integer.Parse(f[i, j]);
df += 1;
f[i, j] := '██';
end;
end;
writeln();
end;
writeln();
for i: byte := 1 to k do
begin
for j: byte := 1 to p do
write(f[i, j]:3);
writeln();
end;
writeln(o / df);
end.