- •1. Основные этапы разработки программных продуктов
- •1.1 Постановка задачи
- •Словесная формулировка
- •Формульная постановка задачи
- •1.2 Создание программного продукта
- •1.2.1.Формирование математической модели
- •Формирование исходных данных
- •Составление расчётных зависимостей
- •Правила формирования математической модели.
- •1.2.2.Алгоритмизация задачи
- •Выбор метода решения
- •Составление алгоритма решения
- •Программирование задачи
- •1.2.3. Реализация программного продукта
- •1.2.4. Работа с результатами
- •1.2.5.Анализ результатов решения
- •1.2.6.Принятие решения
- •1.2.7.Составление технической документации
- •1.3.Полная обработки задачи пользователя
- •1.4.Обеспечение эффективности разработки программных продуктов
- •2.5 Идентификаторы
- •2.6 Описание операций
- •2.6.1 Унарные операции
- •2.6.2 Бинарные операции
- •2.6.3 Пунктуаторы
- •Программирование простых ветвлений
- •4.1.5. Программирование задачи
- •Правила составления и использования
- •4.1.5.2. Операторы условной передачи управления
- •Укороченный оператор условного перехода
- •Правила записи и выполнения
- •Условная операция
- •Технология программирования арифметических циклов
- •Циклы с аналитическим заданием аргумента
- •Постановка задачи
- •Формирование математической модели
- •Выбор метода решения
- •Составление алгоритма
- •Оператор цикла с предусловием
- •Правила записи и выполнения
- •Оператор цикла с постусловием
- •Правила записи и выполнения
- •Оператор пошагового цикла for
- •Правила записи и выполнения
- •Программа по алгоритму цикла с предусловием
- •Программа по алгоритму цикла с постусловием
- •Программа по алгоритму цикла с параметром
- •Циклы с табличным заданием аргумента
- •Описание массивов
- •Описатель имя[размер];
- •Обозначение элементов массива
- •Имя[индекс]
- •Описатель имя[разм_1] …[разм_i]… [разм_n];
- •Постановка задачи
- •Математическая формулировка
- •Выбор метода решения
- •Составление алгоритма решения
- •Алгоритмизация структурой цикла с предусловием
- •Алгоритмизация структурой цикла с постусловием
- •Алгоритмизация структурой цикла с параметром
- •Программирование задачи
- •Описание массивов
- •Обозначение элементов массива
- •Составление программ решения задачи
- •Улучшение качества программных продуктов
- •Организация ввода-вывода Использование укороченных спецификаторов
- •Ввод переменных
- •Вывод переменных
- •Организация ввода в диалоге
- •Варианты ввода массивов
- •Оформление выводимых величин
- •Управление выполнением программ Использование составных присваиваний
- •Выбор устройства вывода
- •Повторение расчётов
- •Приостановка вывода
- •Очистка экрана
- •Позиционирование курсора
- •Пример улучшения качества
- •Программирование с использованием подпрограмм
- •Имя (фактические параметры)
- •Подпрограмма с одним результатом
- •Формирование математической модели
- •Выбор метода решения
- •Составление алгоритма решения
- •Программирование задачи
- •Составление алгоритма решения
- •Программирование задачи
- •Составление алгоритма решения
- •Программирование задачи
- •Подпрограмма с результатом – массивом
- •Постановка задачи
- •Математическая формулировка
- •Выбор метода решения
- •Составление алгоритма решения
- •Программирование задачи
- •Обработка текстовой информации в Си Символьные строки
- •Определение значения символьной строки
- •Массивы строк
- •Ввод строки
- •Выделение памяти
- •Функции ввода символьной строки
- •Функция ввода символьной строки gets( )
- •Функция ввода символьной строки scanf( )
- •Преобразование символьных строк
- •Функция atoi( )
- •Функция atol( )
- •Функции atof( ) и atold( )
- •Методика ввода числовых данных с использованием функции gets( )
- •Вывод строки
- •Вывод строки функциями printf( ) и fprintf( )
- •Вывод строки функциями puts( ) и fputs( )
- •Перевод чисел в формат символьной строки
- •Обработка символьных строк
- •Определение длины строки
- •Объединение строк
- •Копирование строк
- •Сравнение строк
- •Функции по работе с датой и временем.
- •Структуры.
- •Работа с дисками.
- •Ввод-вывод потока.
- •Открытие потока.
- •Объектно−ориентированное программирование
- •Классы ObjectWindows
- •Приложение коды клавиш
- •Краткий справочник по Си
- •Оператор вывода на принтер
- •Структура оператора
- •Структура оператора
- •Структура оператора
- •Библиографический список
Циклы с табличным заданием аргумента
К классу циклических процессов с табличным заданием (изменением) аргумента относятся вычислительные процессы вида
yi = f(xi)
при задании аргумента конкретными численными значениями
x1, x2, . . . , xi, . . . , xm.
В математике такая последовательность переменных называется одномерным массивом.
Массив – упорядоченная совокупность однородных элементов (данных), имеющих одно имя и разные индексы.
Каждый массив (матрица) характеризуется тремя параметрами:
-
именем;
-
размерностью (количеством измерений);
-
размером.
Имя – основная часть обозначения массива (каждого его элемента). В качестве имени массива в математике, как правило, используются заглавные буквы, например: A, X, B. Элементы массива обозначают строчными буквами с индексами, например: a1, xk, bi j, yk 8, zk p t.
Размерность – число измерений (направлений изменения) массива. Размерность определяет количество индексов у каждого элемента массива.
Одномерный массив имеет одно направление изменения, а каждый элемент – один индекс. Если измерений больше одного, массив относится к многомерным. Большинство из многомерных массивов – двумерные и трёхмерные.
Двумерный массив можно представить в виде таблицы (матрицы), при этом первое измерение определяет строку, второе – столбец. Каждый элемент двумерного массива имеет два индекса. Первый задает номер строки, второй – номер столбца элемента в таблице.
Трехмерный массив – последовательная совокупность одинаковых по структуре таблиц (страниц). Следовательно, каждый элемент такого массива имеет три индекса, первый из которых определяет номер страницы, второй – номер строки, третий – номер столбца, где расположен элемент.
В качестве индексов элементов могут использоваться числа, переменные и арифметические выражения целого типа, например: 8, i, j+2. Поэтому обозначения элементов одномерного массива X – x1, xj, xj+2; двумерного Y – y2 6, yi j, yk j+3; трехмерного Z – z 2 6 4, z i j k, z i j+6 k-4.
Размер – величина, определяющая максимальное количество элементов массива.
В математике размер записывается в круглых скобках после имени массива и указывается отдельно по каждому измерению. Для многомерных (двумерных и трехмерных) массивов последовательность указания размеров аналогична рассмотренной для индексов. Для указания размера могут использоваться числа и переменные целого типа.
Например, обозначения Y(7), X(m) определяют одномерные массивы Y и X размером 7 и m элементов соответственно. Двумерный массив D, состоящий из 20 строк и 30 столбцов, обозначается как D(20х30). Его размер определяет число элементов (20х30=600) в массиве. Двумерный массив Z из m строк и n столбцов обозначается как Z(mхn), а его размер вычисляют как произведение указанных величин. Трехмерный массив S из десяти страниц с пятью строками и пятнадцатью столбцами на каждой обозначается как S(10х5х15), т.е. состоит из 10х5х15=750 элементов.
Следовательно, в рассматриваемой задаче вычисления yi = f(xi) табличное задание аргумента соответствует одномерному массиву X(m) с именем X и размером m, текущий элемент которого обозначается xi.
Структура – совокупность разнотипных элементов.
Поэтому программирование задачи начинается с определения принадлежности используемых данных к массиву или структуре. В большинстве случаев элементы приводятся к одному типу, что позволяет объединить их в языке Си понятием массив. Обязательными условиями работы с массивом или его элементами (элементом) являются:
-
описание массива;
-
обозначение элементов.