Рубрика «Pascal» - 3

В поисках перспективных теней для roguelike - 1

Уважаемые Хабровчане, представляю вашему вниманию продолжение изысканий на тему поиска подходящих теней для 2D рогалика.

Данный пост является сиквелом публикации, своеобразной работой над ошибками и дальнейшее развитие идеи.
Читать полностью »

Building a Brainfuck translator in TurboAssembler.

To begin with, we will write an interpreter in a high-level language, for example, in Pascal.

Let's write a program that outputs a character whose ascii-code corresponds to the number of +

Therefore, we only need the bf-commands + and .

    var
     data_mem: array[1..10] of integer;    // data array
     command_mem: string;                 // command array
     i: integer;                         // index of command array
     j: integer;                        // index of data array
    begin
     j:=1;                  
     readln(command_mem);       
     
     for i:=1 to length(command_mem) do begin   // in the cycle we process the string 
      if (command_mem[i]='+') then data_mem[j]:= data_mem[j]+1;
      if (command_mem[i]='.') then write(chr(data_mem[j]));
     end;
    end.

bf-code +++++++++++++++++++++++++++++++++. will issue !
(the ascii-code of the symbol ! is 33).

The efficiency of the program can be checked in online ide ideone.com.
Читать полностью »

Введение

Времена старого и доброго Pascal закончились. Пришло время новых сред разработки под этот язык. Появилось множество диалектов этого языка. Хотя все они имели что-нибудь общее. Сегодня поговорим о диалекте PascalABC.Net и о том почему же стоит от него отказаться, если Вы всерьез хотите заняться программированием и считаете, что это Ваше будущее.
Читать полностью »

Для чего это надо

Часто бывает необходимо писать плагины для программ. Но из-за бинарной несовместимости классов эти плагины придётся писать на том же языке, что и основная программа. В С++ принято располагать таблицу виртуальных функций первой в классе. Если пользоваться определенными правилами (не использовать множественное наследование интерфейсов) и использовать абстрактные классы-то можно добиться возможности запуска плагинов, скомпилированных под разными компиляторами С++.

В этой статье я покажу как использовать плагин написанный с использованием компилятора Free Pascal Compiler в программе на с++ (только общая идея, а не реальный плагин).
Читать полностью »

Голосуем за школьное обучение информатике - 1
(Источник)

Как известно, истина в математике и естествознании не определяется голосованием. Это относится и к информатике (computer science – CS). Несмотря на это, по одной из самых острых проблем CS: $P=? NP$ уже проводилось несколько голосований, в которых участвовали ведущие мировые эксперты:

На начало 2000-х гг. большинство математиков считают, что эти классы не равны. Согласно опросу, проведённому в 2002 году среди 100 учёных, 61 человек считает, что ответ — «не равны», 9 — «равны», 22 затруднились ответить и 8 считают, что гипотеза не выводима из текущей системы аксиом и, таким образом, не может быть доказана или опровергнута.
(Википедия )

Воспользуемся этим примером и предложим опрос по наиболее острым вопросам школьной информатики, которые выявило недавнее обсуждение.
Читать полностью »

Или как можно проще об основных принципах ООП в Lazarus и FreePascal

Часть I

Изучать ООП (объектно-ориентированное программирование) можно двумя способами: или прочитать сотню книжек, в которых дается голая теория об устройстве классов и принципах наследования, полиморфизма, инкапсуляции, но так ничему и не научиться, или перестать беспокоиться и попытаться на практике освоить новые приемы, переработав, к примеру, готовые коды, а лучше с нуля изготовив что-то простое, но красивое.

Во всех книгах, посвященных паскалю, delphi и lazarus (я нашел аж целых две о последнем), очень схожая часть, посвященная ООП. По этим книгам можно много узнать о том, насколько круче ООП устаревшего структурного подхода, но так и не получить достаточных навыков применения этого на практике. Конечно, любой программист, использующий визуальные IDE, уже по умолчанию использует ООП, так как все компоненты и структурные элементы визуального приложения представляют собой объекты, однако свои собственные структуры и абстракции перенести в парадигму ООП бывает очень сложно. Чтобы понять всю прелесть и оценить открывающиеся перспективы, я решил сделать небольшое приложение, которое в конечном итоге превратилось в простенький screensaver. Заодно вспомнил о существовании тригонометрии.

