Pascal N-IDE | Pascal IDE на Android



Реп: (308)
Pascal N-IDE
версия: 5.0.2

Последнее обновление программы в шапке: 30.11.2023

Прикрепленное изображение

Скриншоты
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение
Прикрепленное изображение

Краткое описание:
Pascal IDE на Android

Описание:
Приложение является портом среды программирования Pascal для платформы Android. Оно даёт возможность обучаться и практиковаться без компьютера, что позволяет заниматься созданием программ абсолютно в любом месте.

Сейчас приложение активно развивается и переодически дополняется недостающими параметрами, функциями, типами данных и т.д. Стоит подчеркнуть, что это порт, а потому весь функционал настольного Pascal не будет перенесён, т.к. некоторые функции не несут серьёзного значения (type cursor, for..in loop, with..do .. statement, ...).

Основные особенности IDE
  • Compile Pascal programs and run them without Internet.
  • Error when compiling
  • Powerful editor with many smart features:
    1. File menu: create a new program file, open, save, automatically save file
    2. Menu edit: Undo, redo, copy, paste
    3. Auto suggest: Display a small popup window that suggests words that coincide with the word being typed
    4. Auto format: automatically reformat the code for easier viewing
    5. Find / Find and replace: Regular Expression support
    6. Goto line: Move the cursor to a line
    7. Highlight code: highlight the keywords
    8. Code style: many interface for the editor
    9. Font size, font, word wrap

Ярлыки (в разработке)
  • Ctrl-C, Ctrl-V, Ctrl-X for Copy, Paste and Cut
  • Ctrl-S, Ctrl-O for File Save / Open
  • Ctrl-B to compile, check for errors
  • Ctrl-R to run the program
  • Ctrl-D to duplicate the current line
  • Ctrl-Z, Ctrl-Y for Undo / Redo
  • Ctrl-L for "go to line"
  • Ctrl-F to Find
  • Ctrl-A to select all


Отсутствует поддержка
  • Pointers
  • Exceptions
  • Set, and Variant types
  • for ... in ... do loops
  • with ... do statements
  • goto, label (it will never supported)

Библиотеки для Android

  • The "aTTSpeech" library converts text to speech. See example text_to_speech.pas
  • The "aRecognition" library converts speech to text (requires Google Voice). See example speech_to_text.pas.
  • The "aVibrate" library supports vibration control. You see example vibrate.pas
  • The "aSensor" library supports processing of Android sensors (light, acceleration, ...). See accelerometer_sensor.pas for accelerometer sensor example
  • The "aNotify" library helps display notifications in the status bar. See the example notify.pas
  • The "aClipboard" library works with the clipboard in Android. See the clipboard.pas example
  • The "aBattery" library retrieves the battery information of the device. See battery.pas example


Если в приложении, Вы нашли какие-то несоответствия с переводом или формулировкой, то просьба писать в этой теме с приложением скриншота и варианта исправления.Отблагодарить, естественно, не забуду ;)

Русский интерфейс: Да

Разработчик: Trần Lê Duy
Домашняя страница: (FB) Trần Lê Duy
Эл. почта: tranleduy1233@gmail.com
Google Play: Pascal N-IDE

