Курс "Объектно-ориентированное программирование"
  • Главная
  • 1 семестр (осень 2021)
    • Видео
    • Конспект лекций
      • Лекция 1
      • Лекция 2
      • Лекция 3
      • Лекция 4
      • Лекция 5
      • Лекция 6
      • Лекция 7
      • Лекция 8
      • Лекция 9
      • Лекция 10
      • Лекция 11
      • Лекция 12
      • Лекция 13
      • Лекция 14
      • Лекция 15
    • Лабораторные работы
      • Лабораторная работа 1
        • 1. Установка программного обеспечения, создание и запуск проекта
        • 2. Основы синатксиса Java
        • Задание на лабораторную работу
      • Лабораторная работа 2
        • Синтаксис создания классов
        • Задание на лабораторную работу
      • Лабораторная работа 3
        • Инкапсуляция
        • Язык моделирования UML
        • Задание на лабораторную работу
      • Лабораторная работа 4
        • Наследование и композиция
        • Наследование и композиция в UML
        • Задание на лабораторную работу
      • Лабораторная работа 5
        • Задание на лабораторную работу
      • Лабораторная работа 6
        • Абстрактные классы и интерфейсы в UML
        • Задание на лабораторную работу
  • 2 семестр (весна 2022)
    • Конспект лекций
      • Лекция 1-2
      • Лекция 3-4
      • Лекция 5
      • Лекция 6
      • Лекция 7-8
      • Лекция 9
      • Лекция 10
      • Лекция 11-12
      • Лекция 13-14
      • Лекция 15
  • Архив
    • Лекция 2
    • Архив
      • Заметки по абстракции
      • Конспект лекций
        • 1. Принцип Separation of Concerns, контроллер и представление
        • 2. Паттерн MVC
        • 3. Клиент-серверная архитектура. Создание простой RESTful веб-службы с помощью Spring Boot.
        • 4. Внедрение зависимостей (Dependency Injection)
        • 5. Интеграция приложения с СУБД
        • 6. Фреймворк Spring MVC
        • 7. Работа со Spring Security, часть 1
        • 8. Работа со Spring Security, часть 2
        • 9. Развертывание приложения в Heroku
      • Заочники (осень 2022)
      • Архив
        • Лекции
          • Draft
            • 5. Абстрактные классы и интерфейсы. Механизм обратного вызова
            • 6. Анонимные классы
          • Блок лекций 1
            • Дополнительные задания и литература
            • 1. Базовые сведения об ООП
            • 1. Обобщенные типы. Автоупаковка и автораспаковка.
            • 2. Знакомство с языком Java
          • Блок лекций 2
            • 5. Абстрактные классы и интерфейсы. Механизм обратного вызова.
            • 6. Анонимные объекты, классы, методы. Лямбда-выражения.
            • 7. Аргументы переменной длины. Принцип абстракции. Дополнительные принципы ООП.
          • Блок лекций 3
            • 2. Коллекции объектов.
            • 3. Паттерн Итератор. Компараторы. Потоки в Java (Streams API)
          • Блок лекций 4
            • 1. Исключения в Java. Обработка исключений.
          • Блок лекций 5
            • Статические поля и методы
            • Вложенные и внутренние классы
            • Перечисления
          • Блок лекций 6
            • 2. Интеграция приложения с СУБД
        • Лабораторные работы
          • 2. Основы синтаксиса
            • Python
            • C#
          • Лабораторная работа 3
            • 1. Инкапсуляция
            • 2. Перегрузка методов
            • Задание на лабораторную работу
            • Теоретические вопросы
          • Лабораторная работа 4
            • Задание на лабораторную работу
            • Теоретические вопросы
          • Лабораторная работа 6
            • Задание на лабораторную работу
            • Теоретические вопросы
          • Лабораторная работа 7
            • Задание на лабораторную работу
            • Теоретические вопросы
          • Лабораторная работа 8
          • Лабораторная работа 9
          • Лабораторная работа 10
            • Задание на лабораторную работу
          • Лабораторная работа 11
            • Задание на лабораторную работу
          • Лабораторная работа 12
            • Пример выполнения лабораторной работы
            • Задание на лабораторную работу
        • Практические работы
          • Практическая работа 1
          • Практическая работа 2
        • Материалы по Java Spring
          • 1. Клиент-серверная архитектура. Создание простой RESTful веб-службы с помощью Spring Boot.
          • 4. Работа со Spring MVC, часть 1
          • 5. Работа со Spring MVC, часть 2
      • Конспект лекций
        • 1. История развития языков программирования
        • 2. Базовые термины ООП
        • 3. Понятие класса и объекта
        • 4. Создание объектов. Конструктор.
        • 5. Основные принципы ООП. Инкапсуляция.
        • 6. Перегрузка методов
        • 7. Повторное использование кода. Композиция и наследование
        • 8. Полиморфизм
        • 9. Абстрактные классы и интерфейсы
        • 10. Анонимные классы, интерфейсы, методы. Лямбда-выражения
        • 11. Принцип абстракции. Дополнительные принципы ООП
        • 12. Обобщенные типы. Автоупаковка и автораспаковка
        • 13. Коллекции
        • 14. Паттерн "Итератор". Компараторы. Фреймворк Streams API.
        • 15. Исключения в Java. Обработка исключений
        • 16. Принципы разработки графического интерфейса. Фреймворк JavaFX
        • 17. События в JavaFX
        • 20. Перечисления
      • Лабораторные работы
        • Лабораторная работа 2
          • 1. Синтаксис создания классов
          • 2. Язык моделирования UML
          • Задание на лабораторную работу
          • Теоретические вопросы
        • Лабораторная работа 3
          • 1. Инкапсуляция
          • 2. Перегрузка методов
          • Задание на лабораторную работу
        • Лабораторная работа 4
          • Наследование и композиция
          • Наследование и композиция в диаграмме классов UML
          • Задание на лабораторную работу
        • Лабораторная работа 5
          • Задание на лабораторную работу
          • Теоретические вопросы
        • Лабораторная работа 6
          • Задание (старое)
          • Теоретические вопросы
        • Лабораторная работа 8
          • Задание на лабораторную работу
        • Лабораторная работа 9
          • Задание на лабораторную работу
      • Видеолекции
      • Видеолекции
