- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
int f6(int* a,int k, double& min, int& n, int& count) {
int i;
min = a[0];//8
n = 0;
count = 0;
for (i = 0; i < k; i++) {
if (a[i] == 0) {
count += 1;
}
if (abs(10-abs(a[i])) < abs(min)) {
min = a[i];
n = i;
}
}
return 0;
}
тут 50 однотипных задач, мозг уже не соображает
кринж...................
работает
обнял, приподнял
спасибо!!!!
Но это не сработает с каким-нибудь "__int128" https://gcc.gnu.org/onlinedocs/gcc/_005f_005fint128.html
Макрохуйнюшка с тернарником оказывается универсальней всяких там стандартных библиотек
Можно кастомный компаратор делать!
> Trying to take the absolute value of the most negative integer is not defined.
> -2147483648
> non-negative
inb4: C и кресты сосут, у них даже модуль нормально не работает.
У джавы, интересно, что в таком случае? Исключение?
и никаких исключений
Но справедливости ради: в доке к ``abs`` в джаве про это написино.
Джавушки конечно не самые умные программисты, но всё таки про количество бит в четырёх байтах и о доп коде они имеют представление на уровне информатики за 11-й класс, все таки они не ПХПшники
Например Гост -- питонист (не в том смысле, что это его основной язык, а в том, что он его знает, и пользуется по собственному желанию)
С другой стороны очень много школолы изучает питон
Note that if the argument is equal to the value of Integer.MIN_VALUE, the most negative representable int value, the result is that same value, which is negative.
https://docs.oracle.com/javase/8/docs/api/java/lang/Math.html#abs-int-
Благо джава, в отличие от крестов, не будет строить оптимизации на основе того, что результат abs неотрицателен.
Тот где модуль всегда неотрицательный, но если взять модуль определённого заначения, вся программа может по пизде пойти, поэтому лови это значение самостоятельно.
Или тот где модуль может без объявления войны официально в военное время быть отрицательным.
Именно поэтому я за исключение. А то потом этот отрицательный модуль в какую-нибудь уязвимость эволюционирует.
В конце-концов деление на 0 возвращает исключение и все привыкли. Хотя можно было бы просто вернуть INT_MAX/INT_MIN в зависимости от знака и задокументировать.
или NaN (в JS наприер)
Всё таки деление на ноль уходит корнями в железное исключение, которое кидал процессор (так было исторически) а на переполнения ему пофиг.
Но я согласен, что исключение лучше: причем если в С++ нам нужен суперперформанс и совместимость с няшной, то в джаве нам этого точно не нужно, и вполне нормально было бы кинуть исключение.
вот как .net
А ведь мог и не кидать... И стандарт такую реализацию вполне допускает.
> пирфоманс
Современные реализации исключений не портят пирфоманс если ты их не кидаешь. Хватит уже насиловать труп 32-битной венды...
Я не всегда понимаю по какой причине выбрана конкретная стратегия обработки ошибок.
К неймингу и кешингу я бы добавил обработку ошибок:)
>Современные реализации исключений не портят пирфоманс если ты их не кидаешь.
Дык а время на проверку что там за значение получится?
Её конпелятор мог бы убирать когда ему очевидно, что там всё ок и без переполнений. Ты ведь далеко не всегда делишь на неведомую хуйню.
Ну или проц мог бы кинуть аппаратное исключение как при делении на 0 (кресты с такими исключениями, конечно, не работают, но в теории рантайм мог бы обрабатывать какие-то из них не раскрывая эту деталь реализации для программиста и делая вид, что там просто была проверка).
С другой стороны, для сдвигов же эта хуйня врод есть?
А еще вроде отдельные инструкции для сложения сайн и ансайн есть у MIPS..
У интела даже инструкция "into" была чтобы быстро проверять переполнение после знаковых операций... Но не прижилась.
А могли бы решить один раз, на уровне железа
А те, в свою очередь, спихнули её на разработчиков обычных...
А ещё printf, который в завимости от шаблонов может вытаскивать аргументы из обычного стека и из стека FPU, так что может получиться питушня.
Тормозить же будет шопиздец...
И в общем-то эта проблема вылезает только если ты идёшь на тёмную сторону и юзаешь reinterpret_cast или pragma pack. В прикладном коде надо очень постараться, чтобы её словить.
Рандомному питуху думать про это не надо, за нево компилятор все выровняит
Нормальные процы сразу кидают исключение, а x86 наказывает нехилым пенальти со времен XT еще (когда шина стала два байта)
Он их туда ещё и писать может...
Просто предсьавте, что у вас нету pritnf
У меня в контроллерах вполне может не быть никакого "printf".
без printf.
Кажется, это очень скучное и заёбное занятие
Любая реализация исключений требует создание некоторой поебени, которая бы проверяла, а не бросаем ли мы тут исключение. На эту хуйню с проверкой тратятся такты, а это уже порча пирфоманса. Компиляторы не умеют пока достаточно эффективно что-то там доказывать, особенно если речь о том, что исключение может бросать какая-то библиотека, которая не знает, что передаваемые в нее хуйни к исключениям 100% не приводят, это можно было б решить при LTO, если какая-то хуевина заинлайнится, но с динамическими либами такой трюк не прокатывает т.к. хуй знает какой код какую хуйню там вызовет. Можно конечно сделать отдельные вореанты функций, которые не делают исключений, но это опять уже какие-то говнокомпромиссы, в целом исключение это не бесплатный механизм.
У меня в контроллерах никаких "исключений как в крестоговне" нет.
Вообще говоря, исключение хуево еще в том смысле, что оно требует некий порядок исполнения хуйней. Допустим есть две функции foo1() и foo2(), и очередность их вызова вообще неважна, и если я вызову foo1() а потом foo2() или сначала foo2() и потом foo1() то разницы нет нихуя. И умный компилятор может заинлайнить обе эти функции, и если они реально никак не зависят друг от друга и не мешают друг другу, компилятор может после заинлайнивания попереставлять инструкции чтобы равномерней загрузить конвейер. Да и вообще, обе эти функции могут читать один массив и чето делать, грубо говоря
то компилятор это может как-то заоптимизировать, совместив этот цикл в один. А если там всякие хуйни могут бросать эксепшены, то надо сначала это говно закончить, потом это, и именно в таком порядке, потому что если в первой хуйне эксепшен бросился, вторую мы даже не начинали. Т.е. эксепшены самим фактом возможности своего броска создают дополнительные говноограничения на оптимизацию питушни, так что это говно
К слову, оно там не только при делении на 0. Просто в высокоуровневых языках очень редко дают полноценно поюзать инструкцию деления, поэтому только 0 становится особым случаем.
а когда еще можно лажануться с делением?
Деды как-то без FPU жили, а MS-DOS написали
Начальство хотело купить сервер, и выбрало самый дорогой, с максимальным числом FLOPS за ахулион
Ну заебись, только на том сервере не было ни единой программы, которая использовала бы плавающую точку
Там ещё джва стула: отрицательный остаток (симметричное округление к нулю) или положительный остаток (округление вниз). Сишка, конечно же, не выбрала ни одного.
З.Ы. Хм, в С99 описано что к нулю...
А вот в c++98 оно таки было implementation defined. Так что память у меня всё-таки работает.
BC 3? VS C++6.0?
Это, блядь, не шутка. Каждую весну и осень на форумы случается набег студентоты с неработающими лабами по С и С++, написанные на нестандартном пиздеце.
Какой снобизм !!!
Тоже мне новость. В ВУЗ-ах постсовка до сих пор учат писать всякую хуйню на TASM под DOS. Можешь посмотреть темы на каком-нибудь киберфоруме и прочих таких говнофорумах, куда студенты со своими лабами набигают
мужики выручайте
Друзья, пожалуйста! Нужно только в С++, пожалуйста
Друзья! Выполните, пожалуйста, программирование по Mathcad!
Очень нужно пожалуйста пожалуйста
Друзья, помогите пожалуйста с написанием скрипта. - ОЧЕНЬ НАДО!
https://arstechnica.com/information-technology/2013/06/c99-acknowledged-at-last-as-microsoft-lays-out-its-path-to-c14/
Надеюсь это сарказм.
пеш Рапбом() кидает исключеие, за что ему большое человеческое спасибо
Бамп отсосу шарпомразей!
Да. Там же изначально всё ворованное.
Я хотел было написать что так сделали йажа.итiл.Гапбом, но там 1опg
Вообще забираю свою доёбку про несекурность: там в доке сказано, что это не для криптографии рендом, а вероятно чтобы фигурки в тетрисе выбирать, или tip of the day...
И причем тут сид? Ты же не тиккаунтом сидишь, я надеюсь?
И вообще: раз в 24 дня можно машину и перезагрузить
Зачем? Можно просто не генерить случайные числа в эти критические дни.
Не знаю как можно было минусануть такую вкусную идею.
Это или кто-то промахнулся или напрочь убито восприятие эстетики омерзительного.
Я ;(
Приношу извинения за миссклик.
С диска Марсальи 1998 года.
4, к примеру, случайное: https://imgs.xkcd.com/comics/random_number.png
— 42, 69, 14, 88, 666.
— Опять ничего не выучил, садись, 2.
— Ну Марьванна, пожалуйста, не ставьте, у меня просто собака конспекты съела...
https://govnokod.ru/20318
Кстати, мне ещё нравится название Ибуклин. Вероятно, в честь китайского слова «ибу», которое переводится как «шаг».
Менять их дорого. Есть вариант нанять оператора, чтобы он двигал мышку и стучал по клаве создавая энтропию, либо купить стайку макак, и выдать клавиатуры им.
Как лучше сделать?
Первый случай легко оформить юридически, зато во втором мы сможем бесплатно получить веб-сайт
ex: «OneRNG», «TrueRNG», etc.
А в LPT они лазят?
* с 9.00 до 17.00 не работает, в промежутке 11.00-15.00 секьюрность не гарантируется
Засунуть вебку в непрозрачную банку и хешировать картинку тепловые шумы с неё.
Возможно, СГ будет давать мало чисел, если радиационный фон низкий.
Диодик или резистор с усилителем всё-таки проще... И работают не только в чернобыле.
А что с точки зрения физики? Придется экранировать витую пару и закрывать сервера?
Это делает дефолтный конь-структор Рапьом в кишках этого клона Йажи
> И вообще: раз в 24 дня можно машину и перезагрузить
Какой пользователь Шiпбошз )))
Или нет?
>Какой пользователь Шiпбошз )))
Если без шуток, то перезагрузить сервер с прыщами мне как-то легче психологически. Он почти наверняка поднимица. А что будет с виндой я хз, особенно если ты там обновлений наставил
Вообще похуй, на самом деле. Кашу маслом не испортишь, сам генератор то тоже не особо секьюрный.
В йажу завезли ЗесигеРапбом для криптопутизов.
Но .NET уже делался в начале XXI века, и вместо того, чтобы сделать сразу хотя-бы какое-то подобие нормальново рэндома, они взяли, и урезали с 64 на 32 бита тик, ох
Сейчас-то уже нормальный рендом у них есть
Ну вот кстати, не было бы исключения -- не нашли бы это говнище...
https://ideone.com/dJwbT8
Исключения, переполнения, питушения, ошибки деления. В «PHP» ничего из этого нет.
А в «Йажаскрипте» сделали тупее: там всегда double, только его ещё можно использовать там, где нужны целые числа.
Язык высокого уровня, который автоматически всё делает. А не как лалка кидает исключение или выдает отрицашню.
И потом они спрашивают, почему я за «PHP». Да вот хотя бы поэтому.
Именно поэтому
while(x < y)
...
x = x+1;
Может зациклиться навечно при достаточно больших значениях y. Безо всяких предупреждений.
Именно для этого придумали PHP_INT_MIN и PHP_INT_MAX.
А для знаковых нужно какую-то нетривиальную хуйню писать.
Никакой переменной под флажок не нужно
А мне вот птичка напела, что вроде в последней версии С++ стало можно переполнять знаковые, потому что единственное представление отрицательных чисел победило
Короче, я малость слышал звон, видимо
В воскресенье, 16 января, мужчина по фамилии Чалапатхи должен был совершить жертвоприношение и обезглавить козла во время индуистского праздника, посвященного солнечному божеству Сурье. По данным полиции, индиец был сильно пьян, и перерезал горло.
------
Собссно вопрос. Индуисты. Карма-хуярма. Сансара. Коров нельзя убивать. А козлу голову резать можно
Козла ему в жертву каждый год приносят, а человеченки отведать ему редко случается
У индуистов к коровам особое отношение, они их говном себе квартиру моют, а еще они считают, что коровы в следующей жизни перерождаются в человека (но говном человеков они полы почему-то не моют, удивительно).
https://govnokod.ru/27607#comment672184
https://www.youtube.com/watch?v=hh_9CfKq8KE
Оба умерли, увы