Скачать:
Версия 5.0.2 GP: Pascal N-IDE (Пост Шагар #126580168)
Версия 4.3.2 Unlocked: Сообщение №69, автор sserratty

Прошлые версии
Версия 4.3.2 GP: Pascal N-IDE (Пост aleks10393 #70805423)
Версия 4.2.7 Premium: Pascal N-IDE (Пост Alex0047 #70249159)
Версия 4.1.7: Pascal N-IDE (Пост Alex0047 #65551024)
Версия 3.4.0: Прикрепленный файлPascal N-IDE_3.4.0.apk ( 2.62 МБ )

Версия 3.4.0 рус: Прикрепленный файлPascal N-IDE_3.4.0-рус.apk ( 2.51 МБ )

Версия 3.4.2: Прикрепленный файлPascal N-IDE_3.4.2.apk ( 2.62 МБ )

Версия 3.4.2 рус: Прикрепленный файлPascal N-IDE_3.4.2-рус.apk ( 2.51 МБ )

Версия 3.4.5: Прикрепленный файлPascal N-IDE_3.4.5.apk ( 2.55 МБ )

Версия 3.4.7: Прикрепленный файлPascal N-IDE_3.4.7.apk ( 2.26 МБ )

Версия 3.4.8: Прикрепленный файлPascal N-IDE_3.4.8.apk ( 2.27 МБ )

Версия 3.4.9: Прикрепленный файлPascal N-IDE_3.4.9.apk ( 2.27 МБ )

Версия 3.5.0: Прикрепленный файлPascal N-IDE_3.5.0.apk ( 2.27 МБ )

Версия 3.5.3: (без русского языка - косяк разраба) Прикрепленный файлPascal N-IDE_3.5.3.apk ( 2.36 МБ )

Версия 3.5.7: Прикрепленный файлPascal N-IDE_3.5.7.apk ( 2.67 МБ )

Версия 3.5.9: Прикрепленный файлPascal N-IDE_3.5.9.apk ( 2.8 МБ )

Версия 3.6.2: Прикрепленный файлPascal N-IDE_3.6.2.apk ( 2.78 МБ )

Версия 3.6.5: Прикрепленный файлPascal N-IDE_3.6.5.apk ( 2.79 МБ )

Версия 3.6.7: Прикрепленный файлPascal N-IDE_3.6.7.apk ( 2.9 МБ )

Версия 3.6.7 [fix]: Прикрепленный файлPascal N-IDE_3.6.7[fix].apk ( 4.8 МБ )

Версия 3.6.8: Прикрепленный файлPascal N-IDE_3.6.8.apk ( 4.79 МБ )

Версия 3.7.0: Прикрепленный файлPascal N-IDE_3.7.0.apk ( 4.98 МБ )

Версия 3.7.2: Прикрепленный файлPascal N-IDE_3.7.2.apk ( 5.01 МБ )

Версия 3.7.7: Прикрепленный файлPascal N-IDE_3.7.7.apk ( 5.31 МБ )

Версия 4.0.7: Прикрепленный файлPascal N-IDE_4.0.7.apk ( 6.49 МБ )



Сообщение отредактировал _blank - 30.11.23, 15:42
Причина редактирования: 5.0.2



Реп: (13)
* nikita 13, на русский перевёл бы было бы ништяк :)



Реп: (13)
program moving_of_line;

uses graph, crt;

const
coeff: array[1..2, 1..12] of -2..2 =
((0, 1, 2, 2, 2, 1, 0, -1, -2, -2, -2, -1),
(2, 2, 1, 0, -1, -2, -2, -2, -1, 0, 1, 2));
delays: array[1..12] of byte =
(50, 56, 56, 50, 56, 56, 50, 56, 56, 50, 56, 56);
lm = 200; {максимальная длина змейки}
k = 4; {радиус тела змейки}
snake_color = 11; {цвет тела змейки}
apple_color = 14; {цвет яблока}
liter_color = 2; {цвет букв}

var
i, x, y, d, m: integer;
kl: char;
j, n, sp: byte; {n - счетчик тел змейки}
snake: array[1..2, 1..lm] of integer; {массив координат тел змейки}
appl: boolean; {наличие яблока на поле}
apple: array[1..2] of integer;
points: word; {текущее число очков}
spoints: string; {перевод числа очков в строку}

procedure nach; forward;

procedure ending;
begin
sound(400);
delay(800);
NoSound;
setcolor(liter_color);
OutTextXY(100, 10, 'Игра окончена! Число очков: ' + spoints);
OutTextXY(100, 24, 'Сыграть ещё? (Y / N)');
{kl := readkey;}readln(kl);
closegraph;
if kl = 'Y' then nach
else halt;
end;

procedure krug(a, b: integer; c: shortint); {c - цвет линий}
begin
setcolor(c);
circle(a, b, k);
end;

function color_pt: boolean; {для яблока}
var
i, j: integer;
begin
color_pt := true;
for i := 1 to k + 1 do
for j := 1 to k + 1 do
if getpixel(apple[1] - 3 + i, apple[2] - 3 + j) <> 0 then
color_pt := false;
end;

procedure scanner; {сканирование первого тела на собственный цвет}
var
t: integer;
begin
for t := -k + 2 to k - 2 do
begin
if getpixel(x + t, y) = snake_color then ending;
if getpixel(x, y + t) = snake_color then ending;
end;
if (x <= 10 + k) or (x >= 630 - k) or {если голова вышла за пределы поля}
(y <= 40 + k) or (y >= 470 - k) then ending;
end;

procedure point; {изменение кол-ва очков и вывод на экран}
begin
inc(points, 5 * sp);
sp := (points div 100) + 1;
str(points, spoints);
setcolor(red);
rectangle(1, 1, 100, 35);
setfillstyle(0, black);
floodfill(2, 2, red);
setcolor(black);
rectangle(1, 1, 100, 35);
setcolor(liter_color);
OutTextXY(10, 10, 'Очки: ' + spoints);
end;

procedure appling; {помещение яблока на поле}
begin
repeat
apple[2] := 55 + random(400);
apple[1] := 25 + random(590)
until color_pt = true;
krug(apple[1], apple[2], apple_color);
appl := true;
end;

procedure moving;
begin
while not keypressed do
begin
inc(j);
if j = lm + 1 then j := 1;
snake[1, j] := x;
snake[2, j] := y;
krug(x, y, snake_color);
if j <= n then krug(snake[1, lm - n + j], snake[2, lm - n + j], 0) {удаление последнего тела}
else krug(snake[1, j - n], snake[2, j - n], 0); {с целью имитации движения}

delay(trunc(2*delays[i]/sqrt(sp)));
x := x + k * coeff[1, i];
y := y + k * coeff[2, i];
if appl = false then appling;
if (abs(x - apple[1]) < 2 * k) and (abs(y - apple[2]) < 2 * k) then
begin
krug(apple[1], apple[2], 0);
inc(n);
point;
appl := false;
end;
scanner;
end;
kl := readkey;
{клавиша q - примитивная пауза}
if kl = 'q' then while not keypressed do delay(100)
else case kl of
'a': inc(i);
'd': dec(i);
end;
if i = 13 then i := 1;
if i = 0 then i := 12;
end;

procedure nach;
begin
d := detect;
initgraph(d, m, '');
x := 320;
y := 240;
points := 0;
sp := 1;
appl := false;
i := 1; {переменная направления (в часах поворота)}
n := 2; {начальная длина змейки}
setlinestyle(0, 0, ThickWidth);
rectangle(10, 40, 630, 470);
setlinestyle(0, 0, NormWidth);
settextstyle(2, 0, 5);
setcolor(liter_color);
outtextxy(10, 10, 'Очки: 0');
randomize;
repeat moving until j = 5;
repeat moving until false;
end;

begin
nach;
end.
игра змейка на PascalGUI скрипт пашет а на этом паскале не пашет!



Реп: (308)
sadom07 @ 22.03.17, 21:13 *
на этом паскале не пашет!
Дело в том, что это довольно сырая версия, но ввиду того, что последнее обновление было недавно, есть надежда на улучшение. Кстати, в приложении есть багрепорт, так что о невыполнении или некорректности какой либо из команд, лучше писать туда, напрямую разработчику.

Сообщение отредактировал _blank - 22.03.17, 21:49



Реп: (13)
* nikita 13, ясно понял тебя.но ты переведи прогу будет время :rabbi:



Реп: (308)
* sadom07, добавил перевод вместо английского, вьетнамский не трогал, всё-таки авторский язык))



Реп: (13)
* nikita 13, спасибо
M
Ознакомьтесь с Правилами Форума!
5.1. Если участник форума дал вам хороший совет, который помог вам в решении вашей проблемы не следует помещать сообщение с текстом «Спасибо! Ты супер!!!». На нашем форуме благодарность принято выражать путем поднятия репутации конкретного участника.
5.2. На репутацию других участников может влиять любой пользователь, набравший 15 полезных постов. Если у вас нет 15 полезных постов, попросите модератора поднять репутацию оказавшему вам помощь человеку через кнопку «Жалоба».


Сообщение отредактировал vadeus - 23.03.17, 11:03



Реп: (308)
В 3.4.2 добавил русский уже не вместо английского, а как ещё один язык; выбирается в настройках редактора.

Также написал разработчику через кнопку "помощь в переводе", так что, вероятно, в следующем обновлении русский язык будет "из коробки"

Дополнено после выхода 3.4.5
Теперь русский язык "из коробки".

Сообщение отредактировал _blank - 28.03.17, 18:05



Реп: (0)
Скажите пожалуйста, а как добавить метод sysutil? И где посмотреть возможные библиотеки? Я к примеру хочу добавить inttostr, разработчик сказал, что нужена эта библиотека: SysUtils.



Реп: (13)
* micberezin, в гугол задайте вопрос уверен есть ответы на него...



Реп: (308)
* sadom07, это ты к чему?



Реп: (4)
Как выделить текст? А то у меня при долгом тапе не переходит в режим выделения.



Реп: (4)
micberezin @ 27.04.2017, 12:30 *
Скажите пожалуйста, а как добавить метод sysutil? И где посмотреть возможные библиотеки? Я к примеру хочу добавить inttostr, разработчик сказал, что нужена эта библиотека: SysUtils.

после строки program ........; добавь строчку uses sysutils;

Сообщение отредактировал schetilin - 16.07.17, 00:24



Реп: (308)
schetilin @ 14.07.17, 12:37 *
Как выделить текст?

У меня такой проблемы почему-то нет. Попробуйте двойным тапом по слову, либо 1 нажатие для появления курсора, а потом нажатие на сам курсор. Может помочь также простая перезагрузка девайса.

Что у вас за устройство и какая версия андроид? Работает ли выделение текста в любых текстовых редакторах?



Реп: (4)
nikita 13 @ 16.07.2017, 17:49 *
...
У меня такой проблемы почему-то нет. Попробуйте двойным тапом по слову, либо 1 нажатие для появления курсора, а потом нажатие на сам курсор. Может помочь также простая перезагрузка девайса.

Что у вас за устройство и какая версия андроид? Работает ли выделение текста в любых текстовых редакторах?

Разобрался. Виновата hasker keyboard. Переключился на родную клавиатуру, и выделение заработало.



Реп: (93924)
PBBA2017 Pascal N-IDE - Android support v4.1.7
What's New
Change UI show error.
Improve quick fix feature.
Прикрепленный файлPascal N-IDE_v4.1.7(120).apk ( 7.74 МБ )



Реп: (2)
Всем привет!
Может мне кто нибудь помочь?
Как я могу покрасить текст?
Не видет команду crt...
Прикрепленное изображение
Прикрепленное изображение

Однако так работает...
Прикрепленное изображение
Прикрепленное изображение


Добавлено 13.10.2017, 21:34:

Т.е. пишет, что неуместно...



Реп: (308)
* 412655, чтобы вызвать CRT нужно, чтобы начало кода было приблизительно типа такого:
Program test;
Uses crt;
Var a:integer;
Begin

End.



Реп: (2)
* nikita 13, ааа, понял, спасибо большое)))



Реп: (2)
* nikita 13,
Да! Получилось!
Вот такая вот программа:
program djdnvjs;
var a, b, c: String;
uses crt;
begin
textColor (-16770049);
Write('введите пожалуйста 3 геометрические фигуры через "inter": ');
textColor (-65536);
read (a, b, c);
textColor (-13238528);
write ( 'ваши геометрические фигуры: ', a+', '+b+' и '+c);
end.

Прикрепленное изображение

вот только есть одна проблема..
Меня отправляют на олимпиаду по информатике :-)


Добавлено 16.10.2017, 00:09:

Простите, просто раньше не было времени зайти)



Реп: (1987)
412655 @ 16.10.17, 00:08 *
Меня отправляют на олимпиаду по информатике

А при чем здесь собсна сабж?Не думаю,что знания паскаля там вообще пригодятся,этот яп нужен только для обучения,а для написания программ обычно юзают объектно-ориентированные языки программирования,для скриптов скриптовые,а процедурный яп паскаль годится только для изучения.


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 29.03.24, 17:10