Powered by GitBook
On this page
  • Задания для выполнения:
  • I. Задачи на сайте Practice-It
  • II. Задачи на выбор коллекции

Was this helpful?

Export as PDF
  1. Архив
  2. Архив
  3. Архив
  4. Лабораторные работы
  5. Лабораторная работа 7

Задание на лабораторную работу

PreviousЛабораторная работа 7NextТеоретические вопросы

Last updated 5 years ago

Was this helpful?

Задания для выполнения:

I. Задачи на сайте Practice-It

1. Зайдите на сайт и зарегистрируйтесь.

В качестве "Desired username" указать фамилию и группу латиницей, например, ivanov171.

2. После регистрации и входа в аккаунт, нажмите кнопку "Start practicing!", перейдите в раздел "Building Java Programs, 5th edition", после чего найдите главу 11 "BJP5 Chapter 11: Java Collections Framework"

3. Вам необходимо выполнить все задачи в этой главе (3 вопроса и 14 упражнений).

4. При выполнении задачи, вам дано условие задачи и код. Необходимо вписать то, что должен вернуть метод при определенном входном аргументе.

5. Если вы ответили правильно, то система оповестит вас что все тесты пройдены и можно переходить к другой задаче.

6. При решении упражнения необходимо написать в окне вводе правильный метод. Сначала внимательно прочитайте постановку задачи, поймите как называется метод, что он должен вернуть, какие у него входные аргументы.

7. Для успешного решения упражнения, ваш код должен пройти все тесты.

Протокол лабораторной работы должен содержать ответы на задачу и правильный код методов для упражнений. При сдаче лабораторной работы вы должны зайти под своим аккаунтом в систему и показать, что все задачи и упражнения решены верно.

II. Задачи на выбор коллекции

1. Дан список из 100 целочисленных значений от -1000 до 1000 (создайте и сгенерируйте список). Не используя вспомогательных объектов, переставьте отрицательные элементы данного списка в конец, а положительные – в начало списка. Не используйте методы сортировки.

2. Дан случайный текст – . Выделить все различные слова. Слова, отличающиеся только регистром букв, считать одинаковыми (подумайте о том – какую коллекцию лучше использовать).

3. Дан случайный текст – . Выделить все различные слова. Для каждого слова подсчитать частоту его встречаемости (сколько раз слово встречается / общее количество слов). Слова, отличающиеся регистром букв, считать различными (подумайте о том – какую коллекцию лучше использовать).

4. Дан случайный текст – . Разбить текст на предложения, каждое предложение записать в список. Выполнить сортировку строк, используя метод sort() из класса Collections. Результат вывести на экран.

http://pastebin.com/JEwMJVbh
http://pastebin.com/JEwMJVbh
http://pastebin.com/JEwMJVbh
https://practiceit.cs.washington.edu/