Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 88 89 [90] 91 92 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#1336
,
|
|
|
|
Т.е. у вас / может вообще не скомпилироваться? Нет уж спасибо.
|
|
Сообщ.
#1337
,
|
|
|
|
|
Сообщ.
#1339
,
|
|
|
|
http://docs.python.org/release/2.2.3/whatsnew/node7.html |
|
Сообщ.
#1340
,
|
|
|
|
Цитата Мяут-Настоящий @ Т.е. у вас / может вообще не скомпилироваться? Естественно, если ты хочешь целому присвоить результат деления тебе скажут: мальчик, не торопись, подумай. И ты, подумав, вместо / пишешь div - целочисленное деление. И все работает правильно. В твоем же случае ты меняешь int на float, компилятор молча проглатывает и ты счастливый несешь прогу заказчику. Он счастливый ее принимает. А через день с рельс сходит состав |
|
Сообщ.
#1341
,
|
|
|
|
вот еще парочка вариантов, для статистики:
Ocaml ![]() ![]() [ ~ ] ocaml Objective Caml version 3.11.2 # let a = 20.0 ;; val a : float = 20. # let b = 10 ;; val b : int = 10 # let c = 50 ;; val c : int = 50 # let d = 10.0 ;; val d : float = 10. # let e = a +. (float_of_int (b / c)) *. d ;; val e : float = 20. # Ruby ![]() ![]() [ ~ ] irb1.9.1 irb(main):001:0> a = 20.0 => 20.0 irb(main):002:0> b = 10 => 10 irb(main):003:0> c = 50 => 50 irb(main):004:0> d = 10.0 => 10.0 irb(main):005:0> a + (b / c) * d => 20.0 в общем вариант 20.0 пока лидирует |
|
Сообщ.
#1342
,
|
|
|
|
Цитата Мяут-Настоящий @ http://docs.python.org/release/2.2.3/whatsnew/node7.html http://docs.python.org/release/3.1/tutoria...on.html#numbers |
|
Сообщ.
#1343
,
|
|
|
|
мне больше нравится такой вариант:
![]() ![]() procedure test is a,d,e:float; b,c:Integer; begin a:=20.0; b:=10; c:=50; d:=10.0; e:=a+float(b/c)*d; end; ADA |
|
Сообщ.
#1344
,
|
|
|
|
C-подобный калькулятор C-подобен
![]() ![]() myaut@myaut-ws:/tmp> bc bc 1.06 Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'. 20.+(10/50)*10. 20 |
|
Сообщ.
#1345
,
|
|
|
|
korvin, в ocaml все-таки пришлось все написать явно. руби, как и шарп и др. следуют традиции С.
|
|
Сообщ.
#1346
,
|
|
|
|
Цитата D_KEY @ korvin, в ocaml все-таки пришлось все написать явно. руби, как и шарп и др. следуют традиции С. ну ок: 50/50 |
|
Сообщ.
#1347
,
|
|
|
|
лично мне нравится вариант из третьего питона - отдельная операция для целочисленного деления. Еще в smalltalk, если память мне не изменяет есть обычные дроби
|
|
Сообщ.
#1348
,
|
|
|
|
Цитата D_KEY @ лично мне нравится вариант из третьего питона Это вариант из первого паскаля, а не из третьего питона |
|
Сообщ.
#1349
,
|
|
|
|
![]() ![]() a = 20. d = 10. b = 10 c = 50 >>> a + (b/c) * d 22.0 >>> a + (b//c) * d 20.0 Добавлено Цитата --Ins-- @ Цитата D_KEY @ лично мне нравится вариант из третьего питона Это вариант из первого паскаля, а не из третьего питона ![]() Я не уверен, что это появилось в паскале А для С достаточно преобразовать аргумент к float |
|
Сообщ.
#1350
,
|
|
|
|
Цитата D_KEY @ >>> a + (b//c) * d D_KEY, так ведь это же совсем другое дело, правда, D_KEY? |