Перевести код с Паскаля на C# - C# (186359)
Формулировка задачи:
Помогите перевести код с паскаля на C#. Я вроде перевел, но не работает.
Код паскаля взят отсюда
uses crt;
type arr=array[1..40]of integer;
procedure Recursion(i,pos,sum,n:integer;a:arr);
var j,k:integer;
begin
for j:=i to n-1 do
begin
a[pos]:=j;
if sum+j=n then
begin
for k:=1 to pos do
if k>1 then write('+',a[k])
else write(a[k]);
writeln
end
else
if sum+j<n then Recursion(j,pos+1,sum+j,n,a);
end;
end;
var n:integer;
a:arr;
begin
write('n:');
readln(n);
Recursion(1,1,0,n,a);
readkey;
end.class Class1
{
public void Recyrs(int i,int pos, int sum,int n,int[] arr)
{
for(int j= i; j<=n-1;)
{
arr[pos] = j;
if (sum + j == n)
{
for(int k=1;k<= pos;k++)
{
if (k > 1)
Console.Write("+" + arr[k]);
else
Console.Write(arr[k]);
}
Console.WriteLine();
}
else
if (sum + j < n)
Recyrs(j, pos + 1, sum + j, n, arr);
}
}
}Console.WriteLine("Введите число:");
Class1 s1 = new Class1();
int[] a = new int[40];
int n = int.Parse(Console.ReadLine());
s1.Recyrs(1,1,0,n,a);
Console.ReadKey();Решение задачи: «Перевести код с Паскаля на C#»
textual
Листинг программы
for (int j = i; j <= n - 1; j++)