Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/21: Рейтинг темы: голосов - 21, средняя оценка - 4.90
 Аватар для waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297

double to int

05.01.2013, 17:33. Показов 4025. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Задача такая
Определить количество целых среди трёх чисел a,b,c .

Данное решение выполнил следущим образом

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        Scanner console = new Scanner(System.in);
        System.out.println("Введите числа a b c");
        double a = console.nextDouble();
        double b = console.nextDouble();
        double c = console.nextDouble();
        double A = a % 1;
        double B = b % 1;
        double C = c % 1;
        
 
        if (A == 0)
         
            System.out.println("Число "+a+" целое");
        if (B == 0)
            System.out.println("Число "+b+" целое");
        if (C == 0)
            System.out.println("Число "+c+" целое");
        else 
            System.err.println("Целых чисел нет");
    }
}
Ход работы таков

run:
Введите числа a b c
1
1
1
Число 1.0 целое
Число 1.0 целое
Число 1.0 целое
ПОСТРОЕНИЕ УСПЕШНО ЗАВЕРШЕНО (общее время: 4 секунд)
Значит в чем проблема.

Мне надо чтобы вывод числа был без дробной части.
Я уже однажды спрашивал про отображение и если не ошибаюсь пользователь Севак посоветовал
Java
1
int a = (int) a;
Но почему то компилятор на это ругается. чувствую, что придется делать через parse (а вот как....)

И да.. посмотрите на мой код, возможно ли его как нибудь сократить. Есть ли тут лишние действия на ваш взгляд?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.01.2013, 17:33
Ответы с готовыми решениями:

Умножение double на int
В консоле выдает 110.00000000000001 , почему не 110 ? double y = 1.1D*100; System.out.println(y);

Конвертирование переменных из int в double
Ребята, помогите. r - полное сопротивление Есть такая формула для расчета полного сопротивления: 1/r1+1/r2+1/r3=1/r. Вход уже дан...

Filereader. char, string, int, double
Добрый день. Вчера долго мучался (благо мне на cyberforum помогли), как с помощью scanner прочитать char. Сейчас задача усложнилась. Мне...

10
 Аватар для lemegeton
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
05.01.2013, 23:01
Можно, например, добавить функций.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    private static final Random random = new Random();
 
    public static boolean isInteger(double value) {
        return Math.round(value) == value;
    }
 
    public static int countIntegers(double ... values) {
        int counter = 0;
        for (double value : values)
            if (isInteger(value))
                ++counter;
        return counter;
    }
 
    public static void main(String[] args) throws InterruptedException {
        double a = 1 + random.nextInt(2) / 10.0;
        double b = 1 + random.nextInt(2) / 10.0;
        double c = 1 + random.nextInt(2) / 10.0;
 
        System.out.printf("%.4f %.4f %.4f\n", a, b, c);
        System.out.println("Number of integers is " + countIntegers(a, b, c));
    }
1
 Аватар для waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297
06.01.2013, 10:01  [ТС]
Ничего не понял, но вынес для себя

Java
1
Math.round(a)
Работает)
0
636 / 528 / 165
Регистрация: 01.04.2010
Сообщений: 1,843
08.01.2013, 19:16
Цитата Сообщение от waip Посмотреть сообщение
Java
1
int a = (int) a;
Но почему то компилятор на это ругается.
Потому что одна из переменных должна быть обозвана по-другому.
1
 Аватар для waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297
08.01.2013, 20:06  [ТС]
ах да! сударь вы правы! надо было так!
int A = (int) a;

Ошибку понял. Просто запарился и описался. Спасибо!
0
 Аватар для Vortal
104 / 104 / 27
Регистрация: 11.08.2011
Сообщений: 301
09.01.2013, 11:31
рекомендуют переменные называть с маленькой буквы, для удобочитаемости вашего когда, константы - все в верхнем регистре. Тот кто будет читать ваш код, или кусок кода, может подумать что переменная "А" константа.
1
 Аватар для waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297
09.01.2013, 11:35  [ТС]
Хорошо, беру на вооружение.

Я писал большую А чтобы логически показать причастность к переменной а. Чтобы не возникали вопросы откуда взялась дополнительная не понятная переменная.
0
Эксперт JavaЭксперт С++
 Аватар для M128K145
8384 / 3617 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
13.01.2013, 19:36
Цитата Сообщение от lemegeton Посмотреть сообщение
Java
1
return Math.round(value) == value;
Зачем так? Можно проще
Java
1
return value == (int value);
Добавлено через 1 час 43 минуты
опечатался, естественно только int в скобочках
Java
1
return value == (int) value;
1
любитель покушать
 Аватар для Севак
687 / 641 / 248
Регистрация: 25.09.2011
Сообщений: 1,313
13.01.2013, 20:05
waip, я наверное вот так говорил
Java
1
2
3
4
5
6
7
8
public class Main {
     public static void main(String[] args) {
      
         double a = 6.654657;
         int b = (int) a;
         System.out.println(b);
     }
 }
1
 Аватар для waip
7 / 7 / 1
Регистрация: 27.05.2011
Сообщений: 297
14.01.2013, 15:32  [ТС]
Цитата Сообщение от Севак Посмотреть сообщение
waip, я наверное вот так говорил
Да... спс, главно, что работает.
Аналог этой фишке round(a);
0
 Аватар для Gepar
1186 / 543 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
30.01.2013, 22:27
Цитата Сообщение от waip Посмотреть сообщение
int a = (int) a;
На миг представил ваш код ...
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
       
        Scanner a = new Scanner(System.in,"cp1251");
 
        int a=a.nextInt();
        int a=a.nextInt();
        int a=a.nextInt();
        int a=a.nextInt();
        
        Segment a = new Segment(a,a,a,a);
 
        a=a.nextInt();
        a=a.nextInt();
        a=a.nextInt();
        a=a.nextInt();
        ...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.01.2013, 22:27
Помогаю со студенческими работами здесь

Как реализовать таблицу с int и double значениями
Доброго времени суток. Мне необходимо реализовать таблицу: А В (int) (double) 1 0.25 2 0.5 3 0.75 ....

Как преобразовать string в int или double, чтобы узнать счастливый ли билет?
помогите пожалуйста исправить не могу понять,как преобразовать тут string в int или double, чтобы узнать счастливый ли билет public...

Как мне считать из текстового файла числа (ну либо конвертиовать слова в int, double)?
Надо чтобы программа прочитала данные об автомобиле и создала объекты и добавла в ArrayList<BIL>. EL, FOSSIL субклассы BIL....

Конвертация массива int, long, boolean, String, double, в List, Set, Queue, Deque
С конвертацией простых типов и строк ничего сложного. Вот код public class Main { public static <T> void...

Написать функцию int Search ( double A[], int n , double x), которая находит в массиве double A[n] элемент, значение которого равно x
Написать функцию int Search ( double A, int n , double x), которая находит в массиве double A элемент, значение которого равно x. Функция...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru