- •Часть 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
Содержание отчета
Готовится один отчет на бригаду в печатном виде для заданий, указанных в лабораторной работе. Он должен содержать следующие разделы:
титульный лист;
задание;
словесное описание алгоритма;
текст программы на языке Java.
Контрольные вопросы
1. Как в java представляются строки текста?
2. Как объявляется и инициируется объект класса String?
3. Какие основные методы класса String Вам известны?
4. Как осуществляется вызов методов обработки строк?
5. Как можно разбить строку на слова?
6. Существуют ли методы, позволяющие заменить внутри строки одни символы на другие?
7. Совпадают ли коды строчных и прописных символов и как игнорировать их различие, если оно есть?
8. Можно ли сравнивать коды строк не только на равенство, но и на больше/меньше?
Лабораторная работа № 10 алгоритмы и программы обработки фрагментов строк класса string
Цель работы – получение навыков работы с методами класса String и знакомство с типовыми алгоритмами обработки массивов строк, полученными стандартным методом split().
Источники: [3, с. 178-183], [4, с. 77-86].
Краткая теория Сравнение символов строк класса String
Такие задачи связаны с подсчетом количества некоторых символов в строке, определением числа вхождений каждого из символов в строку и т.д. Наиболее типичной является проблема нахождения количества гласных (согласных, звонких согласных, цифр и т.д.) в предложении. Эти символы, как правило, расположены в разных местах кодировочной таблицы. Целесообразно представлять их в виде некоторого эталонного набора (строки). Рассмотрим алгоритмы таких задач.
Задача 10.1. Ввести в ЭВМ предложение. Подсчитать количество в нем гласных букв.
Общий алгоритм:
1. Задать эталонную строку.
2. Ввести предложение.
3. Подсчитать количество символов эталонной строки в предложении и вывести его.
4. Закончить.
Уточненный алгоритм:
1.1. Задать Эталонную_строку.
1.2. m = Длина Эталонной_строки.
2.1. Ввести Предложение.
2.2. n = Длина Предложения.
3.1. Количество_символов = 0.
3.2. Для номера символа Предложения i от 0 до n – 1.
3.2.1. Для номера символа Эталонной_строки j от 0 до m – 1.
Если символ Предложение[i]=символу Эталонная_Строка[j]
Количество_символов ++.
3.3. Вывести Количество_символов.
4. Закончить.
Задача 10.2. Ввести в ЭВМ предложение. Подсчитать, сколько раз встречается каждая гласная в нем.
Общий алгоритм решения этой задачи совпадает с предыдущим, но количество вхождений необходимо подсчитывать не для всех, а для каждой гласной (согласной и пр.). При этом целесообразно внешний цикл организовать по номеру эталонного символа, а внутренний – по номеру символа в предложении.
Уточненный алгоритм:
1.1. Задать Эталонную_строку.
1.2. m = Длина_Эталонной_строки.
1.3. Создать массив Кол_символов_Эт размерностью m.
2.1. Ввести Предложение.
2.2. n = Длина_Предложения.
3.1. Для номера символа Эталонной_строки j от 0 до m – 1.
3.1.1. Кол_символов_Эт [j]= 0.
3.1.2. Для номера символа Предложения i от 0 до n – 1.
Если Предложение[i] = Эталонная_Строка[j] то
Кол_символов_Эт[j]++.
3.1.3. Если Кол_символов_Эт[j]> 0,
Вывести:
символ Эталонная_Строка[j] –> Кол_символов_Эт[j].
4. Закончить.
