Переписать код с Pascal на C# - C# (201585)
Формулировка задачи:
Навеяло отсюда Переписать код с Pascal на C#
А можно мне тоже, пожалуйста?
Листинг программы
- program pjan;
- USES crt;
- VAR
- i,j,s,pi,pj:integer;
- a:array[1..30,1..30] of string;
- BEGIN
- randomize;
- pi:=30;
- pj:=random(30)+1;
- for i:=1 to 10 do begin
- a[random(30)+1,random(30)+1]:='#';
- end;
- a[pi,pj]:='i';
- while pi>1 do begin
- for i:= 1 to 30 do begin
- for j:= 1 to 30 do begin
- write(a[i,j]:1);
- end;
- writeln;
- end;
- delay(1000);
- clrscr;
- s:=random(4);
- case s of
- 0: if a[pi-1,pj-1]='#' then begin
- a[pi,pj]:='j';
- delay(2000);
- a[pi,pj]:='i';
- end
- else if (pj<=30) and (pj>1) then begin
- a[pi,pj]:='';
- pi:=pi-1;
- pj:=pj-1;
- a[pi,pj]:='i';
- end;
- 1:if a[pi-1,pj]='#' then begin
- a[pi,pj]:='j';
- delay(2000);
- a[pi,pj]:='i';
- end
- else begin
- a[pi,pj]:='';
- pi:=pi-1;
- a[pi,pj]:='i';
- end;
- 2:if a[pi-1,pj+1]='#' then begin
- a[pi,pj]:='j';
- delay(2000);
- a[pi,pj]:='i';
- end
- else if (pj<30) and (pj>=1) then begin
- a[pi,pj]:='';
- pi:=pi-1;
- pj:=pj+1;
- a[pi,pj]:='i';
- end;
- 3:if a[pi+1,pj]='#' then begin
- a[pi,pj]:='j';
- delay(2000);
- a[pi,pj]:='i';
- end
- else if pi<30 then begin
- a[pi,pj]:='';
- pi:=pi+1;
- a[pi,pj]:='i';
- end;
- end;
- end;
- ReadLn;
- END.
Решение задачи: «Переписать код с Pascal на C#»
textual
Листинг программы
- using System;
- using System.Threading;
- namespace Programs
- {
- class Program
- {
- private static Random _random = new Random();
- static void Main(string[] args)
- {
- int s, pi, pj;
- string[,] a = new string[30, 30];
- pi = 30;
- pj = _random.Next(30) + 1;
- for (int i = 0; i < 11; i++)
- {
- a[_random.Next(31)+1, _random.Next(31)+1] = "#";
- }
- a[pi, pj] = "i";
- while (pi > 1)
- {
- for (int i = 0; i < 31; i++)
- for (int j = 0; j < 31; j++)
- {
- Console.Write("{0}", a[i, j]);
- }
- Console.WriteLine();
- }
- Thread.Sleep(1000);
- Console.Clear();
- s = _random.Next(4);
- switch (s)
- {
- case 0:
- if (a[pi-1, pj-1] == "#")
- {
- a[pi, pj]="j";
- Thread.Sleep(2000);
- a[pi, pj] = "i";
- }
- else
- if ((pj <= 30) && (pj > 1))
- {
- a[pi, pj] = " ";
- pi--;
- pj--;
- a[pi, pj] = "i";
- }
- break;
- case 1:
- if (a[pi - 1, pj] == "#")
- {
- a[pi, pj] = "j";
- Thread.Sleep(2000);
- a[pi, pj] = "i";
- }
- else
- {
- a[pi, pj] = "";
- pi--;
- pj--;
- a[pi, pj] = "i";
- }
- break;
- case 2:
- if (a[pi - 1, pj + 1] == "#")
- {
- a[pi, pj] = "j";
- Thread.Sleep(2000);
- a[pi, pj] = "i";
- }
- else
- {
- if ((pj<30) && (pj>=1))
- {
- a[pi,pj]="";
- pi--;
- pj--;
- a[pi,pj]="i";
- }
- }
- break;
- case 3:
- if (a[pi+1,pj]=="#")
- {
- a[pi,pj]="j";
- Thread.Sleep(2000);
- a[pi,pj]="i";
- }
- else if (pi<30)
- {
- a[pi, pj] = "";
- pi++;
- a[pi, pj] = "i";
- }
- break;
- }
- Console.ReadKey(true);
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д