Баннеры

Программы и алгоритмы и для студентов

Просмотров: 222720

Стандартные задачи на циклы

Ссылка на Wiki-страничку с алгоритмами на циклы

Простейшие алгоритмы

  1. Сумма целых чисел
  2. Произведение целых чисел
  3. Двойной факториал n!!=n*(n-2)*(n-4)*...*2 (или 1)
  4. Количество нечетных среди n введенных
  5. Защита от неверного ввода
  6. Табулирование функции f(x) на отрезке в [a,b] (цикл for)
  7. Табулирование функции f(x) на отрезке в [a,b] (цикл while)

Рекуррентные соотношения

  1. Вывод 10 первых степеней двойки
  2. Вывод всех двухзначных чисел, кратных 5
  3. Вывод n первых чисел Фибоначчи
  4. НОД(A,B) (алгоритм Евклида)
  5. Сумма цифр целого положительного числа

Максимумы и минимумы

  1. max из введенных чисел
  2. min из введенных чисел, удовлетворяющий условию

Суммирование рядов (конечных и бесконечных)

  1. Вычисление суммы конечного ряда ?(i=1..n) a^i/i!
  2. Вычисление суммы бесконечного ряда ?(i=1..?) (-1)^i * a^i/i!

Поиск значения

  1. Есть ли среди введенных число k?
  2. Есть ли среди введенных число k? (то же с использованием while)
  3. Является ли число N простым?

Другие алгоритмы

  1. Разложение числа на простые множители
  2. Вычисление значения многочлена в точке x (схема Горнера)
  3. Корень непрерывной функции на отрезке (метод половинного деления)

Стандартные задачи на одномерные массивы

Простейшие алгоритмы

  1. Вывод массива
  2. Заполнение массива случайными числами
  3. Инвертирование массива
  4. Поиск элемента по заданному значению
  5. Поиск с барьером
  6. Минимальный элемент и его индекс

Сдвиги, вставка, удаление

  1. Сдвиг влево
  2. Сдвиг вправо
  3. Циклический сдвиг вправо
  4. Удаление k-того элемента
  5. Вставка на k-тое место

Слияние упорядоченных и бинарный поиск в упорядоченном массиве

  1. Слияние двух упорядоченных в один упорядоченный
  2. Поиск в упорядоченном массиве

Сортировка массивов

  1. Сортировка выбором
  2. Пузырьковая сортировка
  3. Сортировка вставками

Использование процедурных типов в задачах на массивы

  1. Поиск по условию
  2. Количество по условию
  3. Условный минимум
  4. Удаление по условию

Файлы

  1. Создание текстового файла целых и подсчет суммы чисел в файле
  2. Создание текстового файла и преобразование каждой строки - все буквы к верхнему регистру
  3. Создание типизированного файла целых и вывод данных из него
  4. Возведение в типизированном файле всех элементов в квадрат
  5. Сортировка типизированного файла

Списки

Односвязные линейные списки

  1. Вставка в начало списка
  2. Удаление из начала списка
  3. Вставка после текущего узла
  4. Удаление после текущего узла
  5. Проход по списку

Двусвязные линейные списки

  1. Вставка в начало/конец списка
  2. Удаление из начала/конца списка
  3. Вставка перед/после узла
  4. Удаление текущего узла
  5. Проход по списку
  6. Слияние двух отсортированных списков
  7. Объединение двух списков

Рекурсия

  1. Рекурсивное вычисление факториала
  2. Рекурсивное вычисление минимума в массиве
  3. Рекурсивное вычисление чисел Фибоначчи с использованием вспомогательного массива
  4. Ханойские башни
  5. Быстрая сортировка

Деревья

Основные операции

  1. Создание бинарного дерева и его вывод
  2. Обходы бинарного дерева
  3. Поиск элемента в бинарном дереве

Поиск минимальной суммы от корня к листу

  1. Очевидный рекурсивный алгоритм
  2. Алгоритм перебора с возвратом
  3. Алгоритм перебора с возвратом + метод ветвей и границ

Бинарные деревья поиска

  1. Добавление элемента
  2. Вывод
  3. Поиск элемента
  4. Удаление элемента

Абстрактные типы данных. Контейнеры

Стек

  1. Реализация стека. Алгоритм вычисления выражения в ПОЛИЗ (польскую инверсную запись)

Очередь

  1. Реализация очереди. Вывод четных в прямом и нечетных в обратном порядке

Динамический массив

  1. Реализация динамического массива с примером использования

Множество

  1. Реализация множества с примером использования

Ассоциативный массив

  1. Реализация ассоциативного массива с примером использования

Контейнеры .NET

  1. Цикл по LinkedList с помощью LinkedListNode
  2. Цикл foreach по контейнерам List, LinkedList
  3. Цикл foreach по Dictionary

Объектно-ориентированное программирование

  1. Демонстрация наследования
  2. Демонстрация включения
  3. Демонстрация перехвата нескольких исключений
  4. Демонстрация полиморфизма
  5. Демонстрация реализации интерфейса
  6. Демонстрация ограничений на переметры шаблона
  7. Демонстрация использования интерфейса IComparable для сортировки контейнера.

Методы расширения

  1. Фильтрация с помощью Where

Новости

01.02.24. На ресурсе Stepik в ознакомительном режиме открыт курс "PascalАВС.NЕТ: продвинутый уровень".

10.07.23. Вышел релиз версии PascalABC.NET 3.9.0. Нововведения описаны здесь.

20.05.23. На странице https://pascalabc.net/stepikcourse опубликованы новые курсы по PascalABC.NET от центра олимпиадного программирования DL Club.

08.05.23. Вышла версия PascalABC.NET 3.9.0.beta. Основное - ковариантные параметры обобщений, аргументы по умолчанию при вызове подпрограммы, модуль автоматической проверки LightPT. 

22.02.23. Открыта регистрация на конференцию «Использование системы программирования Pas​cal​ABC​.NET в обучении программированию»