- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
#include <tuple>
#include <utility>
#include <array>
namespace detail {
template <typename... Types, std::size_t... Indexes>
auto make_array(const std::tuple<Types...> &t, std::index_sequence<Indexes...>) {
using Tuple = std::tuple<Types...>;
using ValueType = typename std::tuple_element<0, Tuple>::type;
return std::array<ValueType, sizeof...(Types)>{ std::get<Indexes>(t)... };
}
template <typename Value>
constexpr Value fib(std::size_t idx) {
switch (idx) {
case 0: return 1;
case 1: return 1;
default: return fib<Value>(idx - 1) + fib<Value>(idx - 1);
}
}
}
template <class... Args>
auto to_array(const std::tuple<Args...> &t) {
return detail::make_array(t, std::index_sequence_for<Args...>{});
}
template <typename Value, std::size_t size>
class Fibonacci {
public:
constexpr auto as_array() const { return to_array(as_tuple()); }
constexpr operator std::array<Value, size>() const { return as_array(); }
private:
template <std::size_t offset = 0>
constexpr auto as_tuple() const {
return std::tuple_cat(std::tuple{detail::fib<Value>(offset)}, as_tuple<offset + 1>());
}
template <>
constexpr auto as_tuple<size - 1>() const { return std::tuple{detail::fib<Value>(size - 1)}; }
};
int main() {
std::array a = Fibonacci<int, 10>().as_array();
return a[5];
}
gost 25.02.2019 14:07 # +1
j123123 25.02.2019 15:45 # +1
template <std::херня{std::поебень<дрисня>(говно)} >(пидор)
Rooster 26.02.2019 12:48 # 0
KGeist 25.02.2019 21:16 # 0
p.s. а, не, clang trunk скомпилял
j123123 25.02.2019 21:42 # +1
А GCC эту херню вообще не собирает. Типичная ситуация для крестов
Elvenfighter 26.02.2019 12:30 # 0
j123123 26.02.2019 20:27 # 0
6E3yMHblu_nemyx 26.02.2019 20:30 # 0
j123123 26.02.2019 20:38 # +1
#define FIB_INIT_ARRAY(len)
std::array<uint64_t,len>
C/|uLLlKOM_MED/|EHHb|u_nemyx
guest8 26.02.2019 20:44 # −999
cmepmop 26.02.2019 21:50 # +1
OP6uT_6E3_CAXAPA 27.02.2019 01:58 # 0
guest8 27.02.2019 02:04 # −999
6E3yMHblu_nemyx 28.02.2019 07:05 # +1
https://pbs.twimg.com/media/D0dsupqXQAIGtJt.jpg
cmepmop 28.02.2019 13:57 # +1
1024-- 28.02.2019 18:25 # +1
Elvenfighter 04.03.2019 01:41 # 0
Монада, не?
cKpunToBou_neTyx 05.03.2019 01:13 # 0
CHayT 05.03.2019 03:05 # +1
TEH3OPHblu_nemyx 05.03.2019 03:09 # 0
gost 05.03.2019 13:15 # 0
guest8 28.02.2019 18:29 # −999
cmepmop 28.02.2019 18:49 # +1
Глупые, либо наоборот, слишком хитрые люди (депутаты) зачастую не брезгают демагогией, в частности, используют многословие, принцип "вокруг да около": много говорил, да ничего не сказал.
HoBblu_nemyx 01.03.2019 18:10 # 0
cmepmop 01.03.2019 19:01 # 0
Elvenfighter 28.02.2019 12:56 # +3
j123123 02.03.2019 08:43 # +2
Интересно, разрабы крестокомпиляторов когда-нибудь начнут пилить оптимизатор для хуйни, которая считается в компилтайме?
bormand 02.03.2019 08:53 # +1
Даёшь крестоUBы в крестоконпайлтайме!
j123123 02.03.2019 09:04 # 0
j123123 02.03.2019 09:52 # +1
И про big-little endian пишушню и возможную разницу в округлении для всяких плавучих питухов на разных архитектурах не забудьте.
bormand 02.03.2019 09:55 # +1
Просто напиши в комменте какие проц и ось нужны для конпеляции.
j123123 02.03.2019 09:59 # 0
Без эмулятора тут никуда не деться особо.
bormand 02.03.2019 10:03 # 0
j123123 02.03.2019 10:06 # 0
bormand 02.03.2019 09:59 # 0
А если перепутаешь - оно просто начнёт выполнять хуйню от другого проца во время конпеляции.
bormand 02.03.2019 10:04 # 0
bormand 02.03.2019 10:22 # 0
nEPBO6blTHblu_nemyx 02.03.2019 14:09 # 0
nEPBO6blTHblu_nemyx 02.03.2019 14:24 # 0
Компания «Borland» об этом не думала, поэтому у них в «Трубопаскакале» числа округлялись по-разному, в зависимости от того, проводилось вычисление в компайлтайме (кокококонстанты) или в рантайме. И даже соснольный кокококомпилятор и кокококомпилятор, встроенный в IDE, могли округлять константы по-разному.
HoBblu_nemyx 02.03.2019 14:26 # 0
nEPBO6blTHblu_nemyx 02.03.2019 14:26 # 0
guest8 02.03.2019 14:35 # −999
Hu3KoypoBHeBblunemyx 02.03.2019 14:58 # 0
guest8 02.03.2019 15:15 # −999
bormand 02.03.2019 14:26 # +1
nEPBO6blTHblu_nemyx 02.03.2019 14:28 # 0
bormand 02.03.2019 14:29 # 0
HoBblu_nemyx 02.03.2019 14:32 # 0
Hu3KoypoBHeBblunemyx 02.03.2019 15:54 # +2
j123123 02.03.2019 21:50 # 0
BEKTOPHblu_nETyX 02.03.2019 21:54 # 0
guest8 02.03.2019 22:09 # −999
BEKTOPHblu_nETyX 02.03.2019 22:15 # 0
guest8 02.03.2019 22:09 # −999
Straiker 02.03.2019 14:34 # 0
guest8 02.03.2019 14:36 # −999
Straiker 02.03.2019 14:43 # 0
Hu3KoypoBHeBblunemyx 02.03.2019 14:55 # 0
OCETuHCKuu_nemyx 02.03.2019 14:58 # 0
cmepmop 02.03.2019 18:36 # 0
Окей, чтобы понять уровень завшивленности, задам простой нубский вопрос: допустимо ли без каких-либо уорнингов сравнивать строку с числом?
guest8 02.03.2019 18:38 # −999
cmepmop 02.03.2019 18:39 # 0
тупорылый гость
guest8 02.03.2019 18:40 # −999
cmepmop 02.03.2019 18:49 # 0
позову маму, кажется, мой подгузник пора менять.
nEPBO6blTHblu_nemyx 02.03.2019 19:16 # 0
JS в современных браузерах перед исполнением компилируется в некоторое внутреннее представление (обычно это байткод, типа как у Java, но только в отличие от Java он не стандартизирован).
PHP тоже компилируется в байткод (если не включить opcache/xcache/apc, то он будет повторно компилироваться на каждый запрос).
Хотя всё-таки языки JS и PHP считают интерпретируемыми, поскольку отдельного ритуала компиляции у них нет.
В «Питоне» оператор === не нужен, потому что в нём по умолчанию сравнение строгое.
Надо вспомнить, где он ещё может быть. В «Ruby» есть. В компилируемом «ActionScript» есть.
Выходит, что наличие === зависит не от компилируемости/интерпретируемости, а от типизации. Этот оператор присутствует в языках с очень слабой типизацией.
nEPBO6blTHblu_nemyx 02.03.2019 19:25 # 0
bormand 02.03.2019 19:26 # 0
Шестой пёрл таки жив?
nEPBO6blTHblu_nemyx 02.03.2019 19:28 # 0
guest8 02.03.2019 19:29 # −999
nOJlumu4ecKuu_nemyx 02.03.2019 19:29 # 0
nEPBO6blTHblu_nemyx 02.03.2019 19:34 # 0
А ещё прикольно, что «PHP 5.7» переименовали в «PHP 7.0», а «MySQL 5.8» –— в «MySQL 8.0» ещё на стадии разработки. Вероятно, решили, что стыдно, что столько лет не было новой мажорной версии.
Это они научились у «Java» (версия 1.5 была переименована в 5.0).
P.S. Ещё Windows NT 6.1 переименовали в 7.0; NT 6.2 переименовали в 8.0; NT 6.3 перименовали в 8.1. Легко запомнить, да?
guest8 02.03.2019 19:35 # −999
guest8 02.03.2019 19:33 # −999
BEKTOPHblu_nETyX 02.03.2019 20:20 # 0
http://www.jsoftware.com/help/dictionary/vocabul.htm
или вот такой, разбитый по "частям речи":
http://www.jsoftware.com/help/dictionary/partsofspeech.htm
Где каждый примитив подробно описан и даны примеры. Есть ли таке для "Pearl"?
guest8 02.03.2019 20:26 # −999
BEKTOPHblu_nETyX 02.03.2019 20:57 # 0
Почему ватличии, я же кинул ссылку на доки?
В этом твоём "paerlop" нет сцылок по закорючкам, сложнее искать незнакомку.
Давай меряца закорючками.
Вот, например, в "J" есть глагол, который реализует конченый автомат:
http://www.jsoftware.com/help/dictionary/d332.htmЛевый агрумент —– описание автомата, правый –— срока или мосив для парснига.
guest8 02.03.2019 19:27 # −999
BEKTOPHblu_nETyX 02.03.2019 21:46 # 0
guest8 02.03.2019 19:11 # −999
BEKTOPHblu_nETyX 02.03.2019 20:01 # +1
guest8 02.03.2019 22:29 # −999
qpjll-oc 02.03.2019 18:28 # −102
cmepmop 02.03.2019 18:33 # +1
1. перевести число в строку;
2. использовать посимвольное сравнение без учёта регистра, отбросив разделитель разрядов либо жестко заменив его на точку;
3. ПРОФИТ.
gost 02.03.2019 19:33 # −1
bormand 02.03.2019 19:36 # −1
nEPBO6blTHblu_nemyx 02.03.2019 19:38 # 0
Возможно, также +0 и -0 будут будут приведены к одному числу, но это неточно.
gost 02.03.2019 20:01 # 0
В любом случае (раз уж поступило предложение снять зелёный), я не вижу каких-то преимуществ у этого метода по сравнению с банальным «abs(a - b) < MaJleHbKNN_nemyx»: он медленнее, сложнее в реализации и определённо хуже читаем.
nEPBO6blTHblu_nemyx 02.03.2019 20:10 # 0
cmepmop 02.03.2019 21:27 # 0
SameValue, FloatToStr, проверьте.
FloatToStr тянет функцию FloattoText, код которой - 3 с половиной экрана на ассембрере.
Профит? На самом деле, это Ваш php сосёт.
nEPBO6blTHblu_nemyx 02.03.2019 21:57 # 0
Но с другой стороны, вызывать FloatToStr лишь для сравнения —– это потеря скорости. В Delphi больше выбора, чем в PHP, как сделать, и можно сделать эффективнее.
cmepmop 03.03.2019 00:44 # 0
qpPAHLLy3cKuu_nemyx 03.03.2019 01:08 # 0
KPACHblu_nemyx 03.03.2019 01:15 # 0
А вот до первых граблей двойное равно используют. В каком-то форумном движке хэши паролей сравнивались через двойное равно. Если хэш пароля юзера начинался с "0e", то в этого юзера можно было залогиниться чуть ли не с любым паролем.
qpPAHLLy3cKuu_nemyx 03.03.2019 01:21 # 0
guest8 03.03.2019 02:08 # −999
KPACHblu_nemyx 03.03.2019 03:11 # 0
Значит, в SMF скопировали ошибку из phpBB. Какой багор )))
guest8 03.03.2019 03:25 # −999
KPACHblu_nemyx 03.03.2019 03:29 # 0
guest8 03.03.2019 03:30 # −999
KPACHblu_nemyx 03.03.2019 03:34 # 0
Вообще не могу представить, где оно может понадобиться. Если мне нужно сравнить выражения как целые числа, я могу явно использовать приведение: intval($a) === intval($b). Для других случаев есть floatval, strval, boolval. Так хотя бы понятно, к чему всё приводится перед сравнением.
guest8 03.03.2019 03:38 # −999
qpPAHLLy3cKuu_nemyx 03.03.2019 13:01 # 0
KPACHblu_nemyx 03.03.2019 13:13 # 0
MoJloDou_nemyx 03.03.2019 14:54 # 0
guest8 02.03.2019 15:19 # −999