- •Государственный технический университет - Обнинский институт атомной энергетики е.А.Виноградова а.Г.Царина Программирование на языках высокого уровня.
- •Содержание
- •Введение. Подготовка и решение задач на компьютере.
- •Алгоритмы.
- •Основные свойства.
- •2.2 Способы представления алгоритмов.
- •2.3 Базовые структуры алгоритмов.
- •2.3.1 Линейная структура.
- •2.3.3.2. Цикл с постусловием:
- •Типы данных.
- •3.1 Базовые типы данных.
- •2.3.3.1. Цикл с предусловием:
- •Целый тип (int)
- •Символьный тип (char)
- •Расширенный символьный тип (wchar_t)
- •Логический тип (bool)
- •Типы с плавающей точкой (float, double и long double)
- •3.2 Переменные.
- •3.3 Ссылки.
- •3.4 Указатели.
- •3.3 Выражения.
- •3.3 .1 Операции.
- •4. Реализация базовых структур алгоритмов в языке с.
- •4.1 Оператор присвавания
- •4.2 Оператор «выражение»
- •4.3 Операторы ветвления
- •4.3.1 Условный оператор .
- •4.3.2. Оператор switch.
- •4.4 Операторы цикла
- •4.4.1 Циклы с предусловием
- •4.4.1.1 Цикл for.
- •4.4.1.2 Цикл с условием (while)
- •4.4.1 .3 Цикл с постусловием (do while)
- •5. Функции. Основные понятия
- •Определение функции
- •Рекурсивные функции.
- •Одномерные массивы.
- •6.1 Статические массивы.
- •6.2 Динамические массивы.
- •6.2.2 Функции преобразования динамических массивов.
- •7. Алгоритмы поиска и сортировки.
- •7.2 Последовательный поиск c барьером.
- •7.3 Дихотомический поиск в упорядоченом массиве.
- •7.4 Cортировка массивов.
- •7.4.1 Обменная сортировка (метод пузырька)
- •7.4.2 Метод "простой выбор".
- •7.4.3 Сортировка "прямое включение"
- •8 . Матрицы
- •8.1 Статические матрицы.
- •8.2 Динамические матрицы.
- •9. Строки в с.
- •1. Длина строки – strlen.
- •3. Копирование строк.
- •4. Объединение строк.
- •5. Поиск в строках
- •10. Cтруктуры.
Алгоритмы.
Основные свойства.
Алгоритм - это точное предписание по выполнению процесса обработки данных, которое за конечное число шагов всегда приводит к решению задачи для любого набора исходных данных из области допустимых значений. Алгоритм обладает тремя основными свойствами: детерминированности, массовости и результативности.
Детерминированность (определенность) означает, что каждый шаг метода решения должен быть описан ясно и не допускать двоякого толкования человеком, транслятором, компьютером.
Массовость означает, что алгоритм должен работать при любом наборе исходных данных из области допустимых значений.
Результативность означает, что алгоритм за конечное число шагов всегда приводит к решению задачи.
2.2 Способы представления алгоритмов.
Алгоритм может быть представлен словесным описанием (псевдокод), на алгоритмическом языке и в виде блок-схем. Словесная форма обычно ориентирована на человека, запись на алгоритмическом языке - для человека и для компьютера. Графическое наглядное представление алгоритма (программы) выполняется при помощи блок-схем.
2.3 Базовые структуры алгоритмов.
Начинающий программист испытывает некоторый шок от бесконечного разнообразия алгоритмов, с которыми ему приходится иметь дело. Кажется, что каждый неповторим, уникален.
Кажется, что невозможно наработать опыт, шаблоны, которые помогут в очередной раз. К счастью, это не так. Достаточно знать, что, несмотря на сложность алгоритмов, в них используют всего-навсего четыре базовых структуры. Каждый алгоритм - это очередная уникальная суперпозиция этих четырех базовых шагов. Знакомство с любым языком начинается с того, что пользователь изучает, как в нем реализованы базовые структуры алгоритмов.
2.3.1 Линейная структура.
Например, при вводе значений переменных с клавиатуры входные данные - это десятичное число, представленное в символьной форме; далее выполняется преобразование в машинный формат. Результат: число в машинном формате занесено в поле вводимой переменной
2.3.2 Выбор одного из нескольких вариантов вычислений.
2.3.2.1 Ветвление.
Ветвление позволяет сделать выбор одного из двух вариантов обработки информации. Выбор осуществляется на основе условия L.
ECЛИ условие L удовлетворяется, ТО выполнить действия S1; ИНАЧЕ выполнить действия S2.
Частный случай этой структуры:
2.3.2.2 Селективная структура.
Селективная структура позволяет выбрать один из многих путей вычислений.
К - переключатель на один из вариантов Si;. В зависимости от значения переключателя К выполнится та группа действий, перед которой стоит метка, совпадающая с текущим значением К.
2.3.3. Повторы (циклы).
Очень часто в алгоритмах возникает необходимость многократно повторить одни и те же операции. В этом случае используют циклические структуры.
Количество повторов либо известно, либо зависит от выполнения некоторого условия.
Существует два типа повторов (циклов).
