Телескопы покупают здесь


A A A A Автор Тема: Изучаю Паскаль. Присоединяйтесь.  (Прочитано 11337 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Онлайн CyberManiac

  • *****
  • Сообщений: 8 146
  • Благодарностей: 455
  • Я ♥ オリオン!
    • Сообщения от CyberManiac
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #280 : 11 Фев 2023 [15:33:25] »
Потому что она стоила штуку баксов и очень долго не имела бесплатной версии. И Турбо Паскаль тоже был не бесплатный вообще-то. А у народа как заведено: какая забесплатно даст, та и красавица. Короче, вся история чисто про бабло.

То есть вы утверждаете что в падении популярности виноват маркетинг?
Да. Плохой маркетинг.

Может у народа "так" и заведено, но это коммерческий софт, за который платит контора. Для неё цена лицензии меньше месячной зарплаты одного разработчика.
А разработчик этот откуда возьмётся? Его как бы учить надо, а не только лишь всякий ВУЗ с радостью заж0пит даже 500 баксов на лицензию, если можно взять другое, но бесплатно. А Борланд, вроде бы, ВУЗам скидок не делал, в отличие от сами-знаете-кого.
Трэш, угар и астрономия!
沖縄最高

Оффлайн GraY25

  • *****
  • Сообщений: 5 910
  • Благодарностей: 1010
  • Дифракционный_беспредел [____ Сергей Иванов ____]
    • Сообщения от GraY25
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #281 : 11 Фев 2023 [16:17:03] »
И прям во всех конторах, по рукам которых Дельфи прошла, как назло именно с маркетингом были проблемы)
Прямо какое-то тотальное невезение!

Откуда возьмётся разработчик? А откуда берутся разработчики стремительно набирающих популярность Golang? Rust?
Или TypeScript, Kotlin, Swift? Многие специализируются даже не на языках а на фреймворках, React, Django.
Тема DataScience/ML сверхвостребована, кто этому и где обучал 5-10 лет назад?
• С14 HD [0.96] + HS F/1.9 @ CGE Pro
• С8 HD   [0.93] + HS F/2.1 @ ZWO AM5
• TS 152/900
Sun Hα  MoonAstroSeeing Bot

Онлайн CyberManiac

  • *****
  • Сообщений: 8 146
  • Благодарностей: 455
  • Я ♥ オリオン!
    • Сообщения от CyberManiac
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #282 : 11 Фев 2023 [16:24:42] »
Откуда возьмётся разработчик? А откуда берутся разработчики стремительно набирающих популярность Golang? Rust?
Или TypeScript, Kotlin, Swift? Многие специализируются даже не на языках а на фреймворках, React, Django.
Я же русским языком написал: «какая бесплатно даст, та и красавица». Поставьте ценник штуку баксов за входной билет, оно всё назавтра подохнет.
Трэш, угар и астрономия!
沖縄最高