Приложение будет рисовать на экране в случайных местах пятьдесят полярных роз с разными характеристиками: размер, цвет, количество лепестков. Потом их же затирать и рисовать новые, и т.д. Используя принципы структурного программирования, можно, конечно, сделать обычный многомерный массив объемом на 50 и в нем сохранять все уникальные характеристики. Однако стоит вспомнить, что паскаль подразумевает строгую типизацию данных, а, следовательно, массив не может состоять их элементов с разными типами. Можно сделать массив из записей (record), но чего уж мелочиться, от записи до класса — один шаг. Вот его мы и сделаем.

Читать полностью »

2016 год уже на исходе, но его вклад в игроиндустрию останется с нами надолго. Во-первых, видеокарты из красного лагеря получили неожиданно удачное обновление в среднем ценовом диапазоне, ну а во-вторых NVIDIA в очередной раз доказала, что не зря занимает 70% рынка. Maxwell’ы были хороши, GTX 970 по праву считалась одной из лучших карточек за свои деньги, но Pascal — совсем другое дело.

Гайд по Pascal: разбираемся в видеокартах NVIDIA 2016 года - 1

Новое поколение железа в лице GTX 1080 и 1070 буквально похоронило результаты прошлогодних систем и рынок флагманского б/у железа, а «младшие» линейки в лице GTX 1060 и 1050 закрепили успех в более доступных сегментах. Владельцы GTX980Ti и прочих Titan’ов рыдают крокодильими слезами: их убер-пушки за много тысяч рублей разом потеряли 50% стоимости и 100% понтов. Сама NVIDIA заявляет, что 1080 быстрее, чем прошлогодний TitanX, 1070 легко «наваляет» 980Ti, а сравнительно бюджетная 1060 сделает больно владельцам всех остальных карточек.

Так ли это, откуда растут ноги высокой производительности и что с этим всем делать в преддверии праздников и внезапных финансовых радостей, а также чем именно себя порадовать, можно узнать в этой длинной и немного занудной статье.
Читать полностью »

image

Некоторые считают, что современный мир почти не знает Никлауса Вирта и даже не догадывается о его огромном вкладе в мировую компьютерную науку. Кто-то полагает его «отцом Паскаля». Вирта вспоминают не только педагоги в ВУЗах, когда преподают студентам Turbo Pascal, но и коммерческие разработчики, пишущие на Delphi.

На самом деле, Никлаус Вирт является инженером с большой буквы, его вклад в развитие языков программирования не ограничивается Паскалем, а только начинается с него. Кроме того, Вирт — педагог, общественный деятель и, можно сказать, философ. Попробуем оценить реальный масштаб его личности и вклад в ИТ-индустрию.Читать полностью »

Каким будет следующее поколение видеокарт - 1Если стационарный компьютер или ноутбук ориентирован на новые и требовательные видеоигры, а также работу с системами автоматизированного проектирования и другими специализированными приложениями, то в нём чаще всего установлен видеоускоритель либо компании Nvidia, либо AMD. Текущее поколение видеоускорителей представлено девятисотой серией GeForce и трёхсотой серией чипов Radeon. Обе постепенно заполняются моделями разной направленности: Nvidia начала делать это осенью 2014 года, AMD — в прошлом июне.

Новая линейка появится в 2016 году. Производители предоставляют скудную информацию о новых продуктах. Возможно, они опасаются эффекта Осборна: рассказ о более совершенном последователе состарит текущую модель в общественном восприятии, что негативно отразится на продажах последней. А ещё разработчики и сами могут не знать, как будет выглядеть конечный продукт на прилавке. Но какая-то информация есть уже сейчас.
Читать полностью »

Нет, игр не будет

Автомобильный суперкомпьютер Drive PX 2 от Nvidia для автономного вождения - 1Год назад на Международной выставке потребительской электроники CES 2015 производитель видеоускорителей Nvidia показал свой продукт для беспилотных автомобилей. Это был компьютер Drive PX. В этом году на CES 2016 глава Nvidia Жэнь-Сунь Хуан рассказал о обновлении этого продукта. Новый компьютер носит название Drive PX 2, обладает тепловыделением 250 ватт и системой жидкостного охлаждения.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js