Перевести код с Паскаля на 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++)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы