Основы программирование

Императивное программирование

это парадигма основfнная на составлении алгоритма действий которые изменяют состояние программы.

Фактически, программа на этих языках — это код, который выполняется компьютером сразу, без предварительной компиляции

Декларативное программирование

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

Структурное программирование

Согласно принципу модульности программа разбивается на отдельные смысловые части (модули).
Модуль – это функционально законченная часть программы. Например, модуль вычисления

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

  • Линейной
  • Ветвления
  • Циклической

Структурное программирование называют программированием без GOTO.

Функциональное программирование

Команды можно собирать в подпрограммы, но их последовательность не имеет значения. Нет разницы, в каком порядке вы напишете подпрограммы — это же просто правила, а правила применяются тогда, когда нужно, а не когда про них сказали.

Логическое программирование

  • парадигма программирования, а также раздел дискретной математики изучающий методы и возможности этой парадигмы, основанная на выводе новых фактов из данных фактов согласно заданным логическим правилам.
  • Логическое программирование возникло как упрощение функционального программирования для математиков и лингвистов, решающих задачи символьной обработки.

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

Объект – это экземплар какого-то класса

Класс – это шаблон, в котором описаны все свойства будущего объекта и его метода

При этом если класс воздушного шарика определяет свойство цвет, то сам класс никакого значения цвета не имеет. Но экземпляры этого класса, которых, к слову, можно создавать сколько угодно, уже будут раскрашены в любые цвета

Прототипно-ориентированное программирование

стиль объектно-ориентированного программирования, при котором отсутствует понятие класса, а наследование производится путём клонирования существующего экземпляра объекта — прототипа. Каноническим примером прототип-ориентированного языка является язык Self.

Алгоритм

– это точное и понятное предписание (указание) исполнителю совершить определенную последовательность действий, направленных на достижение указанной цели или решение поставленной задачи.

Свойства алгоритмов

  1. Дискретность
  2. Понятеость (определенность)
  3. Однозначность (детерминированность)
  4. Массовость
  5. Результативность (конечность)
  6. Правильность

Виды алгоритмов

  • Линейный – все действаия выполняются в строгой последовательности (приготовление пирога)
  • Разветвляющийся – действия выполняются в зависимости от выполнения или не выполнения условия(переход улицы по светофору)
  • Циклический – содержит повторяющиеся действия(колоть дрова)

Условные графические обозначения символов

Простые типы

У переменной простого типа под ключевым словом скрывается одно значение (зачастую читаемое как число)  и к нему есть прямой доступ. Наиболее известные простые типы это:

  • целое число со знаком,
  • целое число без знака,
  • дробное число (с запятой),
  • символ,
  • логическое значение.

В различных языках они могут немного отличаться.

Луп нахождения стороны

Луп кадратного уравнения