Страница 1 из 1

Вопросы по free pascal

СообщениеДобавлено: 10.03.2019 08:58:57
Roneru
Добрый день!
Только начал изучать язык. Несколько вопросов к профессионалам

1. Есть ли в языке конструкции для работы со строками. Аналогичные, например. JS типа
index = 2;
quantity = 1;
console.log(`${index} ${quantity} штук: `);

2. Где прочитать более подробно о работе с процессами AProcess, AStringList. Особенно интересует как из AStringList информацию получить. Пока нашел только AStringList.Strings[]. Еще что то из этого процесса выnащить можно?)

3. Какие книги кроме "Песня о Паскале" посоветуете прочитать в первую очередь?

4. Есть ли какие-нибудь он-лайн или видео курсы по обучению?

Спасибо!

Re: Вопросы по free pascal

СообщениеДобавлено: 16.03.2019 09:39:11
Дож
1. uses SysUtils; ... Writeln(stderr, Format('%D %D штук: ', [index, quantity]));

2. http://wiki.freepascal.org/Executing_Ex ... s#TProcess
http://wiki.freepascal.org/TStringList- ... s_Tutorial

Добавлено спустя 3 минуты 17 секунд:
3. viewtopic.php?f=7&t=24521

Re: Вопросы по free pascal

СообщениеДобавлено: 16.03.2019 10:41:08
alexs
Дож
Для начинающих это сильно сложно
проще так
Код: Выделить всё
...
writeln(index, ' - ', quantity, ' штук: ');

Re: Вопросы по free pascal

СообщениеДобавлено: 16.03.2019 11:30:12
Vadim
Roneru писал(а):Где прочитать более подробно о работе с процессами AProcess...

Скорее TProcess... ;-) Можно почитать в Wiki, есть русский перевод:
http://wiki.freepascal.org/Executing_Ex ... rograms/ru
Там статья о способах запуска других процессов. В том числе есть и описание+пример для TProcess.

Roneru писал(а):Где прочитать более подробно о работе с процессами ... AStringList.

TStringList... ;-)
Можно почитать любую книжку по Delphi. В общем случае это набор строк и, если сильно захочется, объектов, которые можно достать по их номеру в списке:
Код: Выделить всё
Uses Classes;
Var
  st: TStringList;
  i: integer;
Begin
  st:=TStringList.Create;
  st.Add('Один');
  st.Add('Два');

For i:=0 To st.Count-1 Do
    WriteLn(st[i]);
End.

По умолчанию этот компонент выдаёт строку, поэтому можно пользоваться укороченой записью (st[Номер_строки]) если речь поёдет только о строках.
Ещё этот компонент интересен как хранилка данных типа "ключ=значение". Это будут те же строки, только между ключом и значением вставляется знак равенства:
Код: Выделить всё
Uses Classes;

Var
  st: TStringList;
  i: integer; 
Begin
  st:=TStringList.Create;
  st.Values['Uno']:='Один';
  st.Values['Due']:='Два';
 
  WriteLn(st.Values['Uno']);
  WriteLn(st.Values['Due']);
 
  For i:=0 To st.Count-1 Do
    WriteLn(st[i]);
End.


Roneru писал(а):3. Какие книги кроме "Песня о Паскале" посоветуете прочитать в первую очередь?

Это сильно зависит от того, что Вы собираетесь делать с помощью программирования. Программирование - это инструмент, которым решаются какие-то задачи. Поэтому неплохо было бы выбрать себе тему, которая будет интересна и тогда уж подбирать к этой теме соответствующие книжки.
А чтобы просто познакомиться с применением зыка в программах "Песня о Паскале" - хорошая книга. Другие книги общего плана, по сравнению с этой, вряд ли что-то дадут принципиально нового...

Roneru писал(а):4. Есть ли какие-нибудь он-лайн или видео курсы по обучению?

А как у Вас с английским? Если полный порядок, то вот видеокурсы:
http://wiki.freepascal.org/Lazarus_videos
Там в качестве IDE используется Lazarus. Когда будете писать приложения с графическими элементами для пользователя - без него будет обойтись очень трудно...

Добавлено спустя 5 минут 14 секунд:
Вот ещё прикольный ролик по написанию игрушки для консоли. По русски.
1) https://www.youtube.com/watch?v=j2sTopirEoc
2) https://www.youtube.com/watch?v=fdgbNSKFbdQ

Re: Вопросы по free pascal

СообщениеДобавлено: 17.03.2019 18:59:29
Roneru
Большое всем спасибо!
Буду разбираться и учить язык

Re: Вопросы по free pascal

СообщениеДобавлено: 17.03.2019 20:42:17
Лекс Айрин
Roneru, советую учить не на свинках, а на более-менее серьезной задаче. Конечно не ось писать или СУБД, но все же серьезную прогу. Это чуть посложнее, но даёт большую пользу. Для примера задач найти книгу 'этюды программирования'. Скажу сразу, там нет кода ни на паскале, ни на другом языке программирования, но там собраны задачи которые может решить начинающий программист, но которые не являются синтетическими.