Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 12.04.2014
Сообщений: 8
1

Помогите разобраться в коде

13.04.2014, 15:45. Показов 662. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите в коде разобраться.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
const dx :array[0 .. 3] of integer = (0, -1, 0, 1);
      dy :array[0 .. 3] of integer = (1, 0, -1, 0);
var
    a :array[1 .. 100, 1 .. 100] of integer;
    n, m, s, c, i, j :integer;  
 
procedure go(x, y, dir :integer);
begin
    if (a[x][y] > 0) then exit;
 
    if (x + dx[dir] < 1) or (x + dx[dir] > n) or 
       (y + dy[dir] < 1) or (y + dy[dir] > n) or
       (a[x + dx[dir]][y + dy[dir]] <> 0) then dir := (dir + 1) mod 4;
    c := c + 1;
    s := s + c;
    a[x][y] := c;
    go(x + dx[dir], y + dy[dir], dir);
end;
 
begin
    write('n=');
    readln(n);
    go(n, 1, 0);
    for i := 1 to n do
     begin
      for j := 1 to n do
      write(a[i][j]:4);
      writeln;
    end;
    writeln(s);
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.04.2014, 15:45
Ответы с готовыми решениями:

Помогите разобраться в коде программы
Здравствуйте Помогите разобраться в коде программы (НЕ МОГУ ПОНЯТЬ КАК В ПРОГРАММЕ РАБОТАЮТ МАССИВЫ...

Помогите разобраться в коде модели Марковица
Дали вот такой код, но я не могу в нем разобраться. Преподаватель сказала, что не разбирается....

ПОМОГИТЕ РАЗОБРАТЬСЯ В КОДЕ
#include &lt;time.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; #include &lt;assert.h&gt; #include...

Помогите разобраться в коде
нашел тут код: &lt;!-- parent.title.document.loading.src=''../logo/image/loading.gif'' function...

1
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7769 / 4598 / 2823
Регистрация: 22.11.2013
Сообщений: 13,077
Записей в блоге: 1
14.04.2014, 21:40 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
const
  dx: array[0..3] of integer = (0, -1,  0, 1); { описание смещений для ... }
  dy: array[0..3] of integer = (1,  0, -1, 0); { направлений 0..3 по x и y }
var
  a: array[1..100, 1..100] of integer;         { поле }
  n, m, s, c, i, j: integer;
 
procedure go(x, y, dir :integer); 
begin
    if (a[x][y] > 0) then exit;          { если в клетке уже побывали, выход }
    if (x + dx[dir] < 1) or (x + dx[dir] > n) or { Выйдем ли за границы,     }
       (y + dy[dir] < 1) or (y + dy[dir] > n) or { двигаясь в направлении?   }
       (a[x + dx[dir]][y + dy[dir]] <> 0)        { Или там уже были?         }
    then dir := (dir + 1) mod 4;                 { Тогда сменить направление }
    c := c + 1;                         { глоб. счетчик обработанных клеток }
    s := s + c;
    a[x][y] := c;                       { пометить тек. клетку номером шага }
    go(x + dx[dir], y + dy[dir], dir);  { обработать следующую клетку }
end;
 
begin
  write('n='); readln(n);  { запрос значения n }
  go(n, 1, 0);             { вызов рекурсивной процедуры go() }
  for i := 1 to n do begin { вывод полученного массива a: }
    for j := 1 to n do       { - вывод    }
      write(a[i][j]:4);      {   строки i }
    writeln;                 { - переход на новую строку }
  end;
  writeln(s);              { вывод s }
end.
1
14.04.2014, 21:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.04.2014, 21:40
Помогаю со студенческими работами здесь

Помогите разобраться в коде..
или это у меня в голове глюк, или где-то еще. пересчитайте скобки. IF ведет себя как если бы он...

Помогите разобраться в коде
namespace ConsoleApplication5 { public class Program { static void Main(string...

Помогите разобраться в коде
Здрасьте!!! помогиде разобраться в одном коде!!!! void __fastcall TForm1::Button2Click(TObject...

Помогите разобраться в коде.
#include &quot;test.h&quot; #include &quot;ui_test.h&quot; Test::Test(QWidget *parent): QWidget(parent), ui(new...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru