Требования к знаниям и умениям

Требования к знаниям и умениям:

Учащиеся должны иметь представление о следующих понятиях:

  • логические константы, переменные и функции;
  • граф, ребро, вершины, дерево, степень вершины, графы переходов.

Владеть фундаментальными знаниями по таким темам, как:

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

Должны уметь:

  • использовать графы для описания отношений между объектами;
  • применять при решении задач на моделирование элементы графа, методы оптимальной стратегии, выигрышной стратегии в игре, метод деления пополам;
  • строить таблицу истинности по заданному выражению и по таблице истинности строить логическое выражение;
  • строить и преобразовывать логические выражения, должны владеть понятиями элементарного высказывания значений TRUE, False, знать, что такое инверсия (логическое НЕ, отрицание), конъюнкция (логическое И или умножение), дизъюнкция (логическое ИЛИ, логическое сложение), импликация (следование), таблицы истинности, порядок логических действий, вычисление простых логических выражений, простейшие законы логики, представлять приложение законов логики как в повседневной жизни, так и в информатике;
  • уметь записывать простое и сложное высказывания на языке логической алгебры;
  • использовать стандартные алгоритмические конструкции при программировании;
  • использовать необходимое программное обеспечение при решении задачи.

Уметь писать программы, используя следующие стандартные алгоритмы:

  • суммирование массива;
  • проверка упорядоченности массива;
  • слияние двух упорядоченных массивов;
  • сортировка (например, вставками);
  • поиск заданной подстроки (скажем, "abc") в последовательности символов;
  • поиск корня делением пополам;
  • поиск наименьшего делителя целого числа;
  • разложение целого числа на множители (простейший алгоритм);
  • умножение двух многочленов.
  • находить ошибки в заданной программе или преобразовать программу по измененному условию.