PascalABC.NET

PascalABC.NET
Семантыка імператыўная
Клас мовы мультыпарадыгмавая: Структурнае, аб’ектна-арыентаванае, абагульненае, працэдурнае праграмаванне, функцыянальнае прграмаванне
Тып выканання кампілятар
З’явілася ў 2002
Аўтар(ы) С. С. Міхалковіч, І. В. Бондараў, А. В. Ткачук, С. А. Іваноў
Пашырэнне файлаў pas
Рэліз 3.5, зборка 2067 (25.05.2019)
Тыпізацыя даных статычная
Асноўныя рэалізацыі PascalABC.NET,
Pascal ABC (падтрымка спынена)
Зведала ўплыў Pascal, Delphi, C#, Python
Ліцэнзія LGPL
Сайт pascalabc.net

PascalABC.NET — мова праграмавання Pascal новага пакалення, якая ўключае ў сябе класічны Pascal, большасць магчымасцяў мовы Delphi, а таксама шэраг уласных пашырэнняў. Рэалізавана на платформе Microsoft.NET і ўключае ў сябе ўсе сучасныя моўныя сродкі: класы, перагрузку аперацый, інтэрфейсы, апрацоўку выключэнняў, абагульненыя класы і падпраграмы, зборку смецця, лямбда-выразы, сродкі паралельнага праграмавання.

PascalABC.NET з’яўляецца мультыпарадыгмавай мовай: на ёй можна праграмаваць у структурным, аб’ектна-арыентаваным і функцыянальным стылях.

PascalABC.NET — гэта таксама простае і магутнае інтэграванае асяроддзе распрацоўкі, якое падтрымлівае тэхналогію IntelliSense, якая змяшчае сродкі аўтафарматавання, убудаваны адладчык і ўбудаваны дызайнер формаў. Акрамя таго, кансольны кампілятар PascalABC.NET функцыянуе на Linux і MacOS пад Mono.

Стандартныя модулі

Паколькі ў PascalABC.NET можна карыстацца ўсімі бібліятэкамі платформы .NET, стандартныя модулі нешматлікія і арыентаваны на навучанне:

  • Модуль растравай графікі GraphWPF
  • Модуль растравай графікі GraphABC (састарэлы)
  • Модуль 3D графікі і анімацыі Graph3D (на аснове свабоднай бібліятэкі Helix Toolkit)
  • Модуль вектарнай графікі WPFObjects
  • Модуль вектарнай графікі ABCObjects (састарэлы)
  • Модуль FormsABC для стварэння графічных інтэрфейсаў (на базе тэхналогіі Windows Forms)
  • Модуль NumLibABC (бібліятэка лікавых метадаў)
  • Модулі выканаўцаў Робат і Чарцёжнік (школьная інфарматыка)
  • Модуль электроннага задачніка Programming Taskbook (базавая версія).

Прыклады праграм

Прыклад 1. Найменшае агульнае кратнае двух лікаў

begin
  var (a, b) := ReadInteger2;
  var c := a * b;
  while b <> 0 do
    (a, b) := (b, a mod b);
  c := c div Abs(a);
  c.Print;
end.

Прыклад 2. Раскладанне рацыянальнага ліку на простыя множнікі

begin
  var n := ReadInteger;
  if n < 0 then print('-1');
  var i := 2;
  while n <> 1 do
    if n mod i = 0 then
    begin
      i.Print;
      n := Abs(n) div i
    end
    else if i = 2 then i := i + 1 else i := i + 2;
end.

Прыклад 3. Канвенціраванне 10-ковага ліку ў n-ковы лік

begin
  var (n, a) := ReadInteger2;
  var c := '';
  var m := false;
  if a < 0 then m := true;
  while a <> 0 do
  begin
    var b := a;
    (a, b) := (Abs(a) div n, Abs(b) mod n);
    if b >= 10 then c := chr(b + 55) + c else c := IntToStr(b) + c;
  end;
  if m = true then c := '-' + c;
  c.Print;
end.

Спасылкі

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.