Перевод паскаля на C#
Формулировка задачи:
var
a1,a2,x,i,j,n:integer;
begin
readln(a1,n);
for j:=a1 to n do
begin
for i:=1 to j-1 do
if j mod i=0 then
a1:=a1+i;
for x:=1 to a1-1 do
if a1 mod x =0 then
a2:=a2+x;
if (a2=j) and (j<>a1) then writeln(j,' ',a1);
a1:=0;
a2:=0;
end;
write('end');
readln;
end. int a1 = Convert.ToInt32(Console.ReadLine());
int n = Convert.ToInt32(Console.ReadLine());
int a2, x, i, j;
a2 = 0;
for (j = a1; j <= n;)
{
for (i = 1; i <= j - 1; )
{
if (j%i==0)
{
a1 = a1 + i;
}
}
for (x=1;x<=a1-1;)
{
if (a1%x==0)
{
a2 = a2 + x;
}
}
if (a2==j||j!=a1)
{
Console.WriteLine(j + " " + a1);
}
}
Console.ReadKey();
}Решение задачи: «Перевод паскаля на C#»
textual
Листинг программы
int a1 = int.Parse(Console.ReadLine());
int n = int.Parse(Console.ReadLine());
int a2 = 0;
for (int j = a1; j < n; j++)
{
for (int i = 1; i < j - 1; i++)
{
if (j % i == 0)
{
a1 = a1 + i;
}
}
for (int x = 1; x < a1 - 1; x++)
{
if (a1 % x == 0)
{
a2 = a2 + x;
}
}
if (a2 == j && j != a1)
{
Console.WriteLine(j + " " + a1);
}
}
Console.ReadKey();