forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=13)
-   -   Особенности блицевоспиятия типов данных (http://forum.boolean.name/showthread.php?t=12691)

turBO 19.06.2010 22:25

Особенности блицевоспиятия типов данных
 
Считал что свободно владею синтаксисом, но запутался в особенностях восприятия типов переменных компиллятором.
Пишу
Цитата:

a%=70
b#=a/100
Выдаёт b=0.0
Пишу
Цитата:

c#=70/100
Выдаёт с=0.0
Пишу
Цитата:

d%=70
e#=d/100
Выдаёт e=0.0
И только в случае
Цитата:

f#=70.0
g#=f/100
Выдаёт g=0.7

Ну что это за гибкость языка? Получается, переприсваевать целочисленную переменную дробной, и только тогда с ней работать?

Tadeus 19.06.2010 22:33

Ответ: Особенности блицевоспиятия типов данных
 
Код:

a%=70
b#=a/100.0



jimon 19.06.2010 22:45

Ответ: Особенности блицевоспиятия типов данных
 
turBO
напиши себе арифметические операции для всех типов данных и что они возвращают, это же основы языка

DeeJex 19.06.2010 23:51

Ответ: Особенности блицевоспиятия типов данных
 
Цитата:

a%=70
b#=a/100
кажется, правильно будет так:
Код:

a%=70
b#=Float(a)/100


ABTOMAT 20.06.2010 00:01

Ответ: Особенности блицевоспиятия типов данных
 
Целое делить на целое - везде будет округляться. Например, в том же С/С++

Цитата:

Получается, переприсваевать целочисленную переменную дробной, и только тогда с ней работать?
Юзай функцию Float (см. пост выше)

Mr_F_ 20.06.2010 13:42

Ответ: Особенности блицевоспиятия типов данных
 
или юзать 100.0 вместо 100
в любом случае, один из участников операции должен быть флоатом, а кому результат потом присваивается, это уже другая история


Часовой пояс GMT +4, время: 11:26.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot