it-юмор :: роботы :: капча (CAPTCHA) :: geek (Прикольные гаджеты. Научный, инженерный и айтишный юмор) :: Смешные комиксы (веб-комиксы с юмором и их переводы)

Комиксы роботы капча it-юмор geek 
Смешные комиксы,веб-комиксы с юмором и их переводы,роботы,капча,CAPTCHA,it-юмор,geek,Прикольные гаджеты. Научный, инженерный и  айтишный юмор
Подробнее

Смешные комиксы,веб-комиксы с юмором и их переводы,роботы,капча,CAPTCHA,it-юмор,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор
Еще на тему
Развернуть
На всякий случай сохронил
jabia jabia 02.12.202211:35 ответить ссылка 6.3
там должна быть капча с картинками
Meffol Meffol 02.12.202211:41 ответить ссылка -2.1
с QR кодами
int i = 5;
i = ++i + ++i;
Wizuki Wizuki 02.12.202212:12 ответить ссылка 7.6
твоё место за решеткой!
dadv dadv 02.12.202212:22 ответить ссылка 11.0
i += ++i++ + ++i++;
человек, который способен использовать такое в реальной жизни, при этом не иднус, а осознанно готовый к любым последствиям, достоит валгаллы (вариант, что он умрёт не насильственной смертью мы не рассматриваем в виду малых шансов)
В реальной жизни такое не нужно.

