- •Часть 1
- •Часть 1
- •Введение
- •Лабораторная работа № 1 разработка схем алгоритмов
- •Краткая теория Этапы решения задач на эвм
- •Определение алгоритма и способы его описания
- •Правила оформления схем алгоритмов
- •Типы алгоритмов
- •Построение схем алгоритмов с помощью текстового редактора word
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 2 работа в среде netbeans. Создание простейших программ с линейным алгоритмом
- •Краткая теория Установка ide NetBeans
- •Общие правила создания приложений
- •Работа с проектом NetBeans
- •Пример создания простейшего приложения
- •Общие правила построения класса
- •Типы данных
- •Объявление переменных
- •Оператор присваивания
- •Приведение типов
- •Организация ввода данных
- •Организация вывода данных
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 3 разработка простейших приложений на базе разветвляющихся алгоритмов
- •Краткая теория Средства переименования в среде NetBeans
- •Отладка кода в среде NetBeans
- •Условный оператор if-else
- •Условный оператор switch
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 4 разработка программ с циклами со счетчиком
- •Краткая теория Циклы со счетчиком
- •Особенности алгоритмов и программ с накапливанием
- •Методы класса Math
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 5 работа с итерационными циклами. Одномерные массивы
- •Краткая теория Итерационные циклы
- •Цикл while
- •Цикл do-while
- •Одномерные массивы
- •Подсчет суммы, количества и среднего значения в одномерных массивах
- •Нахождение минимума и максимума
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 6 алгоритмы сортировки и разбиения одномерных массивов
- •Краткая теория Сортировка одномерных массивов
- •Разбиение одномерных массивов
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 7 обработка двумерных массивов
- •Краткая теория Понятие многомерных массивов. Ввод и вывод матриц
- •Типовые алгоритмы обработки матриц
- •Алгоритмы обработки матриц в целом
- •Алгоритмы обработки матриц по строкам и столбцам
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 8 диагонали матрицы, умножение матриц
- •Краткая теория Обработка главной и побочной диагоналей матриц
- •Работа с диагоналями матриц выше и ниже главной/побочной
- •Умножение матриц
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 9 обработка строк класса string
- •Краткая теория Создание объектов класса String
- •Методы класса String
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 10 алгоритмы и программы обработки фрагментов строк класса string
- •Краткая теория Сравнение символов строк класса String
- •Типовые задачи обработки массивов строк (слов из текста)
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 11 разработка алгоритмов и программ с использованием классов StringBuffer/StringBuilder
- •Краткая теория Создание и обработка объектов классов stringbuffer и stringbuilder
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Лабораторная работа № 12 разработка собственных методов
- •Краткая теория Общие правила создания методов класса
- •Описание методов класса
- •Вызов методов класса
- •Передача параметров
- •Задания
- •Содержание отчета
- •Контрольные вопросы
- •Библиографический список
- •Содержание
- •Программирование на Java
- •443100, Г. Самара, ул. Молодогвардейская, 244. Главный корпус
- •443100, Г. Самара, ул. Молодогвардейская, 244. Корпус № 8
Типы алгоритмов
Все алгоритмы традиционно можно разделить на три основных типа.
1. Линейный алгоритм предполагает естественный порядок выполнения (следования) блоков ввода, процесса и вывода.
В качестве примера рассмотрим решение следующей задачи.
Задача 1.1. Разработать схему алгоритма для вычисления площади треугольника по формуле Герона:
S=(p·(p – a)(p – b)(p – c))½,
где p – полупериметр треугольника. Длины сторон треугольника a, b, c следует вводить с клавиатуры.
На рис. 1.3 приведена схема линейного алгоритма для решения задачи.
Рис.
1.3
2. Разветвляющийся алгоритм задает выполнение вычислений по одному из возможных направлений в зависимости от исходных данных или промежуточных результатов. Ветвление в таких алгоритмах производится при проверке некоторых условий. Для этой цели в языках программирования используется специальный блок «Решение» (условие). Схемы алгоритма его работы приведены на рис. 1.4.
Рис.
1.4
В качестве примера рассмотрим решение следующей задачи.
Задача 1.2. На плоскости с центром в начале координат проведена окружность радиусом R. Пользователь вводит координаты (X, Y) некоторой точки. Вывести на дисплей ответ: находится эта точка внутри (в том числе и на границе) круга или вне его.
На рис. 1.5 приведена схема разветвляющегося алгоритма для решения задачи.
Рис.
1.5
3. Циклический алгоритм содержит многократно повторяющиеся участки. Повторение группы операторов обеспечивается с помощью специальной управляющей конструкции, называемой циклом. Количество повторений цикла определяется значением некоторой управляющей переменной – параметра цикла.
Схема циклического участка алгоритма может быть представлена в виде, показанном на рис. 1.6 (условие выполнения проверяется в начале цикла) или на рис. 1.7 (условие выполнения проверяется в конце цикла).
Рис.
1.6
Операторы
Да
Нет
Условие
вып.
Рис.
1.7
В качестве примера рассмотрим решение следующей задачи.
Задача 1.3. Вычислить значение функции Y=Sin(X) для аргумента, изменяющегося в некотором диапазоне Xn ≤ X ≤ Xk.
Границы диапазона (начальное значение Xn, конечное значение Xk) и шаг его прохождения (h) вводить с клавиатуры. Выводить на экран соответствующие значения аргумента и функции. На рис. 1.8 приведена схема алгоритма.
Начало
Сообщение
о вводе
Xn,
Xk,
h
Xn,
Xk,
h
X=
Xn
Нет
X≤Xk
Да
Y
= Sin(X)
X,
Y
X
= X+h
Конец
Рис.
1.8