Оффлайн Toth

  • *****
  • Сообщений: 2 604
  • Благодарностей: 176
    • Сообщения от Toth
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #283 : 11 Фев 2023 [17:16:15] »
Впору создавать новую тему, типа
 холливар/газават/священная война - Pascal - C  - Python

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 382
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #284 : 11 Фев 2023 [22:06:11] »
Да, чё-то народ решил сделать кучу малУ из всех существующих систем программирования. :(
Короче, автор даёт ответ очень хитрый. Я тоже стал пытаться найти длину отрезков и сравнивать целиком промежутки, а этого делать не надо было, иначе ответ не получится.
Вот ответ, который даёт автор:
program Z_17_10;
var P1, P2 : integer; { ганицы платной дороги }
R1, R2 : integer; { границы ремонтируемого участка }
RPL, RCLL : integer; { длины ремонтируемых платного и бесплатного }

BEGIN
write('Платный участок: '); read(P1, P2);
write('Ремонтируемый участок: '); readln(R1, R2);
write('Будут ли ремонтировать ВЕСЬ платный участок? ');
if (P1>=R1) and (P2<=R2)
then writeln(' -- Да')
else writeln(' -- Нет');
{ будут ли ремонтировать хотя бы часть платного участка P1--P2 ?
* Если да, то определить длину ремонтируемой платной части
* }
write('Будут ли ремонтировать ЧАСТЬ платного участка? ');
if (R2<=P1) or (R1>=P2)
then
begin
writeln(' -- Нет');
RPL:=0;
end
else
begin
writeln(' -- Да');
if P2<R2
then RPL:=P2
else RPL:=R2;
if P1>R1
then RPL:=RPL-P1
else RPL:=RPL-R1;
writeln('Длина ремонтируемого платного участка ', RPL);
end;

{ Будут ли ремонтировать хотя бы часть бесплатного участка?
* Если да, то определить длину ремонтируемой бесплатной части.
* }
write('Будут ли ремонтировать хотя бы часть бесплатного участка? ');
if (R1>=P1) and (R2<=P2)
then writeln(' -- Нет')
else
begin
writeln(' -- Да');
RCLL:=R2-R1-RPL;
writeln('Длина ремонтируемого бесплатного участка ', RCLL);
end;
readln;
END.
Приём, который применил автор, определив сначала правую границу участка, а затем левую, мне представляется не очевидным. :-[
Хотя, всё вычисляется правильно, но это ж надо догадаться так сделать. :-\
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.

Онлайн Витторио

  • *****
  • Сообщений: 844
  • Благодарностей: 159
    • Сообщения от Витторио
    • Мир глубокого космоса
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #285 : 12 Фев 2023 [00:20:47] »
Да, чё-то народ решил сделать кучу малУ из всех существующих систем программирования.
Это не народ, а вы решили сделать кучу малу, создав заведомо холиварную тему на непрофильном форуме.
В инете есть масса форумов по Паскалю - когда я на нём программировал, все вопросы адресовал туда, где получал компетентный ответ.

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 382
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #286 : 12 Фев 2023 [08:27:48] »
В инете есть масса форумов по Паскалю - когда я на нём программировал, все вопросы адресовал туда, где получал компетентный ответ.
Может поделитесь ссылкой на этот полезный ресурс? :-[
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.

Оффлайн Павел Васильев

  • ****
  • Сообщений: 499
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #287 : 12 Фев 2023 [10:00:15] »
В инете есть масса форумов по Паскалю - когда я на нём программировал, все
Осталось мало, а для астрономов язык Паскаль самое то, он ближе всего к строгому математического описанию задач небесной механики, без сишных двусмысленностей и переопределения матсимволов, и ясного алгоритмического решения астрометрических проблем. Можно убедиться на примере  исходников SkyChart. Но да, автору надо ближе к астрономии было взять отрезки не из дорожного строительства, а как , скажем,  пути между обитаемыми звёздами или участками трасс звездолётов ВЦ, да и лучей радиосигналов, чтобы по их пересечениям найти некие вероятности по программе SETI, CETI. Или попроще для тренировки, вывести на небосклон отрезки центральных линий и контуры границ одного, выборочных из списка, или всех 88 созвездий. Это можно оформить в виде отдельной программы или визуального компонента. Чего пока в таком виде не встречалось, а было бы полезно, хотя в составе того же  SkyChart или Celestia    исходники процедур есть.

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 382
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #288 : 12 Фев 2023 [15:09:06] »
Но да, автору надо ближе к астрономии было взять отрезки не из дорожного строительства, а как , скажем,  пути между обитаемыми звёздами или участками трасс звездолётов ВЦ, да и лучей радиосигналов, чтобы по их пересечениям найти некие вероятности по программе SETI, CETI. Или попроще для тренировки, вывести на небосклон отрезки центральных линий и контуры границ одного, выборочных из списка, или всех 88 созвездий.
Это школьный учебник по Паскалю. Какие там трассы звездолётов? :facepalm:
У меня много учебников закачено. Есть вузовские из разных ВУЗов, но здесь попроще изложение. Сначала рассматривал другой учебник (их несколько: Павловская, Потопахин, Фаронов, Алексеев/Чеснокова/Кучер и др.), но там более высокий уровень. Вузовские учебники расчитаны на уже подготовленную аудиторию. К тому же хотелось, что бы был FP, т.к. у меня Линукс.
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.

Оффлайн ma][im

  • *****
  • Сообщений: 4 914
  • Благодарностей: 1416
  • Награды Неоднократный победитель конкурса астрофото
    • Сообщения от ma][im
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #289 : 12 Фев 2023 [15:32:50] »
а для астрономов язык Паскаль самое то, он ближе всего к строгому математического описанию задач небесной механики, без сишных двусмысленностей и переопределения матсимволов, и ясного алгоритмического решения астрометрических проблем. Можно убедиться на примере  исходников SkyChart
Та не - это ерундистика, если один энтузиаст написал скайчарт на паскале - это не значит что паскаль язык астрономов ;)))))))
Я как новичек в небесной механике, нашел быстренько либы на Сях libnova и libsofa и на нах накалякал за одну неделю аналог орбитрона с визуализацией и управлением приводами альт-аз мида для
спутников, комет, звезд и планет СС ;) точность позиционирования получилась +-1сек плюс ведение по выбранному объекту.
Вся разработка MS VS С++ плюс OpenCV, паскаль к сожалению или к счастью в этой жизни так и не познал.
(кликните для показа/скрытия)