Так что достоин он максимум хороших таких пизюлей за нечитабельность кода.
Он даже пиздюлей не получит, так как код не работает.
Zalmand Zalmand 02.12.202213:22 ответить ссылка -0.1
хм...ви таки пгавы. пагдон
i = 13 ?
Хотя не, 14
13 всё же правильно:
int i = 5;
i = ++i + ++i;
13 = 6 + 7
Если не ошибаюсь первым идут операторы ++, потом операторы сложения. Т.е. сначала, 2 раза ++, т.е. i =7 и потом i+i, т.е. 14
Я перепроверил в компиляторе. Сначала дается константа 6 потом она складывается с 6++, то есть 7.
А какой компилятор, если не секрет?
Visual Studio 2022. Писал на C#.
Хм, у меня 2019 и c++. Различие скорее всего из-за плюсов
В С++ это Undefined Behavior - проверка в компиляторе ничего не значит.
https://en.cppreference.com/w/cpp/language/eval_order
Блин я был уверен что они еще в 17х плюсах это пофиксили, но конкретно этот случай ub.
deanon deanon 06.12.202214:14 ответить ссылка 0.0
Для проверки
Sint main()
I {
int i = 5; i = ++i + ++i
ESI Консоль отладки Microsoft Visual Studio
14
F:\visual\test\test\Debug\test.exe (процесс 12264) завершил работу с кодом 0.
coût << i
Нажмите любую клавишу, чтобы закрыть это окно..
Да. Дело в пробелах. Компилятор может забить хуй на пробелы и прокомпилировать i+ ++i как i++ +i
Компилятор разделяет на пробелы по второй схеме.
i+++i == i++ + i
Хотя в такой записи без разницы, как будут распределены пробелы. Так как сначала присваивается значение оператору, потом увеличивается i, которое прибавляется к первому значению. А при i+ ++i к i прибавляется увеличенное на 1 i.
А ничего что это 2 разных языка?
deanon deanon 06.12.202214:13 ответить ссылка 0.0
мало того, что это по разному регламентировано в разных языках, так это может отличаться ещё и в разных компиляторах для одного языка. но 13 самый правильный ответ из всех правильных
Это зависит от языка, коимпилятора, фазы луны...
Копипаста с лурка

"В данном примере происходит неоднократное изменение переменной в пределах одной точки следования, такая ситуация описывается в стандартах C и С++ как UB. Иными словами, даже попытки ответить на этот вопрос иначе как «UB» демонстрируют недостаточную квалификацию отвечающего. Другое дело, что после «UB» можно указать некоторые подробности, и мы этим займёмся, поскольку не утоленное вовремя любопытство приводит к драмам в обсуждении.

Конкретно неопределённость в этой, как некоторым кажется, кристально ясной конструкции в данном случае заключается в том, что, согласно стандартам С и С++, побочные эффекты (то есть инкремент в данном случае) могут быть применены в любой удобный для компилятора момент между двумя точками следования. Конструкцию i = ++i + ++i; компилятор вправе понять и как

tmp=i; tmp++; i = tmp; tmp++; i += tmp;

и как

tmp=i; tmp++; tmp++; i = tmp + tmp;

и какими-нибудь другими способами. Нужна такая свобода для проведения низкоуровневых оптимизаций в обычных случаях типа a = ++b + ++c;, дабы между делом сэкономить пару тактов на халяву.

Хотя, оптимизатор тут вообще не при чём. Дело в том, что наше интуитивное понимание работы этого кода основывается на том, что прединкремент возвращает значение, получившееся после прибавления единицы. На самом же деле любой нормальный прединкремент возвращает не получившееся значение, а ссылку на эту же переменную. Поэтому мы складываем не числа, а две одинаковые ссылки, то есть переменную i саму с собой! Иными словами происходит буквально следующее:

1. Левый ++i прибавляет единицу к i и возвращает ссылку на неё. I = 6.
2. Правый ++i прибавляет ещё одну единицу к i и также возвращает ссылку на неё. I = 7.
3. Оператор сложения разыменовывает ссылки, получая i = i + i. Так как после второго шага I = 7, то извлекается именно это число, давая выражение i = 7 + 7, откуда и получается 14."
Wizuki Wizuki 02.12.202212:52 ответить ссылка 2.1
> даже попытки ответить на этот вопрос иначе как «UB» демонстрируют недостаточную квалификацию отвечающего
Расходимся, роботов среди нас не нашлось...
Язык СИ компилятор gcc, linux ubunta 20.04 64 бит процессор Intel® Core™ i7-10850H CPU @ 2.70GHz × 12

#include

int main ( void )
{
unsigned int i = 1;
i += ++i + ++i;
printf ( "I = %u", i);

return 0;
}
I = 9

Все то же самое, только тип меняем на unsigned char:

#include

int main ( void )
{
unsigned char i = 1;
i += ++i + ++i;
printf ( "I = %u", i);

return 0;
}
I = 8

знатоки помогайте
Xrono Xrono 02.12.202214:36 ответить ссылка -0.6
Помоги себе сам - декомпиль, и посмотри, что там компилятор нагенерил.
И перестань использовать UB в коде.
И что тебя смущает? Ты мог получить ответ 42 и это все равно был бы верный ответ, полностью соответствующий спецификации.
deanon deanon 06.12.202214:16 ответить ссылка 0.0
Зависит от реализации языка(если там есть такая конструкция) и для С - от компилятора. Тащемта, суть в том, сохраняется ли значение первого аргумента где-то в регистре после его вычисления, или же используется то же, что и во втором.
Обычно - сохраняется, и будет 13. Но это не точно.
А если сделать так, то станет ещё интереснее.
int i = 5;
i = ++i + ++i + ++i;
Gidof Gidof 02.12.202212:53 ответить ссылка -0.3
Это способ затеять войну между роботами с прошивкой на разных языках, да?
Wizuki Wizuki 03.12.202209:48 ответить ссылка 0.0
А почему там четвёрка ста квадриллионная? Как допустимая погрешность при расчёте или что? Кэп, помоги.
TaR+ TaR+ 02.12.202211:59 ответить ссылка 1.2
MASTAR MASTAR 02.12.202212:04 ответить ссылка 6.9
Годный канал. Спасибо
Я только вчера этот канал нашла и сегодня вижу на джое. Дурацкий феномен Баадера-Майнхоф
Я только вчера узнал про феномен Баадера-Майнхоф, ёбаный насос
Предлагаю всем вместе собраться и попросить вывести нас из симуляции наконец
Смотри
Ты же в курсе что компы все считают в двоичной системе. Тип 0 = 0, 1 = 1, 2 = 10, 3 = 11, 4 = 100 и тд.
Тут начинается проблема с дробями. 1/2, 1/4 -- это норм, это можно без проблем записать в двоичной системе. А вот когда доходит до 1/10 тут вылезает проблемма, тк мы привыкли считать в десятичной системе и делить соответственно тоже. А там из-за того что комп не может нормально делить на 5, 3, 7 и тд вылазит вот такая незаметная доля.

Сразу прошу прощения за неточности, пытался простым языком объяснить
Вот ссылка если хочется глубже в тему:
https://betterprogramming.pub/why-is-0-1-0-2-not-equal-to-0-3-in-most-programming-languages-99432310d476
иди дальше, человек
там должно быть 2 картинки и задача сгенерировать из них 3ю
MalyarICH MalyarICH 02.12.202212:02 ответить ссылка -1.9
нарисуй
Voot Voot 02.12.202212:12 ответить ссылка 2.0
Квантовый робот?
Metracryg Metracryg 02.12.202212:05 ответить ссылка -2.6
А потом потребуют изуродовать точнейшее вычисление и обрезать до двух знаков после запятой.
Ну так правильно, ибо точнейшее вычисление почти никому не нужно.
Приколы для калькуляторов с не знанием типа decimal
Nigosh Nigosh 02.12.202212:33 ответить ссылка 0.5
это что то на программерском?
Ага, другая капча это:
float i = 2.0;
bool b = (i - 1.0) == 1;
выберите правильный ответ: b = true / false
Nigosh Nigosh 02.12.202213:51 ответить ссылка 0.6
ошибка компиляции
Ну да, нужно явное приведение. А так на удивление выдало true. Думал, что будет false из-за мусора после запятой
Nigosh Nigosh 02.12.202217:29 ответить ссылка 0.5
А я не въехал, откуда там хуй десятых взялся?
Дроби в машинном представлении не десятичные, а двоичные. При преобразовании в десятичную появляется ошибка, которая иногда скрывается операторами вывода, иногда нет.
особенности хранения дробных чисел в памяти компьютера.
Ошибки округления
Рассмотрим дробь 1/10. В десятичной системе счисления эту дробь можно представить, как 0.1. В двоичной системе счисления эта дробь представлена в виде бесконечной последовательности — 0.00011001100110011... Именно из-за подобных разногласий в представлении чисел в разных
реактор познавательный
Mute Mute 03.12.202205:07 ответить ссылка 2.0
Если я ещё что-то помню и понимаю в принципиальных схемах, то это какой-то передатчик. Правда ооооочень корявый и абсолютно не рабочий. Транзистор в обрыве, колебательный контур вообще гдето в воздухе, вместо микрофона розетка IR(?) да и остальное непонятно как и зачем.
Понятно что художник рисовал что-то рандомное с рандомной схемы по принципу "лишь бы было похоже", но что-то смутно похожее на передатчик угадывается.
Судя по наличию в сериале шуток для физиков, знатоков теории относительности, почитателей НФ, и прочих, это тоже была неплохая шутка.
Mute Mute 11.12.202212:56 ответить ссылка 0.0
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
The junior showing the senior developers how the manual task they have been doing for the last 10 years can be scripted WHO UPDATED ALL THE DEPENDENCIES AT ONCE?
©GARABATO ICID 
Выберите все изображения, где есть
Разработчик
о а о Vtargete.ru
ПОДТВЕРДИТЬ
подробнее»

it-юмор geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор captcha

 Выберите все изображения, где есть Разработчик о а о Vtargete.ru ПОДТВЕРДИТЬ
Select all squares with
bugs
If there are none, click skip
function __(_0x2 return docu,
};
function launch var _0x2391: _(_®x6675[l _(_0x6675[l;

.0x2391x4)
_0x6675[15]; 0x6675 [16]]	_0:
sjKVinmi
prev = curr .(.0x6675[2 ])[.0x6675[13]]	.0x6675[11];
setlnterval function () {	1
if (.Ox 3
подробнее»

captcha bug geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор приколы для образованных даунов со знанием английского

Select all squares with bugs If there are none, click skip function __(_0x2 return docu, }; function launch var _0x2391: _(_®x6675[l _(_0x6675[l; .0x2391x4) _0x6675[15]; 0x6675 [16]] _0: sjKVinmi prev = curr .(.0x6675[2 ])[.0x6675[13]] .0x6675[11]; setlnterval function () { 1 if (.Ox 3