Участник:Серпов Тимофей/Программирование на языках высокого уровня: различия между версиями
Строка 71: | Строка 71: | ||
{{#ask: [[Категория:Scripting Tutorials]] [[Environment::Scratch]] | ?Description }} | {{#ask: [[Категория:Scripting Tutorials]] [[Environment::Scratch]] | ?Description }} | ||
=== [[ | === [[Kotlin]] examples=== | ||
{{#ask: [[Категория:Scripting Tutorials]] [[Environment:: | {{#ask: [[Категория:Scripting Tutorials]] [[Environment::Kotlin]] | ?Description }} | ||
== Стандартные типы данных == | == Стандартные типы данных == |
Версия 09:45, 16 сентября 2023
Шаблон продвижения по учебному курсу
== Работа в вики среде == == Языки высокого уровня. Типология языков == == Визуальное программирование == == Стандартные типы данных == == Работа с данными. Среда выращивания данных и анализа данных == == Концепции программирования. Распространённые языковые конструкции == === Алгоритмы поиска и сортировки в разных языках == == Контейнеры для хранения данных == == Функциональное программирование. Функции высшего порядка == == Объектно-ориентированное программирование == == Модули и библиотеки == == Работа с медиа. Программирование игр и программирование внутри игр ==
когда <клавиша [пробел] нажата>
Языки высокого уровня. Типология языков
- Работа с объектами в категории Category:Язык программирования
- Работа с объектами в категории руководства - рецепты
- Как добавить диаграмму связей на вики страницу
- Как включить Snap! проект в состав вики страницы
- Как получить изображение Scratch блоков
- Как оценить Scratch проект
- Как использовать визуальные блоки на вики страницах
- Scratch/VisualCommands
- How to Make a Calculator
Визуальное программирование
- https://scratch.mit.edu/users/patarakin/
- https://snap.berkeley.edu/user?username=patarakin
- https://www.slnova.org/patarakin/
{{#ask: [[Category:Язык программирования]] [[Визуальная реализация::Блоки-Иконки]] [[ActiveNow::Project is active]] | ?Description | ?Адрес_сообщества }}
Статьи для рецептов в среде StarLogo_Nova
Description | |
---|---|
How to graph with StarLogo Nova | Как представить графики численности агентов StatLogo Nova - простая лабораторная работа по сбору данных из мира, заселённого травой, кроликами, волками и медведями
|
Object Attraction | Как имитировать притяжение объектов друг к другу? |
Вернуться к предыдущей версии текста | Распространённая ситуация, когда после внесённых изменений программа перестаёт работать или что-то идёт не так. Большинство современных систем помнят историю версий и позволяют вернуться к прежним версиям. Например, в MediaWiki - история страницы. В StarLogo Nova - история версий (Current Version) View Project History. |
Задать цвет части поля | Как задать цвет поля (или его части) для разных сред агентного моделирования |
Как вырастить данные в искусственном сообществе | Для того, чтобы получить данные, можно создать имитационную модель, агенты которой будут имитировать поведение биологическое или социальное поведение животных, людей или организаций. В процессе своих действий агенты будут порождать данные, которые можно собрать и проанализировать.
![]() |
Как задать свойства миру StarLogo Nova | Свойства мира задаются так же как и свойства отдельной породе Пример того, как использовать свойства мира в своем проекте https://www.slnova.org/biograph/projects/785938 |
Как задать свойства породе объектов | Для многих классов объектов или агентов можем заранее определить свойства - атрибуты. Некоторые предопределены заранее, некоторые задаются авторами модели.
![]() |
Как копировать поведение агентов в Snap! | Попытка переноса поведения драконов из StarLogo Nova в Snap! |
Как не задавить человека танком | Как не задавить человека танком |
Как создавать породы агентов | В ряде сред агентного моделирования есть возможность создать породу (класс) агентов, которые будут обладать общими свойствами. Например, это могут быть ученики, учителя, волки, кролики, мячики и т.д. Каждый объект класса будет хранить свои породные свойства. Эти данные можно собирать и использовать в управлении системой.
![]() |
Как создать мир и заселить его разными породами | Мы хотим создать мир и заселить его разными породами растений и животных. Общая схема для многоагентной системы - внутри мира создать породы агентов, описать свойства, которыми обладают агенты и World - when Setup (pushed) создать нужное количество агентов разных пород. |
Как управлять поведением агентов на основании их пространственных характеристик | Распространённая в играх и моделях ситуация, когда агента должен совершать действия на основании того, где он находится, кто находится с ним рядом и т.п. |
Как управлять численностью агентов Starlogo | Мы можем либо сразу указать в программе сколько создавать тех или иных агентов, либо сделать рычажки слайдеры и тогда пользователь сможет самостоятельно определять сколько будет создано тех или иных агентов |
Определить и использовать цвет точки под собой | Как определить и использовать в программе цвет точки, на которой находится агент. Распространённая задача, когда действия агента основываются на свойствах среды. Для NetLogo можно использовать конкретный цвет patch на котором стоит агент. Для StarLogo Nova - создадим специальное свойство и будем его изменять в зависимости от цвета поля |
Создать первую модель в StarLogo Nova | Создаём первую модель в мире StarLogo Nova - В модели будет одна порода агентов (рыб или птиц), которые будут перемещаться в пространстве |
Создать процедуру с входными параметрами | Часто встречающаяся ситуация, когда нужно взять исходные данные, совершить над ними действия и вернуть полученный результат. Показано на пример Snap!, StarLogo Nova, App Inventor, NetLogo |
Убегать от противника | Как научить агента убегать от противника:
|
Статьи для рецептов в среде Scratch
Description | |
---|---|
3D Wireframes | Как создать 3D каркас |
Additional Keys | Как создавать и использовать комбинации дополнительных клавиш? |
Advanced Platformer Physics | Как мы имитируем физические свойства внутри Scratch |
Advanced Platformer Tutorial | Как создать продвинутый платформер |
Creating a Quiz | Как создать квиз - викторину из вопросов и ответов. |
Heap | Как использовать кучу? - Куча (структура данных) |
How to Keep Score in a Game | Как хранить результаты (очки) в игре |
How to Make a Basic Platformer | Как создать платформер |
How to Make a Basic Shooter | Как создать проект игры "стрелялки" и какие блоги и конструкции используются для построения игр такого типа. |
How to Make a Clicker Game | Руководство по созданию игр типа clicker-game |
How to Make a Tower Defense Game | Как сделать игру по защите города |
How to Move Sprites with the Arrow Keys | Как управлять спрайтами при помощи клавиш клавиатуры - в блочных языках реализуется через связку нажатия определённой клавиши и поворотом в |
How to Move a Sprite in a Spiral | Как организовать движение агента по спирали |
Movement | Как управлять движением агентов на экране |
Non-Euclidean Game Tutorial | Код решений, которые используются при создании игр типа «Неевклидова игра». «Неевклидова игра» — это то, что разработчики игр часто называют игрой, в которой мировое пространство не работает так, как работает реальный мир. Например, размещение огромной комнаты в небольшом пространстве или подъем по лестнице опускает игрока на уровень ниже. Возможности безграничны. |
Object Attraction | Как имитировать притяжение объектов друг к другу? |
Pathfinding | Поиск пути (англ. Pathfinding) — термин в информатике и искусственном интеллекте, который означает определение компьютерной программой наилучшего, оптимального маршрута между двумя точками. |
Removing an Item from a List (by value) | Как удалить элемент из списка по значению этого элемента, а не по его индексу? В статье рассматривается пример на Scratch |
Shooting Projectiles | Как стрелять снарядами? (Бросать объекты, клонировать объекты и т.п. действия) |
The ball gathers the stars | Проект внутри которого 3 породы- мяч, звезды, подарок |
The cowboy cat | С помощью этого скрипта случайным образом выбираются два числа от 0 до 10, после чего кот просит их перемножить и написать полученный ответ. Если ответ верный, кот произносит один набор фраз и подпрыгивает, снимая шляпу. Если ответ введен неверный, то произносит другую фразу и озвучивает правильный ответ.
![]() |
Using Clones for Particle Effects | Как создать эффект частиц с помощью клонов? |
Использовать данные МЭШ для моделирования поведения учителей | При изучении языков высокого уровня хотелось бы опираться на реальные ситуации, которые происходят с учителями. Эти ситуации описываются и моделируются в различных языках. Мы взяли несколько сред многоагентного моделирования, где агенты симулируют поведение учителей, и скрестили эти языки с данными, которые были извлечены из МЭШ.
|
Как использовать Scratch API | Как использовать внешний API в средах визуального программирования |
Как использовать визуальные блоки на вики страницах | Благодаря специальному расширению в вики можно использовать текстовые блоки для представления программ на языке Scratch и Snap! |
Как использовать облачные данные в Scratch | Способ использования облачных данных, которые хранятся на сервере (Игровые очки, сравнение результатов) |
Как оценить Scratch проект | Как оценить Scratch проект при помощи автоматического анализа кода проекта при помощи Dr.Scratch |
Как перевести Scratch в Snap! | Для того, чтобы перевести Scratch в Snap! нужно воспользоваться программой https://snapinator.github.io/#
|
Как получить изображение Scratch блоков | В ряде случаев для публикации материалов необходимо получить изображение блоков Scratch в виде графических файлов. Приложение https://scratchblocks.github.io/ позволяет получить блоки в формате png svg |
Как получить список случайных значений | В общем случае создаём исходно пустой список и добавляем в него указанное число чисел, находящихся в указанном интервале. Для Snap!
Список случайных чисел из %сколько от %min до %max ![]() |
Как собрать данные об отношениях участника в сети Scratch | У нас есть возможность обратиться к Scratch API и запросить информацию о тех, на кого подписался данный участник сообщества. И есть возможность запросить информацию о тех, кто подписался на данного участника |
Как создавать клоны в Scratch | Создаём клоны в Scratch |
Как управлять поведением агентов на основании их пространственных характеристик | Распространённая в играх и моделях ситуация, когда агента должен совершать действия на основании того, где он находится, кто находится с ним рядом и т.п. |
Какие есть функции для списков? | В различных языках программирования достаточно часто встречаются задачи обработки списков. В этой статье собраны функции для списков |
Организовать взаимодействие персонажей | В искусственном мире есть несколько акторов-персонажей и мы хотим, чтобы они взаимодействовали между собой
Каждый персонаж, который создали участники нашей команды, в начале истории будет прятаться и вставать в угол, где он колобка не учует. Появляться зверь этот зверь будет только тогда, когда его позовут - т.е. когда он получит сообщение. Например, медведь будет реагировать на сообщение “Приходи, медведь”. Общая схема обмена сообщениями выглядит следующим образом:
|
Организовать обмен сообщениями между агентами | Как организовать обмен сообщениями между агентами? И в Scratch и в Snap! действует театральная метафора, когда персонажи могут обмениваться сообщениями и реагировать на сообщения. При этом в Scratch сообщения рассылаются всем, а в Snap! есть возможность указать адресата сообщения
![]() |
Посчитать и сохранить значение | Посчитать и сохранить значение/ У нас есть множество зверей и все они собираются как-то взаимодействовать с колобком. И нам нужно, чтобы звери набрасывались на колобка не все сразу с криком “Я тебя съем”, а делали это по очереди. Как организовать эту очередь? |
Сортировка вставками | Сортировка вставками (англ. Insertion sort) — алгоритм сортировки, в котором элементы входной последовательности просматриваются по одному, и каждый новый поступивший элемент размещается в подходящее место среди ранее упорядоченных элементов. Вычислительная сложность 0(n2) |
Сортировка пузырьком | Сортиро́вка простыми обменами, сортировка пузырько́м (англ. bubble sort) — простой алгоритм сортировки. Для понимания и реализации этот алгоритм — простейший, но эффективен он лишь для небольших массивов. Метод сортировки обменами лежит в основе некоторых более совершенных алгоритмов, таких как шейкерная сортировка, пирамидальная сортировка и быстрая сортировка.
![]() |
Kotlin examples
Стандартные типы данных
Работа с данными. Среды выращивания данных и анализа данных
- Как обратиться к внешним данным из вики
- Как обратиться к внешним данным из Snap!
- Как вырастить данные в искусственном сообществе
- Какие данные есть внутри вики - Категория:Dataset