Программирование мобильных устройств (часть 1). Лабораторные работы №№1-3 и контрольная работа №1
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Excel
- Программа для просмотра изображений
- Microsoft Word
Описание
Задание 1:
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
Дополнительные материалы
Видео по обработчику кнопок
Видео Простой список
Список произвольного вида
Задание 2: Необходимо написать игру. Сюжет: множество насекомых ползают по экрану по сложной траектории. Задача игрока уничтожить за отведенное время как можно больше насекомых. За промахи игроку начисляется очки отнимаются. Игра должна сопровождаться звуковыми эффектами. Варианты:
1. В качестве насекомых (осы, и пауки)
2. В качестве насекомых (Божьи коровки, мухи)
3. В качестве насекомых (тараканы, и пчелы)
4. В качестве насекомых (осы, и мухи)
5. В качестве насекомых (майские жуки, и тарантулы)
6. В качестве насекомых (тараканы, и пауки)
Описание выполнения:
Первым шагом необходимо определить архитектуру приложения. Пусть архитектура будет построена следующим образом.
Звуки и картинки насекомых следует брать в интернете. Следует дополнить этот набор картинок, добавив «красные пятна крови» (эти картинки будут появляться при «попадании» игроком).
Время раунда игры составляет 2 минуты.
При запуске приложения открывается меню, позволяющее вести имя игрока, просмотреть рекорд, задать количество жуков и приглашение к началу игры.
Основной класс приложения (main) будет заниматься прорисовкой всех жуков. Состояние всех жуков хранится в глобальном массиве структур(Mass) . Структура должна хранить координаты жука (x,y), направление движения (dx,dy),флаги(жив/мертв), и байт, соответствующей отображаемой картинке (т.к. жуки могут быть разными).
Работа класса происходит в бесконечном цикле, считывание информации из массива и корректное его отображение. Не рекомендуется заниматься прорисовкой из других потоков, т.к. это может привести к ошибкам.
В других потоках, соответствующих жукам, мы будем заниматься перерасчетом состояний отдельно каждого элемента глобального массива. При смерти жука, объект не уничтожается, а некоторое время просто не отображается на экране. В противном случае нам придется создавать каждый раз новых жуков, что потребует дополнительной памяти.
Отдельно в классе сервисе следует размещать мелодии в игре. Быстрые мелодии (хруст жука) менее 1-2 сек вполне можно размещать в классе main. Нужно не забыть отключать звуки при остановке приложений и восстанавливать при возобновлении работы приложения(используйте функции onPause и onResume).
Используйте класс Preferences для сохранения результатов игры.
Проверку попадания нажатия по жуку следует сделать так:
for (int i=0;i<N;i++){ //просматриваем весь массив структур
if (Mass[i].status==Alive){ // Если жук жив и ...
if ((Mass[i].x1<e;x)&&(x≤Mass[i].x2)&& (Mass[i].y1≤y)&&(y≤Mass[i].y2))
// координаты нажатия x,y по экрану лежат на картинке, где x1 x2 –границы
// картинки жука и x1≤x≤x2 и y1≤y≤y2
{
//Попали по жуку
}
}
}
Допускается использовать вместо класса Panel, класс SurfaceHolder.
Элементы кода
Рисование с использованием класса Panel
Сохранения состояния класс Preferences
Звуковые эффекты
Потоки и таймеры
Работа с Touchpad
Задание 3:
Реализуйте прыгающий <объект>. Начальная позиция появления объекта определяется нажатием пальца по экрану. Объект падает с ускорением вниз, отражаясь от нижней границы экрана, и с незначительным смешением вправо. С каждым разом высота отскока объекта уменьшается, и когда объект практически остановится, он пропадает с экрана. Объектов может быть несколько, поэтому каждый должен обрабатываться в отдельном потоке приложения. (<объект> - Буква Вашей фамилии, после каждого нажития буква меняется на следующую, по окончанию Вы опять возвращаетесь на первую букву).
Для примера <объект> - цифра восемь, направление падения схематично показано красным.
Отметьте желтым цветом правильные варианты ответов, отправьте данный файл на проверку
1. Какие свойства соответствуют Android
Кроссплатформенность
Высокая защищенность
Является бесплатной
Отсутствие вредоносных программ, выполняемых на базе данной операционной системы
Является потоковонебезопасной
2. Назначение класса Intent.
Обмен запросов с ОС
Инициализация средств OpenGL
Сохранение состояние приложения
3. Если интерфейс приложения подвис более чем на 5 секунд то произойдет
Ничего не произойдет
Появится сообщение Application not Responded (с вопросом о закрытия приложения)
Приложение закроется самостоятельно
4. Потоки рекомендуют применять в случаях
Написания приложения, закачивающего данные из сети
Для обновления элементов интерфейса
Для использования класса Intent
5. AndroidManifest.xml
Определяет состав классов приложения
Определяет события системы при которых приложения запустится
Определяет цвет фона приложения
Является необязательным файлом приложения
Содержит исходный код для установки и удаления программы
6. Класс R.java
предназначен для задания идентификаторов элементам интерфейса
Предназначен для запуска приложения
Запрещен к редактированию пользователем
Определяет состав классов приложения
7. К особенностям java относится
Возможность множественного наследования
Возможность полиморфизма
Является низкоуровневым языком программирования
Является кроссплатформенным
8. Принцип инкапсуляции
позволяет вводить ограничения доступа к переменным класса
Позволяет использовать отладку программы
Позволяет создавать класс на основе уже реализованных классов
Позволяет проводить перегрузку имен функций
9. К средам разработки относится
Android Studio
BlueStacks
Intellij Idea
Java
10. Спецификатор super необходим для
Обращения к полям класса
При вызове всех функций в методе OnCreate и OnStop
Обращения к полям родительского класса
Обращения к методам родительского класса
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
Дополнительные материалы
Видео по обработчику кнопок
Видео Простой список
Список произвольного вида
Задание 2: Необходимо написать игру. Сюжет: множество насекомых ползают по экрану по сложной траектории. Задача игрока уничтожить за отведенное время как можно больше насекомых. За промахи игроку начисляется очки отнимаются. Игра должна сопровождаться звуковыми эффектами. Варианты:
1. В качестве насекомых (осы, и пауки)
2. В качестве насекомых (Божьи коровки, мухи)
3. В качестве насекомых (тараканы, и пчелы)
4. В качестве насекомых (осы, и мухи)
5. В качестве насекомых (майские жуки, и тарантулы)
6. В качестве насекомых (тараканы, и пауки)
Описание выполнения:
Первым шагом необходимо определить архитектуру приложения. Пусть архитектура будет построена следующим образом.
Звуки и картинки насекомых следует брать в интернете. Следует дополнить этот набор картинок, добавив «красные пятна крови» (эти картинки будут появляться при «попадании» игроком).
Время раунда игры составляет 2 минуты.
При запуске приложения открывается меню, позволяющее вести имя игрока, просмотреть рекорд, задать количество жуков и приглашение к началу игры.
Основной класс приложения (main) будет заниматься прорисовкой всех жуков. Состояние всех жуков хранится в глобальном массиве структур(Mass) . Структура должна хранить координаты жука (x,y), направление движения (dx,dy),флаги(жив/мертв), и байт, соответствующей отображаемой картинке (т.к. жуки могут быть разными).
Работа класса происходит в бесконечном цикле, считывание информации из массива и корректное его отображение. Не рекомендуется заниматься прорисовкой из других потоков, т.к. это может привести к ошибкам.
В других потоках, соответствующих жукам, мы будем заниматься перерасчетом состояний отдельно каждого элемента глобального массива. При смерти жука, объект не уничтожается, а некоторое время просто не отображается на экране. В противном случае нам придется создавать каждый раз новых жуков, что потребует дополнительной памяти.
Отдельно в классе сервисе следует размещать мелодии в игре. Быстрые мелодии (хруст жука) менее 1-2 сек вполне можно размещать в классе main. Нужно не забыть отключать звуки при остановке приложений и восстанавливать при возобновлении работы приложения(используйте функции onPause и onResume).
Используйте класс Preferences для сохранения результатов игры.
Проверку попадания нажатия по жуку следует сделать так:
for (int i=0;i<N;i++){ //просматриваем весь массив структур
if (Mass[i].status==Alive){ // Если жук жив и ...
if ((Mass[i].x1<e;x)&&(x≤Mass[i].x2)&& (Mass[i].y1≤y)&&(y≤Mass[i].y2))
// координаты нажатия x,y по экрану лежат на картинке, где x1 x2 –границы
// картинки жука и x1≤x≤x2 и y1≤y≤y2
{
//Попали по жуку
}
}
}
Допускается использовать вместо класса Panel, класс SurfaceHolder.
Элементы кода
Рисование с использованием класса Panel
Сохранения состояния класс Preferences
Звуковые эффекты
Потоки и таймеры
Работа с Touchpad
Задание 3:
Реализуйте прыгающий <объект>. Начальная позиция появления объекта определяется нажатием пальца по экрану. Объект падает с ускорением вниз, отражаясь от нижней границы экрана, и с незначительным смешением вправо. С каждым разом высота отскока объекта уменьшается, и когда объект практически остановится, он пропадает с экрана. Объектов может быть несколько, поэтому каждый должен обрабатываться в отдельном потоке приложения. (<объект> - Буква Вашей фамилии, после каждого нажития буква меняется на следующую, по окончанию Вы опять возвращаетесь на первую букву).
Для примера <объект> - цифра восемь, направление падения схематично показано красным.
Отметьте желтым цветом правильные варианты ответов, отправьте данный файл на проверку
1. Какие свойства соответствуют Android
Кроссплатформенность
Высокая защищенность
Является бесплатной
Отсутствие вредоносных программ, выполняемых на базе данной операционной системы
Является потоковонебезопасной
2. Назначение класса Intent.
Обмен запросов с ОС
Инициализация средств OpenGL
Сохранение состояние приложения
3. Если интерфейс приложения подвис более чем на 5 секунд то произойдет
Ничего не произойдет
Появится сообщение Application not Responded (с вопросом о закрытия приложения)
Приложение закроется самостоятельно
4. Потоки рекомендуют применять в случаях
Написания приложения, закачивающего данные из сети
Для обновления элементов интерфейса
Для использования класса Intent
5. AndroidManifest.xml
Определяет состав классов приложения
Определяет события системы при которых приложения запустится
Определяет цвет фона приложения
Является необязательным файлом приложения
Содержит исходный код для установки и удаления программы
6. Класс R.java
предназначен для задания идентификаторов элементам интерфейса
Предназначен для запуска приложения
Запрещен к редактированию пользователем
Определяет состав классов приложения
7. К особенностям java относится
Возможность множественного наследования
Возможность полиморфизма
Является низкоуровневым языком программирования
Является кроссплатформенным
8. Принцип инкапсуляции
позволяет вводить ограничения доступа к переменным класса
Позволяет использовать отладку программы
Позволяет создавать класс на основе уже реализованных классов
Позволяет проводить перегрузку имен функций
9. К средам разработки относится
Android Studio
BlueStacks
Intellij Idea
Java
10. Спецификатор super необходим для
Обращения к полям класса
При вызове всех функций в методе OnCreate и OnStop
Обращения к полям родительского класса
Обращения к методам родительского класса
Дополнительная информация
СИБГУТИ ДО год сдачи 2019 оценка зачет
Похожие материалы
Лабораторная работа №1 Программирование мобильных устройств (часть 1)
holm4enko87
: 10 декабря 2024
Задание 1:
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
вариант 1: вычисление синуса
100 руб.
Программирование мобильных устройств (часть 1-я). Лабораторная работа №1. Вариант №1.
sibguter
: 27 декабря 2019
Вариант 1.
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
200 руб.
Программирование мобильных устройств (часть 1-я). Лабораторная работа №1. Вариант №2.
sibguter
: 19 октября 2019
Вариант 2.
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
200 руб.
Программирование мобильных устройств (часть 1-я). Лабораторная работа №1. Вариант №3.
sibguter
: 5 января 2019
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
200 руб.
Программирование мобильных устройств (часть 1). Контрольная работа и Лабораторные работы №№1-3. Вариант №1
bananchik
: 22 апреля 2020
Задание 1: Последняя цифра пароля: 5
Вариант: 3
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
Дополнительные материалы
Видео по обработчику кнопок
Видео Простой список
Список произвольного вида
Задание 2: Последняя цифра п
224 руб.
Программирование мобильных устройств (часть 1-я).
Леший
: 9 июля 2021
Тест из 4 вопросов.
1 К особенностям java относится:
Возможность множественного наследования
Возможность полиморфизма
Является низкоуровневым языком
программирования
Является кроссплатформенным
2 Принцип инкапсуляции:
позволяет вводить ограничения доступа к полям
класса
Позволяет использовать отладку программы
Позволяет создавать класс на основе уже реализованных классов
Позволяет проводи
500 руб.
Программирование мобильных устройств (часть 1). Контрольная работа, Лабораторные работы 1-3. Вариант 3.
rmn77
: 26 апреля 2019
Программирование мобильных устройств (часть 1). Контрольная работа, Лабораторные работы 1-3. Вариант 3.
Задание 1:
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
Дополнительные материалы
Видео по обработчику кнопок
Видео П
150 руб.
Лабораторная работа №1 по дисциплине: Программирование мобильных устройств (часть 1). Вариант 7
Учеба "Под ключ"
: 15 марта 2026
Лабораторная работа 1
«Создание формы ввода данных с валидацией»
Цель: Научиться создавать интерфейс формы ввода данных, реализовывать клиентскую валидацию и обработку ошибок.
Задание: Создать интерактивный пользовательский интерфейс с валидацией полей, обработкой ошибок и отображением Toast-уведомлений при успешной отправке.
Номер варианта соответствует последней цифре Вашего пароля.
Среда разработки: Android Studio.
Язык: Kotlin.
Вариант 7: Форма поиска недвижимости.
Порядок вы
700 руб.
Другие работы
Инженерная графика. Вариант №10. Задание №4. Ступенчатый разрез
Чертежи
: 10 апреля 2020
Всё выполнено в программе КОМПАС 3D v16
Задание СФУ
Вариант №10. Задание №4. По двум проекциям построить третью, выполнив полезные разрезы. На месте главного вида выполнить ступенчатый разрез. Построить аксонометрическую проекцию детали с вырезом.
В СФУ данная работа оформляется по-разному у разных преподавателей, поэтому в состав работы входят четыре файла:
- 3D модель детали;
- ассоциативный чертеж с необходимыми разрезами и аксонометрическая проекция с вырезом, коэффициент изометрии действ
80 руб.
Поняття безробітного. Правовий статус безробітного
alfFRED
: 1 ноября 2013
Законом України "Про зайнятість населення" уперше був визначений правовий статус безробітного. Згідно зі ст. 2 Закону безробітними визнаються працездатні громадяни працездатного віку, які через відсутність роботи не мають заробітку або інших передбачених законодавством доходів і зареєстровані в державній службі зайнятості як такі, що шукають роботу, готові та здатні приступити до підходящої роботи.
Правовий статус безробітного включає основні (статутні) права і обов'язки та їх гарантії. Поря
10 руб.
Контрольная работа №1 по дисциплине "Математический анализ". Вариант №7
Loviska
: 21 ноября 2013
Задача 1
Найти пределы функций
Задача 2
Найти значение производных данных функций в точке x=0:
Задача 3
Провести исследование функций с указанием
а) области определения и точек разрыва; б) экстремумов; с) асимптот.
По полученным данным построить графики функций.
Задача 4
Найти неопределенные интегралы
Задача 5
Вычислить площади областей, заключённых между линиями:
100 руб.
Теплотехника ТОГУ-ЦДОТ 2008 Задача 1 Вариант 11
Z24
: 21 января 2026
Смесь, состоящая из М1 киломолей азота и М2 киломолей кислорода с начальными параметрами р1=1 МПа и Т1=1000 К, расширяется до давления р2. Расширение может осуществляться по изотерме, адиабате и политропе с показателем n. Определить газовую постоянную смеси, ее массу и начальный объем, конечные параметры смеси, работу расширения, теплоту, участвующую в процессе, изменение внутренней энергии, энтальпии и энтропии. Дать сводную таблицу результатов и анализ ее. Показать процессы в pυ и Ts — диаграм
300 руб.