Оффлайн Павел Васильев

  • ****
  • Сообщений: 499
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #290 : 12 Фев 2023 [16:12:01] »
Вузовские учебники расчитаны на уже подготовленную аудиторию. К тому же хотелось, что бы был FP, т.к. у меня Линукс.
Ну а как же вы хотели,  без подготовки? - это всё же не хухры-мухры, а программирование  :-\. По free pascal в Линуксе и даже по Lazarus специально на русском языке не подскажу, а в Delphi сейчас всё, что пишется на обычном Паскале с модулями System.xxx для консоли или Object Pascal, включая использование кросс-платформенной библиотеки FMX сразу можно без всякого изменения кода своё win32 приложение перекомпилировать (после выбора вида платформы в менеджере  проектов) и на win64/macOS/ios/android и, конечно linux. Ничего переписывать в исходниках не надо. Тоже самое и для с++builder, но он у них всегда хромал  и отставал от Delphi. Сейчас правда подтягивается.
По языку и средам программирования, не по алгоритмам, старую литературу - в топку. Из последних книг лучше всего подойдут для изучения - Glowacki Pawel. Expert Delphi on iOS Android. 2017 (для мобильных приложений, но на английском) и Марко Канту. Руководство по Delphi10.4. 2020 (уже было, но на русском языке). Всякие там OpenCV, Tensor Flow Lite и т.д. если очень надо, то можно найти на гитхабе порт и на Pascal. Но чаще всего это лишнее, так как та же высокоскоростная обработка 32-х битных изображений (не 24-х), включая любые фильтрации и математическую морфологию,  есть в открытой и бесплатной библиотеке Graphics 32 для Delphi/C++Builder.

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 382
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #291 : 21 Фев 2023 [15:41:38] »
Решал задачу:
Д) Пусть ваша программа напечатает введенную пользователем строку
вразрядку, добавляя подчёркивание либо пробел после каждого символа,
например: 'Pascal' преобразует в 'P_a_s_c_a_l'.
Написал текст, исправил несколько ошибок и прога заработала. Посмотрел в ответ и увидел, что у автора прога совсем короткая. Переправил свою прогу на авторский вариант, запустил и увидел, что авторская прога работает неправильно. :-\
Как так? :(
Авторский вариант:

var
i: integer;
S, R: string;
begin
Readln(S);
R:='';
for i:=1 to Length(S)-1 do R:=R+S[i]+' ';
Writeln(R);
Readln;
end.

Мой вариант:

program Z_18_5;

var i, L : integer;
S, R : string;

BEGIN
repeat
writeln('Введите строку: '); readln(S);
if S = '' then break; { выход из цикла, если строка пустая }
R:=''; { инициализировали строк. переменную }
L:= length(S);
for i:=1 to L do begin
R:= R + S[i]; { склеиваем строку по символу }
if i<L then R:= R + '_'; { к последнему знаку добавлять  раздел. знак не надо }
end;

writeln('Получаем: ', R);
until false; { бесконечный цикл }

END.

Автор специально даёт неправильные ответы? >:(
Идея в ответе автора понятна, я сперва хотел сделать нечто похожее, но возникла трудность, что к последнему знаку клеить раздел уже не нужно, поэтому клеил строку по символу, а когда номер i становится равным последнему индексу строки при помощи условного перехода исключил прибавление к нему разделительного знака.
Можно ли написать прогу без условного перехода, как у меня, что бы она работала правильно? :-[
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.

Онлайн CyberManiac

  • *****
  • Сообщений: 8 146
  • Благодарностей: 455
  • Я ♥ オリオン!
    • Сообщения от CyberManiac
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #292 : 21 Фев 2023 [16:32:44] »
Автор специально даёт неправильные ответы? >:(
Походу просто забыл одну строчку.

Идея в ответе автора понятна, я сперва хотел сделать нечто похожее, но возникла трудность, что к последнему знаку клеить раздел уже не нужно, поэтому клеил строку по символу, а когда номер i становится равным последнему индексу строки при помощи условного перехода исключил прибавление к нему разделительного знака.
Тут есть одна хитрость, которая позволяет не хранить длину строки: пробелы нужно добавлять не после всех символов, кроме последнего, а перед всеми символами, кроме первого.

Можно ли написать прогу без условного перехода, как у меня, что бы она работала правильно? :-[
Можно, но не нужно. Если не использовать функцию IfThen, которой в стандартном Паскале нет (хотя в Delphi и Lazarus она имеется с незапамятных времён), будет выглядеть сложно и непонятно, и, при этом, ещё и работать медленнее.

Важнее другое: оба варианта создают лишнуюю строковую переменную для результата, хотя по условию задачи текст нужно только напечатать.
var
  i: integer;
  s: String;
begin
  readln(s);
  for i:=1 to Length(s) do
  begin
    if i <> 1 then write('_');
    write(s[i]);
  end;
  Readln;
end.
Трэш, угар и астрономия!
沖縄最高

Оффлайн LeftUser

  • *****
  • Сообщений: 30 880
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #293 : 21 Фев 2023 [18:32:22] »
Походу просто забыл одну строчку.
В котором надо прилепить к строке послений символ.

var
   i: integer;
   S, R: string;
begin
   Readln(S);
   R:='';
   for i:=1 to Length(S)-1 do R:=R+S[i]+' ';
   R:=R+S[Length(S)]; { вот эта строчка }
   Writeln(R);
   Readln;
end.

Оффлайн Toth

  • *****
  • Сообщений: 2 604
  • Благодарностей: 176
    • Сообщения от Toth
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #294 : 21 Фев 2023 [19:42:01] »
А можно так - изменить 2 строки :

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 382
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #295 : 21 Фев 2023 [20:47:08] »
Важнее другое: оба варианта создают лишнуюю строковую переменную для результата, хотя по условию задачи текст нужно только напечатать.
В задании прямо сказано, что:
 
напечатает введенную пользователем строку
вразрядку
То бишь это должна быть строковой переменной. Здесь не может быть кривотолков. :(
Походу просто забыл одну строчку.
Я то же так думаю. Просто не смог придумать, но придумал
В котором надо прилепить к строке послений символ.
Вероятно, это то, что и хотел написать автор. :-[
А можно так - изменить 2 строки :
На мой взгляд, это не слишком изящно, но, вполне, изворотливо. :)
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.

Оффлайн Toth

  • *****
  • Сообщений: 2 604
  • Благодарностей: 176
    • Сообщения от Toth
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #296 : 22 Фев 2023 [01:46:55] »
Можете попробовать такую задачу, имеющую отношение к астрономии.
Вводите азимут - от 0 до 360, а прога должна писать название, типа Север, или Северо-Восток , и т.п. Ограничимся 8-ю , без всяких С-С-В и п.
Азимут - геодезический, то есть С=0, В=90, ...
Ответ (правда названия англ., чтобы не париться с кодировкой )- 
« Последнее редактирование: 22 Фев 2023 [01:52:44] от Toth »

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 382
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #297 : 22 Фев 2023 [11:29:40] »
Я ещё такого не проходил. :(
Пока начал процедуры и функции. :)
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.

Оффлайн Toth

  • *****
  • Сообщений: 2 604
  • Благодарностей: 176
    • Сообщения от Toth
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #298 : 22 Фев 2023 [17:40:20] »
Пока начал процедуры и функции
Всё в Geany, или Lazarus поставили ?
В Lazarus в Linux кстати нет проблем с кириллицей в оконных приложениях. Вот простое - на Форме - 2 шт Edit и 1 Button.

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 382
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #299 : 22 Фев 2023 [21:19:01] »
Всё в Geany, или Lazarus поставили ?
В Geany, но Лазарус стоит давненько и уже недавно обновлял на новый. :)
Я хотел было с него начать, но там куча всяких фишек, что я решил, что это будет отвлекать от учебного процесса. Сначала хочу, просто, научиться программы писать. 8)
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.