powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / float разбить на целую и дробную часть
7 сообщений из 7, страница 1 из 1
float разбить на целую и дробную часть
    #32547850
slavik77777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть float 111.222
нужно получить строки
111
222

что - та найти не могу как делать
можно конечно самому написать,
но есть же красивый какой нибудь способ.
что - нибудь типа NumberFormat...
...
Рейтинг: 0 / 0
float разбить на целую и дробную часть
    #32547889
Грасоff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно получить строки? или числа? хотя в общем без разницы.

как вариант (хотя полагаю что ты этим и пользуешься):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
    float a =  111 .222f;
    String s = String.valueOf(a);
    System.out.println(s);
    int dotPos = s.indexOf(".");
    if (dotPos != - 1 ) {
      System.out.println(s.substring( 0 , dotPos));
      System.out.println(s.substring(dotPos +  1 ));
    }

Код: plaintext
1.
2.
== == == == == == == == == == == == == == == == == == 
== Face down, ass up - that's the way we like to fuck
...
Рейтинг: 0 / 0
float разбить на целую и дробную часть
    #32550040
slavik77777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Красиво, но я думал, есть какой - нибудь метод...
Реализовал немного иначе, у меня задачка проще на самом деле была.
Есть метры получить отдельно км и м
делал так
int fkm = 15655;
System.out.println("\n"+fkm);
System.out.println("\n"+Math.round(fkm/1000));
System.out.println("\n"+(fkm-(Math.round(fkm/1000))*1000));
...
Рейтинг: 0 / 0
float разбить на целую и дробную часть
    #32550454
Фотография stdio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
М.б. тогда надо использовать floor, а не round?
_______________
Alex
There are three kinds of people: those who can count and those who can't
...
Рейтинг: 0 / 0
float разбить на целую и дробную часть
    #32551769
slavik77777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Честно говоря думал есть разница... теперь в затруднении.
System.out.println("\n"+"************************");
System.out.println("\n "+fkm+" round="+Math.round(fkm/1000)+" floor="+Math.floor(fkm/1000));
System.out.println("\n "+fkm+" round="+(fkm-(Math.round(fkm/1000))*1000)+" floor="+(fkm-(Math.floor(fkm/1000))*1000));
System.out.println("\n"+"---------------------------");
System.out.println("\n "+fkm1+" round="+Math.round(fkm1/1000)+" floor="+Math.floor(fkm1/1000));
System.out.println("\n "+fkm1+" round="+(fkm1-(Math.round(fkm1/1000))*1000)+" floor="+(fkm1-(Math.floor(fkm1/1000))*1000));

************************

16666 round=16 floor=16.0

16666 round=666 floor=666.0

---------------------------

13333 round=13 floor=13.0

13333 round=333 floor=333.0
...
Рейтинг: 0 / 0
float разбить на целую и дробную часть
    #32552052
Фотография stdio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
slavik77777Честно говоря думал есть разница... теперь в затруднении
Издеваетесь?
Код: plaintext
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.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
for( float i =  0 ; i <  20 ; i++ ) {
      float val =  3  + i/ 10 ;
      System.out.println( "Value = " + val + "\n" +
                          "\tMath.floor(val) = " + Math.floor(val) + "\n" +
                          "\tMath.round(val) = " + Math.round(val) + "\n");
    }

Value =  3 . 0 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  3 


Value =  3 . 1 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  3 


Value =  3 . 2 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  3 


Value =  3 . 3 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  3 


Value =  3 . 4 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  3 


Value =  3 . 5 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  4 


Value =  3 . 6 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  4 


Value =  3 . 7 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  4 


Value =  3 . 8 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  4 


Value =  3 . 9 
	Math.floor(val) =  3 . 0 
	Math.round(val) =  4 


Value =  4 . 0 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  4 


Value =  4 . 1 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  4 


Value =  4 . 2 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  4 


Value =  4 . 3 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  4 


Value =  4 . 4 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  4 


Value =  4 . 5 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  5 


Value =  4 . 6 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  5 


Value =  4 . 7 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  5 


Value =  4 . 8 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  5 


Value =  4 . 9 
	Math.floor(val) =  4 . 0 
	Math.round(val) =  5 
_______________
Alex
There are three kinds of people: those who can count and those who can't
...
Рейтинг: 0 / 0
float разбить на целую и дробную часть
    #32553328
slavik77777
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
понял я где мои грабли. Сделал бы я щас...
System.out.println("\n 12./10="+12./10);
System.out.println("\n 12/10="+12/10);
System.out.println("\n 17./10="+17./10);
System.out.println("\n 17/10="+12/10);
12./10=1.2
12/10=1
17./10=1.7
17/10=1
Всем огромное спасибо!
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / float разбить на целую и дробную часть
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]