Программирование мобильных устройств (часть 1) Задание 2
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
- Microsoft Excel
- Программа для просмотра текстовых файлов
Описание
Задание 2: Необходимо написать игру. Сюжет: множество насекомых ползают по экрану по сложной траектории. Задача игрока уничтожить за отведенное время как можно больше насекомых. За промахи игроку начисляется очки отнимаются. Игра должна сопровождаться звуковыми эффектами. Варианты:
В качестве насекомых (осы, и пауки)
В качестве насекомых (Божьи коровки, мухи)
В качестве насекомых (тараканы, и пчелы)
В качестве насекомых (осы, и мухи)
В качестве насекомых (майские жуки, и тарантулы)
В качестве насекомых (тараканы, и пауки)
Описание выполнения:
Первым шагом необходимо определить архитектуру приложения. Пусть архитектура будет построена следующим образом.
Звуки и картинки насекомых следует брать в интернете. Следует дополнить этот набор картинок, добавив «красные пятна крови» (эти картинки будут появляться при «попадании» игроком).
Время раунда игры составляет 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.
Элементы кода
В качестве насекомых (осы, и пауки)
В качестве насекомых (Божьи коровки, мухи)
В качестве насекомых (тараканы, и пчелы)
В качестве насекомых (осы, и мухи)
В качестве насекомых (майские жуки, и тарантулы)
В качестве насекомых (тараканы, и пауки)
Описание выполнения:
Первым шагом необходимо определить архитектуру приложения. Пусть архитектура будет построена следующим образом.
Звуки и картинки насекомых следует брать в интернете. Следует дополнить этот набор картинок, добавив «красные пятна крови» (эти картинки будут появляться при «попадании» игроком).
Время раунда игры составляет 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.
Элементы кода
Дополнительная информация
зачет
Похожие материалы
Программирование мобильных устройств (часть 1-я).
Леший
: 9 июля 2021
Тест из 4 вопросов.
1 К особенностям java относится:
Возможность множественного наследования
Возможность полиморфизма
Является низкоуровневым языком
программирования
Является кроссплатформенным
2 Принцип инкапсуляции:
позволяет вводить ограничения доступа к полям
класса
Позволяет использовать отладку программы
Позволяет создавать класс на основе уже реализованных классов
Позволяет проводи
500 руб.
Программирование мобильных устройств (часть 2) Задание 1
svladislav987
: 23 августа 2023
Задание 1:
Создать базу данных студентов (Имя, вес, рост, возраст - сгенерировать случайно). Вывести из базы данных все записи, отсортированные по возрасту, в таблицу (TableLayout). Приложение должно иметь следующие кнопки. Очистка базы, заполнение, вывод содержимого.
SQL запросы к базе данных:
Создание базы из трех полей (id,name, email) create table mytable (id integer primary key autoincrement,name text,email text);"
Добавление в базу данных INSERT INTO mytable ( ‘id’,'name','email') VALUES (
150 руб.
Программирование мобильных устройств (часть 1) зачет
Владислав161
: 5 октября 2023
Вопросы по теме зачета ответить минимум на 3 вопроса
Оценка зачет
300 руб.
Программирование мобильных устройств (часть 1). Зачет.
sibguter
: 23 ноября 2018
1 К особенностям java относится
Возможность множественного наследования (да, если речь идет о множественном наследии интерфейсов)
Возможность полиморфизма
Является низкоуровневым языком программирования
Является кроссплатформенным
2 Принцип инкапсуляции
позволяет вводить ограничения доступа к полям класса
Позволяет использовать отладку программы
Позволяет создавать класс на основе уже реализованных классов
По
29 руб.
Программирование мобильных устройств (часть 2) Задание 2
svladislav987
: 23 августа 2023
Задание 2:
Создайте приложение из трех классов (Условно: A, B и С).
Из класса А запускаются классы В и С, по завершению своей работы классы В и С возвращают строку в класс А, которая выводится на экран.
Интерфейс класса А содержит:
Элемент RadioButton определяющий запускаемый класс (В или С).
Кнопку которая непосредственно запускает выбранный класс.
Тектовое поле результатов запука, которая содержит надпись о том какой класс был ранее вызван и какую строку он возвратил.
Из класса A по нажатию
150 руб.
Программирование мобильных устройств (часть 1) Задание 1
svladislav987
: 23 августа 2023
Задание 1:
Реализуйте приложение Калькулятор. Имеется набор кнопок, циферблат. Калькулятор позволяет вычислять (сумму, разность, произведение и частное). Предусмотреть обработку ситуации деления на ноль. Кроме этого, добавьте функции вычисления (вариант 1: вычисление синуса, вар. 2: возведение в степень, вар. 3 деление с остатком).
150 руб.
Программирование мобильных устройств (часть 1) 9 вариант
Владислав161
: 5 октября 2023
Отметьте желтым цветом правильные варианты ответов, отправьте данный файл на проверку
1. Какие свойства соответствуют Android
Кроссплатформенность
Высокая защищенность
Является бесплатной
Отсутствие вредоносных программ, выполняемых на базе данной операционной системы
Является потоковонебезопасной
2. Назначение класса Intent.
Обмен запросов с ОС
Инициализация
300 руб.
Программирование мобильных устройств (часть 1) Задание 3
svladislav987
: 23 августа 2023
Задание 3:
Реализуйте прыгающий <объект>. Начальная позиция появления объекта определяется нажатием пальца по экрану. Объект падает с ускорением вниз, отражаясь от нижней границы экрана, и с незначительным смешением вправо. С каждым разом высота отскока объекта уменьшается, и когда объект практически остановится, он пропадает с экрана. Объектов может быть несколько, поэтому каждый должен обрабатываться в отдельном потоке приложения. (<объект> - Буква Вашей фамилии, после каждого нажития буква ме
150 руб.
Другие работы
Структуры и алгоритмы обработки данных (2 часть). Экзамен. Как образец, делается по ФИО
tpogih
: 11 января 2015
Построить ИСДП, используя в качестве массива набор из 12 букв своих фамилии, имени, отчества.
работа выполнена идеально правильно. преподаватель не ставит выше тройки ни кому, кто не сам делал лабы
50 руб.
Повышение надежности Центробежного насоса ЦНС 180 - 1900 (Шнек)-Курсовая работа-Оборудование для добычи и подготовки нефти и газа
https://vk.com/aleksey.nakonechnyy27
: 2 марта 2016
АННОТАЦИЯ
В данном дипломном проекте разрабатывается задача повышения надежности центробежного насоса ЦНС 180-1900. Для уменьшения числа ремонтов и увеличения межремонтного периода, предлагается установить шнек вместо первого рабочего колеса, тем самым повышая надежность центробежного насоса ЦНС 180-1900.
Дипломный проект состоит из пояснительной записки и графической части.
Пояснительная записка включает в себя три раздела: техническая, экономическая часть и раздел безопасности и экологично
1294 руб.
Контрольная по дисциплине: Нормативно-правовая база профессиональной деятельности. Общий вариант
xtrail
: 31 июля 2024
Задание.
1. Руководствуясь лекционным материалом и данными специализированных сайтов, перечисленных в списке литературы, подготовить пакет документов на получение квалификационного аттестата на право подготовки заключений экспертизы проектной документации и экспертизы результатов инженерных изысканий на своё имя.
2. Цель работы: oзнакомиться с порядком работы с информационными правовыми ресурсами («Консультант+», «ГАРАНТ», профильных сайтов), поиском нужных документов, оформлением документов н
500 руб.
Управление страховыми рисками
Elfa254
: 25 сентября 2013
Производство является материальной основой человеческого бытия в определенной общественной форме. По этой причине человек и природа взаимосвязаны. С одной стороны, природа воздействует на человека, с другой — человек приспосабливает ее к своим нуждам. Современный научно-технический прогресс облегчает освоение природы. Использование достижений научно-технического прогресса в процессе освоения природных благ служит предпосылкой роста общественного производства.
Чрезвычайность, риск есть нор