# Помогите с Паскалем.

**URL:** <https://linux.ru/forum/t/topic/7034>\
**Category:** Программирование общее\
**Created:** [17.Ноябрь.2007 23:26:08 UTC](https://linux.ru/forum/t/topic/7034 "2007-11-17T23:26:08Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [17.Ноябрь.2007 23:26:08 UTC](https://linux.ru/forum/t/topic/7034/1 "2007-11-17T23:26:08Z")

</div>

Помогите разобраться начал учить Turbo Pascal и у меня почемуто не получаеться нифига =) помогите разобраться.

uses dos, crt;

const

line : array[0..3] of char = (‘|’ , ‘/’ , ‘-’ , '');

var

m: integer;

begin

TextColor(Yellow);

m:= 0;

repeat

gotoxy(40, 13);

write(line[m]);

gotoxy(1, 1);

delay(100);

m:= (m+1) mod 4;

until keypressed;

end.

сама программа:

[http://ifolder.ru/4178412](http://ifolder.ru/4178412)

---

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [18.Ноябрь.2007 18:26:28 UTC](https://linux.ru/forum/t/topic/7034/2 "2007-11-18T18:26:28Z")

</div>

Блин 105 человек просмотрели тему, и что никто помочь не может?? =(

---

<div class="post-metadata">

**Author:** ![Ineu](https://linux.ru/forum/letter_avatar_proxy/v4/letter/i/45deac/32.png) [@Ineu](https://linux.ru/forum/u/Ineu)\
**Post date:** [18.Ноябрь.2007 18:43:36 UTC](https://linux.ru/forum/t/topic/7034/3 "2007-11-18T18:43:36Z")

</div>

Никто.

1. Вы не удосужились рассказать, чего хотите добиться.

2. Вы не говорите, что не работает и что Вы делали, чтоб заработало.

3. Вы выкладываете на линуксовом форуме досовские исходники. Где прикажете искать турбо паскаль, чтоб проверить Ваши исходники?

Если форум называется “Программирование общее”, Вы ведь не ожидаете здесь ответы на вопросы о программировании на ассемблере для каких-нибудь VAX’ов? Так почему же Вы удивляетесь тому, что линуксоиды не отвечают на вопросы о программирование под ДОС?

---

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [18.Ноябрь.2007 18:54:47 UTC](https://linux.ru/forum/t/topic/7034/4 "2007-11-18T18:54:47Z")

</div>

to EvilShadow

спасибо.

Я пытаюсь сделать, чтобы получился эффект крутящийся стрелки.

т.е. символы /, -, , | , должны появляться по порядку.

Пробывал я и так и сяк, на выходе эти символы рандомно появляються (вразнобой, не по порядку). Уже голову сломал с этими массивами.

(просто я только что начал изучать Паскаль)

вот сам паскаль(turbo pascal 7.0):

[http://dl.softportal.com/load/tp7.zip](http://dl.softportal.com/load/tp7.zip)

сама программа:

[http://ifolder.ru/4178412](http://ifolder.ru/4178412)

---

<div class="post-metadata">

**Author:** ![Ineu](https://linux.ru/forum/letter_avatar_proxy/v4/letter/i/45deac/32.png) [@Ineu](https://linux.ru/forum/u/Ineu)\
**Post date:** [18.Ноябрь.2007 19:33:00 UTC](https://linux.ru/forum/t/topic/7034/5 "2007-11-18T19:33:00Z")

</div>

| **4fun писал(а) Sun, 18 November 2007 20:54** |  
|

вот сам паскаль(turbo pascal 7.0):

[http://dl.softportal.com/load/tp7.zip](http://dl.softportal.com/load/tp7.zip)

|

Вы меня не поняли. Что прикажете мне делать с ДОСовским турбопаскалем под Линухом?

Что касается программы. Паскаля под рукой нет, ставить лень. Но общий алгоритм от языка зависит слабо, если знаете Си, вот Вам рабочий вариант:

```
#include <stdio.h>

int main ()
{
       int i;
       char a[] = {'|', '/', '-', '\\'};
       while (1) {
           for (i = 0; i < 4; i++) {
               printf ("\b%c", a_); } } }_

```

_Т.е. затираем предыдущий символ, на его место выводим следующий. Когда переберется весь массив, обнуляем индекс, т.е. возвращаемся на первый символ и повторяем все заново._

_ЗЫ. А строка_

_m:= (m+1) mod 4;_

_меня повергла в совершенное недоумение. Что это за операция? Остаток от деления? Что она возвращает для выражений 1 mod 4, 2 mod 4…?_

---

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [18.Ноябрь.2007 20:00:52 UTC](https://linux.ru/forum/t/topic/7034/6 "2007-11-18T20:00:52Z")

</div>

блин с Си я пока не знаком

Но буду пытаться. Спасибо что ответили.

Если кто-нить есть кто пишет в паскале помогите плз.

а строчка:

m:= (m+1) mod 4;

так написано в книге по паскалю…

---

<div class="post-metadata">

**Author:** ![Aceler](https://linux.ru/forum/letter_avatar_proxy/v4/letter/a/eb9ed0/32.png) [@Aceler](https://linux.ru/forum/u/Aceler)\
**Post date:** [18.Ноябрь.2007 20:24:52 UTC](https://linux.ru/forum/t/topic/7034/7 "2007-11-18T20:24:52Z")

</div>

| **EvilShadow писал(а) Sun, 18 November 2007 22:33** |  
|

ЗЫ. А строка

m:= (m+1) mod 4;

меня повергла в совершенное недоумение. Что это за операция? Остаток от деления? Что она возвращает для выражений 1 mod 4, 2 mod 4…?

|

Да, это остаток от деления нацело, что очень удобно для быстрой организации “круглых” циклов. 1 mod 4 = 1, 2 mod 4 = 2, 3 mod 4 = 3, 4 mod 4 = 0 и так далее по кругу.

---

<div class="post-metadata">

**Author:** ![Aceler](https://linux.ru/forum/letter_avatar_proxy/v4/letter/a/eb9ed0/32.png) [@Aceler](https://linux.ru/forum/u/Aceler)\
**Post date:** [18.Ноябрь.2007 20:26:03 UTC](https://linux.ru/forum/t/topic/7034/8 "2007-11-18T20:26:03Z")

</div>

Кстати, DOS программы в Linux запускаются также, как в других системах - через эмулятор. Только вот специалистов уже нет.

---

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [18.Ноябрь.2007 20:58:16 UTC](https://linux.ru/forum/t/topic/7034/9 "2007-11-18T20:58:16Z")

</div>

Так текс программы написан правильно… А почему не работает как надо я понять не могу

---

<div class="post-metadata">

**Author:** ![Aceler](https://linux.ru/forum/letter_avatar_proxy/v4/letter/a/eb9ed0/32.png) [@Aceler](https://linux.ru/forum/u/Aceler)\
**Post date:** [18.Ноябрь.2007 21:23:48 UTC](https://linux.ru/forum/t/topic/7034/10 "2007-11-18T21:23:48Z")

</div>

А вы вот прямо вот так писали, как в первом посте? С лишними переводами строк после const и var?

---

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [18.Ноябрь.2007 21:35:37 UTC](https://linux.ru/forum/t/topic/7034/11 "2007-11-18T21:35:37Z")

</div>

В смысле лишний перевод строк?

- Текст такойже как я писал в паскале.

---

<div class="post-metadata">

**Author:** ![Ineu](https://linux.ru/forum/letter_avatar_proxy/v4/letter/i/45deac/32.png) [@Ineu](https://linux.ru/forum/u/Ineu)\
**Post date:** [18.Ноябрь.2007 21:42:45 UTC](https://linux.ru/forum/t/topic/7034/12 "2007-11-18T21:42:45Z")

</div>

| **Aceler писал(а) Sun, 18 November 2007 22:26** |  
|

Кстати, DOS программы в Linux запускаются также, как в других системах - через эмулятор. Только вот специалистов уже нет.

|

Правильно. Мне надо слить Турбопаскаль, потом поставить dosemu… Увольте

---

<div class="post-metadata">

**Author:** ![Aceler](https://linux.ru/forum/letter_avatar_proxy/v4/letter/a/eb9ed0/32.png) [@Aceler](https://linux.ru/forum/u/Aceler)\
**Post date:** [18.Ноябрь.2007 22:21:00 UTC](https://linux.ru/forum/t/topic/7034/13 "2007-11-18T22:21:00Z")

</div>

| **4fun писал(а) Mon, 19 November 2007 00:35** |  
|

В смысле лишний перевод строк?

|

В прямом.

```
uses dos, crt;
 const line : array[0..3] of char = ('|' , '/' , '-' , '\');
 var m: integer;
 begin
 TextColor(Yellow);
 m:= 0;
 repeat
 gotoxy(40, 13);
 write(line[m]);
 gotoxy(1, 1);
 delay(100);
 m:= (m+1) mod 4;
 until keypressed;
 end.

```

P.S. [http://sesia5.ru/blok/index12.htm](http://sesia5.ru/blok/index12.htm)

[http://webart.user.kz/pascal/index.htm](http://webart.user.kz/pascal/index.htm)

---

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [18.Ноябрь.2007 23:36:18 UTC](https://linux.ru/forum/t/topic/7034/14 "2007-11-18T23:36:18Z")

</div>

на счёт строк понял мне просто так удобнее потом разбираться, чего я там понаписал.

Спасибо за ссылки, но у меня есть 2-е книжки по паскалю, но думаю что пригодиться.

Я все равно так и не понял почему программа работает неправильно =( текст 100% правельный, а она работать все равно не хочет… мистика прямо какая-то…

---

<div class="post-metadata">

**Author:** ![4fun](https://linux.ru/forum/letter_avatar_proxy/v4/letter/4/b9e5f3/32.png) [@4fun](https://linux.ru/forum/u/4fun)\
**Post date:** [24.Ноябрь.2007 11:33:07 UTC](https://linux.ru/forum/t/topic/7034/15 "2007-11-24T11:33:07Z")

</div>

и что никто не знает в чем проблема?

---

<div class="post-metadata">

**Author:** ![Aceler](https://linux.ru/forum/letter_avatar_proxy/v4/letter/a/eb9ed0/32.png) [@Aceler](https://linux.ru/forum/u/Aceler)\
**Post date:** [24.Ноябрь.2007 16:28:14 UTC](https://linux.ru/forum/t/topic/7034/16 "2007-11-24T16:28:14Z")

</div>

Нет.
