Pers.narod.ru. Алгоритмы |
По просьбам трудящихся открыт отдельный раздел, где будут накапливаться короткие программки (алгоритмы) с комментариями к ним. Реализовано всё на Паскале и Си (ниже).
Тем не менее, вот список разделов сайта, где уже есть множество моих архивов с исходниками или статей по теме: Обучение, Софт, Технические статьи и заметки, PHP, JavaScript. Напоминаю также, что я не размещаю на этом сайте созданных не мной материалов, то есть, это не коллекция надёрганных отовсюду примеров, пусть даже и систематизированных, а моя авторская подборка. Нужные учебные компиляторы, в частности, с Си и Паскаля, можно скачать здесь, вот тут лежит мой учебник по Паскалю, а это - лекции по Си. Проблему с сохранением русского языка при переносе исходника в консольный Паскаль или Си решаем здесь.
Пишем на Паскале |
Математика, сортировки, числа:
Некоторые математические расчёты на Паскале :::
Нахождение всех корней заданного квадратного уравнения :::
Решение СЛАУ методом Гаусса :::
Сверхпростые числа :::
Совершенные числа :::
Самая длинная последовательность нулей :::
Объединение упорядоченных массивов :::
Перестановка значений двух переменных без использования дополнительной переменной :::
Наименьшие числа, не имеющие общих делителей :::
Сумма цифр целого числа :::
Перевод целого числа из десятичной и в десятичную систему счисления :::
Простые алгоритмы сортировки одномерного массива :::
Пример для сортировки на Паскале с визуализацией :::
Нахождение второго по величине максимального (минимального) значения в массиве :::
Нахождение максимального (минимального) значения в массиве без использования дополнительной переменной :::
Строим дерево игры (задача С3 ЕГЭ по информатике) :::
Разбиение массива на положительные и отрицательные элементы :::
Элементы матрицы, все соседи которых больше их :::
Окружность из единичек в нулевой матрице :::
Обход матрицы по раскручивающейся спирали :::
Пример для алгоритма расчёта с заданной точностью (первый замечательный предел) :::
Удаление повторяющихся значений из массива :::
Самый часто встречающийся элемент в массиве :::
Самая длинная повторяющаяся цепочка значений в массиве :::
Задачи с геометрической интерпретацией:
Площадь треугольника по длинам сторон (формула Герона) и координатам вершин :::
3 точки на одной линии :::
Попадание точки в треугольник :::
Площади выпуклого и невыпуклого многоугольников :::
Существование треугольника и четырёхугольника :::
Расстояние от точки до отрезка :::
Минимум расстояния от точки на оси абсцисс до концов отрезка :::
Часовая и минутная стрелки на одной линии :::
Ромб или квадрат? :::
Обход точек ломаной без самопересечений :::
Строки, файлы, множества:
Разбор на слова за 1 проход по строке :::
Самая длинная подстрока, являющаяся записью числа :::
Численные методы, инженерные расчёты:
Метод Ньютона решения нелинейного уравнения :::
Реализация основных методов интерполяции функции одной переменной :::
Построение кубического интерполяционного сплайна :::
Метод наименьших квадратов (МНК) :::
Решение задачи Коши методом Эйлера :::
Количество тепла на единичном сопротивлении (метод Рунге-Кутта 2 порядка и метод Симпсона) :::
Краевая задача для дифференциального уравнения 2 порядка :::
Графика, форматы данных, интерфейсы:
Читаем 16-цветный BMP на Паскале :::
Реализация выпадающего меню :::
Дата, время, случайная генерация:
Дата следующего дня по введенной дате :::
Определение дня недели по дате :::
Количество дней от даты рождения до сегодняшней :::
Программно вычисляем время+(-)минуты=новое время :::
Заполнение экрана случайными символами с учётом частоты встречаемости :::
Генерируем вещественные случайные числа из диапазона [-N,N] :::
Развлечения, игры:
"Код матрицы" :::
Дамка и две шашки :::
Игра "Угадай число" :::
Ханойская башня :::
Особенности языка, системные:
Обработка матрицы и вектора одной подпрограммой :::
Открытый массив на Паскале и проверка правильности ввода :::
Контроль правильности ввода целых чисел на Паскале :::
Перегрузка функций на Паскале с помощью type :::
Отключение текстового курсора в окне консоли Паскаля :::
Модуль мыши на Паскале и пример на работу с ним для графики :::
Пишем на Си |
Математика, числа:
Конвертируем римские цифры в арабские :::
Наибольший общий делитель (алгоритм Евклида) и Наименьшее общее кратное - НОД и НОК для пары чисел и массива :::
Раскраска карты или матрица смежности :::
Минимальный модуль разности сумм элементов в правой и левой части массива :::
Количество различных элементов в массиве :::
Количество монотонных цепочек значений в массиве :::
Симметричный одномерный и двумерный массивы :::
Вычисление суммы ряда в C++ :::
Рекурсивная функция для вычисления чисел Фибоначчи :::
Обработка матриц функциями, работающими с параметром - одномерным массивом :::
Round в C++ :::
Степень двойки, ближайшая сверху к заданному числу :::
Работа с отдельными битами на Си :::
Цикл, выполняемый "туда и обратно" :::
Объединение, пересечение и разность множеств, реализация через массивы :::
Генерируем равномерное распределение целых чисел из интервала [-n,n] :::
Строки, указатели:
Выводим только те символы, которые встречаются в каждой из строк s1, s2 :::
Количество вхождений строки в строку :::
Алгоритм БойераЧМура :::
Простейший "гипертекст" на C++ :::
Работа с файлами:
ASCII-код наиболее часто встречаемого символа в файле :::
Строим частотную таблицу символов на C++ :::
Выделяем динамическую память под файл :::
Численные методы, инженерные расчёты:
Считаем определенные интегралы и выводим график - методы трапеций, Симпсона, разложения в ряд (метод Гаусса с двумя узлами) :::
Графика, форматы данных, интерфейсы:
Алгоритмы Сазерленда-Ходжмена - отсечение многоугольника прямоугольным окном, объединение двух многоугольников :::
Создаём файлы BMP на Си :::
Чтение и запись формата PCX на Си :::
Конвертируем из Лексикона в HTML :::
Генерация таблицы имен цветов Internet Explorer и Netscape Navigator :::
Пишем в текстовый файл ведомость студентов :::
Многоуровневое консольное меню на классах :::
Простейшее меню и окно вывода для консоли C++ (функции библиотеки conio.h) :::
Простейший граф на C++ в графическом режиме консоли :::
Развлечения, игры:
Расстановка слонов и ладей на шахматной доске :::
Путь коня по шахматной доске :::
Особенности языка, системные:
Простые реализации atoi и itoa :::
Пишем собственную функцию atof :::
Используем указатель на функцию :::
Пример на функции с переменным числом параметров :::
Пишем на Си функции нижнего уровня :::
Упражнения на разбор по словам с функцией token :::
Упражнения на резидентные программы под DOS :::
Динамические структуры данных:
Работаем с составными типами данных C++ :::
Cортировка односвязного списка перестановкой указателей :::
Динамическая матрица из строк переменной длины :::
Делаем динамическую структуру на основе двусвязного списка :::
Произвольное и бинарное деревья :::
Упражнения на бинарные деревья и списки :::
Классовый подход:
Примеры на работу с классами в C++ :::
Класс "паскалевских" массивов на C++ :::
Просто алгоритмы |
Волк, коза и капуста :::
Устройство с двумя кнопками :::
Выбор случайной строки за 1 проход по файлу :::
гостевая; E-mail |