С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
ASDFD12
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 544
1

Не понимаю результат операции деления

04.03.2014, 18:01. Просмотров 717. Ответов 3
Метки нет (Все метки)

В конструкторе выполняется следующий код
Java
1
2
3
4
5
display = ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
width = display.getWidth();
height = display.getHeight();
Scale_X= width/720;
Scale_Y=height/1280;
В режиме отладки (Android 2.3.6) построчно выполняю код
переменная width - определяется правильно 320
переменная height - 480
Scale_X - (определена как float) значение 0,0
Scale_Y - аналогично 0,0

Как это можно обьяснить?

Добавлено через 1 час 35 минут
отладка проводилась на реальном устройстве, также провёл отладку на реальном устройстве с Android 4.2 разрешение 1280 на 720, в этом случае переменные Scale_X и Scale_Y вычыслились правильно.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.03.2014, 18:01
Ответы с готовыми решениями:

Операции деления дают неверный результат
Всем привет. Если взять такую запись Console.WriteLine(5%2); То получим 1....

Определить результат целочисленного деления a на b, не используя стандартные операции вычисления остатка
Не совсем понимаю условие. Как решить? Даны целые числа a,b(a>b). Определить...

Найти частное и остаток от деления нацело без операции деления
1)Дано целое число A (> 0) и целое число B (> 0). Найти долю Q и остаток R от...

Используя операции деления нацело и взятия остатка от деления, вывести все цифры числа
Дано целое число N (> 0). Используя операции деления нацело и взятия остатка от...

Используя операции деления нацело и взятия остатка от деления, вывести все цифры числа
Дано целое число N (> 0). Используя операции деления нацело и взятия остатка от...

3
proggamer12
17 / 17 / 4
Регистрация: 06.07.2012
Сообщений: 510
Завершенные тесты: 1
04.03.2014, 18:22 2
Попробуйте так:
Java
1
2
Scale_X= (float)width/720.0f;
Scale_Y=(float)height/720.0f;
Добавлено через 37 секунд
Давно не работал с Java, поэтому не знаю - поможет ли. Но в C++ это сработало бы (а они очень близки по синтаксису)
1
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
04.03.2014, 21:06 3
ASDFD12, где мистика то?
getWidth() и getHeight() у Display возвращают значения в int

Целочисленное деление меньшего числа на большее даст вам 0.
Используйте приведение типов(например как proggamer12 показал)

И кстати, getWidth() и getHeight() - This method was deprecated in API level 13.
Делайте так:
Java
1
2
3
4
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;
1
ASDFD12
58 / 57 / 15
Регистрация: 15.09.2012
Сообщений: 544
04.03.2014, 21:13  [ТС] 4
да уж, и не подумал, что нежно приведение, спасибо
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.03.2014, 21:13

Используя операции деления нацело и взятия остатка от деления, найти количество и сумму цифр числа
Можете решить вот эти задачи.. Заранее спасибо!!:friends: 1) Дано целое число...

Используя операции деления нацело и взятия остатка от деления, определить, имеется ли в записи числа цифра k
Полное условие: Дано натуральное число n. Используя операции деления нацело и...

Используя операции деления нацело и взятия остатка от деления, найти количество и сумму цифр числа
7 Дано целое число N >0. Используя операции деления нацело и взятия остатка от...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru