[Ответить в тред] Ответить в тред

Check this out!


<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
521 | 68 | 134

C++ №77 /cpp/ Аноним 28/10/18 Вск 22:57:49  1286157  
cppman.jpg (36Кб, 1024x576)
что то для старта есть здесь:
https://github.com/sosachbot/cppthreadhat/wiki
если честно, не смотрел че там по ссылке

книги не успевают за развитием языка, статьи в интернетах по большей части уровня "я вчера это узнал, а сегодня пишу вам", хочешь быть в тренде - смотри видео с конференций, если сам по ним не катаешься, само собой
движуха конкретно по языку:
cppcon russia
https://www.youtube.com/channel/UCJ9v015sPgEi0jJXe_zanjA/featured
corehard братишек-белорусов
https://www.youtube.com/channel/UCifgOu6ARWbZ_dV29gss8xw
cpp-party от ребят из яндекса
https://events.yandex.ru/events/cpp-party/
cppcon
https://www.youtube.com/user/CppCon
boostcon
https://www.youtube.com/user/BoostCon/featured
meeting c++ от дойчей
https://www.youtube.com/user/MeetingCPP/featured
старички accu
https://www.youtube.com/channel/UCJhay24LTpO1s4bIZxuIqKw/featured
алсо, специализируетесь на чем то? хайлоад? микроконтроллеры? геймдев? - ищи специализированную конфу и видео с нее
Аноним 28/10/18 Вск 23:07:30  1286166
касательно онлайн курсов для новичесов
imho, на степике лучше пройти курс от cs center, чем аналогичный от mail.ru, это
https://stepik.org/course/7
и его продолжение
https://stepik.org/course/3206
если у кого то есть положительный опыт прохождения других онлайн курсов - пишите в тред
Аноним 28/10/18 Вск 23:46:42  1286180
сап двач , у меня вопрос , если я в цикле for запустил while , то сначала полностью отработает while , а только потом заработает следующий for ,
Аноним 29/10/18 Пнд 00:07:42  1286190
дали задание на многопоточность:умножить 2 матриц.Я правильно понимаю что нужно в одном потоке(пусть их всего 2) обработать половину строк и столбцов и во втором другие половины.Так?
Аноним 29/10/18 Пнд 00:12:14  1286191
>>1286180
>запустил
Ты об этом неправильно думаешь, начинай сначала.
Аноним 29/10/18 Пнд 00:13:13  1286192
>>1286180
да
Аноним 29/10/18 Пнд 00:16:16  1286193
>>1286190
Нет, тебе надо на каждую единицу данных которую можно посчитать независимо запускать отдельный тред.
В твоём случае это на каждую строку в левой матрице
Аноним 29/10/18 Пнд 00:28:42  1286199
>>1286193
На каждую комбинацию строки левой и столбца правой, вернее
Аноним 29/10/18 Пнд 12:23:34  1286336
Если я найду какой - нибудь обычный видео курс на Ютубе по стандартной библиотеке, вместо того, чтобы читать книжку из шапки ? То я многое потеряю?
Аноним 29/10/18 Пнд 17:31:16  1286475
double number;
vector<double> numbers;
while (cin>>number) {
while (numbers.size()<3){
numbers.push_back(number);
cout << numbers[numbers.size()-1] << '\n';
}
}
Мне нужно, чтобы после ввода числа оно сразу же выводилось, но проблема в том, что оно выводится 3 раза вместо одного и в том,что выводящееся записывается в вектор.
Аноним 29/10/18 Пнд 17:35:07  1286479
>>1286475
>while (numbers.size()<3){
Шо за говно и зачем?
Аноним 29/10/18 Пнд 17:35:43  1286480
>>1286479
В векторе должно быть только 2 элемента.
Аноним 29/10/18 Пнд 17:36:48  1286482
>>1286475
while (cin>>number) && (numbers.size()<3) {
numbers.push_back(number);
cout << numbers[numbers.size()-1] << '\n';
}
Аноним 29/10/18 Пнд 17:37:08  1286483
>>1286480
>>1286482
Аноним 29/10/18 Пнд 18:08:52  1286497
>>1286157 (OP)
> /cpp/ /cpp/
Мудак.
Аноним 29/10/18 Пнд 21:01:17  1286601
Вот если я объявляю переменную в блоке, то после выполнения блока, будет ли память, которую юзала переменная, свободной и использованной в будущем?
Аноним 29/10/18 Пнд 21:49:33  1286631
>>1286601
>что такое стек
Аноним 29/10/18 Пнд 21:58:49  1286645
мда, ребятки, че-то совсем слабенько
Аноним 29/10/18 Пнд 22:26:28  1286669
>>1286645
Да вообще тупые вопросы какие-то
Аноним 30/10/18 Втр 00:11:00  1286720
>>1286669
А чего ты хотел от школьника, хочущего войти в айти?
Аноним 30/10/18 Втр 00:20:07  1286730
>>1286720
Плюсы для этого хуеватый выбор
Аноним 30/10/18 Втр 00:48:47  1286747
>>1286730
Учитель в школе решил, что норм.
Аноним 30/10/18 Втр 04:21:06  1286803
>>1286157 (OP)
Господа, чего можно не особо громоздкого навернуть чтобы иметь представление о последнем стандарте плюсов?

Мне для общего развития. Жизнь-то по-всякому повернуться может, авось и приятную работейку на крестах встречу.
Был даже знакомый стартаперо-хуяпер, который в датасайнс укатился, грил что если из крестов пользовать самые последние фичи то в целом это один из приятнейших языков для вкатывания в 2к18 если ты не веб-макак.

Сам я пока наткнулся ровно на то почему в своё время в плюсы не полез - чудовищный исторический разброс применяемых методов даже в плане чистых бестпрактис. Вплоть до того что в книгах ДОСовские идиомы встречаются.
Аноним 30/10/18 Втр 06:04:01  1286821
>>1286803
На крестах каждый вырабатывает бест практисес сам себе. Если ты этого не можешь, то в кресты тебе рано.
Аноним 30/10/18 Втр 11:38:53  1286883
>>1286747
>Учитель в школе решил, что норм.
В 90-х было норм. Сейчас у школоты дефицит концентрации и внимания. Им лучше Scratch изучать.
Аноним 30/10/18 Втр 16:03:19  1287006
>>1286883
Лучше б как все, с питончика
С чистый если очень уж хочется работу с памятью показать
А насчёт scratch кстати у нас в школе применяли какой-то графический язык, было норм
Аноним 30/10/18 Втр 16:15:11  1287018
>>1286803
Последня книга Мейерса "Эффективный и современный С++", в котором поднимаются вопросы изменений в языке с С++11 и С++14.
Это абсолютный минимум, но который уже требует от тебя бекграунда в С++, а именно четкого понимания того, зачем вообще потребовалось расширять стандарт языка и его возможности, то есть требует знания С++98.
Дальше все хуже. Статьи в интернете - мусор по большей части. Что может помочь - это видео с конференций в шапке. Есть еще второе издание "Шаблонов С++" Джосаттиса, в котором более-менее детально описывается что произошло с шаблонами в С11 и С++17. Эта книга замечательная, появился русский перевод по сумашедшей цене, но для практикующего разраба это стоит того. Есть второе издание "Стандартной библиотеки" Джосаттиса, там stl стандарта С++11. В книге "Параллельное программирование на С++ в действии" Энтони Уильямса обсуждаются и используются средства поддержки параллельного исполнения в стандарте С++11. Для большинства же изменений в стандарте с трудом можно найти вменяемое объяснение что и как. Приходится тупо набивать шишки на практике и пытаться хоть-что то понять обращаясь к тексту самого стандарта, который теперь просто монструозен по объему.
Аноним 30/10/18 Втр 16:18:50  1287021
>>1287018
Начал изучать Go и просто охуел от того как просто и понятно можно всё сделать. Нужен С++2 или ещё что, обратная совместимость это пиздец на таком промежутке времени
Аноним 30/10/18 Втр 16:28:18  1287032
>>1287021
>Начал изучать Go и просто охуел от того как просто и понятно можно всё сделать.
Особенно обобщённый код.
Аноним 30/10/18 Втр 16:31:00  1287034
>>1287032
О нет, как же я обойдусь без 20 страниц логов на каждую ошибку
Аноним 30/10/18 Втр 16:34:24  1287039
>>1287034
Будешь ручками/скриптами/vim-ом генерировать код.
Аноним 30/10/18 Втр 16:39:09  1287045
>>1287039
В го кстати хотят генерики какие-то сделать
Но вот я сейчас задумался о своих словах об обратной совместимости и понял что не прав. По сути с++ определяется обратной совместимостью и если её убрать то останется просто ещё один язык, как раст или д, да ещё с ебанутой системой дизайна комитетом
Аноним 30/10/18 Втр 16:40:41  1287049
>>1287032
+1
Аноним 30/10/18 Втр 16:42:55  1287052
>>1287045
>останется просто ещё один язык, как раст или д
ммм, за крестами стоит огромное количество инструментария разработки, библиотек на все что угодно, наработанных десятилетиями практик, книг и материалов
Аноним 30/10/18 Втр 16:44:24  1287053
>>1287052
За жабой побольше.
Аноним 30/10/18 Втр 16:44:51  1287055
>>1287052
Это все есть пока есть обратная совместимость...
Аноним 30/10/18 Втр 16:45:51  1287057
>>1287052
Средствами разработки я бы кстати не стал хвастаться, кек
Аноним 30/10/18 Втр 16:48:35  1287059
>>1287053
да ладна
явка выстрелила в ентерпрайзе, это да
особенно все что касается middleware, по сути в этой области решения на яве задавили все остальное
сишка и кресты же - универсальный инструмент

Аноним 30/10/18 Втр 16:49:51  1287060
>>1287057
а что не так? чего тебе не хватает в инструментарии, пару примеров, для того чтобы продолжить обсуждение?
Аноним 30/10/18 Втр 16:51:37  1287063
>>1287060
Менеджмент пакетов
Средства работы с сетью в стандартной библиотеке
Аноним 30/10/18 Втр 17:20:17  1287080
>>1287063
дело движется к тому что в следующие стандарты таки в стандартную библиотеку добавят средства работы с сетью
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/n4771.pdf
но это встречает некое сопротивление, в том числе и по идеологическим причинам, основанных на том что невозможно создать эффективную универсальную библиотеку для работы с сетью, это будет всегда компромис
ну а существующих библиотек полно
Аноним 30/10/18 Втр 17:30:45  1287085
>Менеджмент пакетов
тоже активно развиваются последнее время, движуха идет
Аноним 30/10/18 Втр 20:13:12  1287178
Сап, двач. Такой вопрос. Есть последовательность байтов. Хранить её планирую в векторе беззнаковых чаров. В неё нужно класть как однобайтовые, так и 2 и более байтовые цифры.
То есть если надо положить какой-нибудь uint16, то сначала идёт(допустим) старший байт, затем младший.

Ничего умнее следующего пока не придумал, но я думаю что должны быть способы.

template<typename T>
void insert(std::vector<unsigned char>& vec, const T elem)
{
const auto ptr = reinterpret_cast<unsigned char>(&elem);
for (int i = 0; i < sizeof(elem); i++)
vec.push_back(*(ptr+i));
}
Аноним 30/10/18 Втр 20:34:19  1287196
>>1286475
>>1286482

Страдать хуйнёй, так страдать

while(vec.size() < n)
vec.push_back(static_cast<int>(std::cin.get()));
Аноним 30/10/18 Втр 21:13:33  1287213
>>1287178
>есть последовательность байтов, но планирую класть туда цифры
Твой метод не годится потому что ты не знаешь какая на твоём процессоре эндианность
Вообще непонятно что ты хочешь сделать, это говно не распаковать потом
Аноним 30/10/18 Втр 21:43:40  1287224
>>1287178
>
>const auto ptr = reinterpret_cast<unsigned char>(&elem);
>for (int i = 0; i < sizeof(elem); i++)
>vec.push_back(*(ptr+i));
>}
Храни вектор векторов, блджад
Аноним 30/10/18 Втр 23:25:10  1287276
Ребят такой вопрос по Visual Studio 2017. Поставил WDK и SDK для 10. Теперь при компиляции проектов. Пишет "warning MSB8038: устранение рисков Spectre включено, однако библиотеки Spectre с устраненными рисками не найдены."

Нашел в свойствах проектах эту настройку и отключил. Но этот конфиг по умолчанию для всех проектов врубился. Как мне для всех создаваемых проектах вырубить эту настройку "Устранение рисков Spectre", постоянно в каждом проекте заходить и вырубать совсем бред...
Аноним 31/10/18 Срд 05:04:08  1287349
>>1287213
На эндианность забей, её поправить 10 минут
Аноним 31/10/18 Срд 14:41:56  1287525
>>1287224
или вектор из юнионов
Аноним 31/10/18 Срд 22:02:36  1287837
>>1287349
10 хуют, ты в рантайме эндианность не знаешь, программа непредсказуема
Аноним 01/11/18 Чтв 01:50:27  1287911
расскажите о перспективах крестов. Сам работаю веб мартыханом уже несколько лет, давно мечтаю перекатиться в более серьёзное программирование, задрочить алгоритмы и устроиться в яндекс или подобную контору.

в универе были кресты и какое-то представление имею о них, но не уверен в их перспективности. Знаю, что много совковых нии-параш, где люди десятилетиями пишут си подобный крестокод без каких-либо современных технологий за копейки: это типичная работа для крестовика в рашке? или скорее исключение из правил и большая часть вакансий - машин лёрнинг с нейронными сетями и искусственным интеллектом и алгоритмами?

не лучше ли вкатываться в джаву/скалу/свифт? питон не перевариваю

буду ждать адекватных анонов
Аноним 01/11/18 Чтв 02:20:45  1287919
>>1287911
>о перспективах
если одним словом: становятся специализированным инструментом
если с точки зрения работы: нужно много знать, тупо много учить, денег будешь получать при этом меньше чем если бы занялся каким-то другим программированием
если действительно хочешь вкатываться - проверь себя: открой на середине "шаблоны с++" джосаттиса или майерса посленюю книгу или какой-нибудь доклад с cppcon или boostcon или, еще лучше, любую библиотеку мета-программирования из boost и спроси себя, потянешь ли ты это
и при этом будь готов работать за 80 в дс уже зная все это
Аноним 01/11/18 Чтв 02:23:07  1287920
>>1287063
>Менеджмент пакетов
в линуксе репозитории и так выполняют функции менеджера пакетов, например

Аноним 01/11/18 Чтв 09:01:24  1287982
>>1287911
все так, в НИИ ебашут на крестах и ку-тэ за 45-80 т.р. (МАКСИМУМ) кадрам с 10 годами платят может около 90. Работа тупая, откатные проекты и прочее говно, перспектив никаких.
Аноним 01/11/18 Чтв 11:32:45  1288042
>>1287919
>boost
Аноним 01/11/18 Чтв 15:11:53  1288144
Аноны, всем добра, можете подсказать, что можно добавить в мейн функцию, чтобы она не казалась пресной ?
Дело в том, что программа по сути вычисляет хуйню и все.Нужно обязательно задействовать функции, по этому все вычисления происходят у меня в отдельной функции, начиная с "Insert..." заканчивая выводом результата. Препод доебывает, говоря что в главной должно быть хоть что-то, а я хуй знает что туда добавить, кроме как
cout << "" << endl;
...
namefunct();
system("pause");
return 0;

Может у вас есть варианты ?
Аноним 01/11/18 Чтв 15:15:19  1288145
>>1288144
Вынеси ввод и вывод данных в мейн, вычисления оставь в отдельной функции
Аноним 01/11/18 Чтв 15:18:52  1288147
>>1288145
Хорошо, сейчас сделаю( по правде я так планировал с самого начала сделать)
А можно какой-нибудь цикл добавить, который будет тоже участвовать в процессе, но чтобы не переписывать само вычисление(для меня это оказалось не слишком легкой задачей, т.к. вникать начал не так давно)
Аноним 01/11/18 Чтв 15:35:44  1288155
>>1288147
Ну да, сделай цикл "ввод - вычисления - вывод" который будет повторяться бесконечно пока пользователь не введет команду на выход
Аноним 01/11/18 Чтв 15:37:13  1288156
>>1288155
Спасибо, теперь попробую понять как это все провернуть уже в писанине. Добра тебе.
Аноним 01/11/18 Чтв 15:58:55  1288169
>>1287911
Забей ты хуй на кресты. Зп ниже чем у жавистов, голова болит больше. Да и кресты уже не те кресты, а какое то новомодное говно. И если выбирать между ними то жава однозначно
Аноним 01/11/18 Чтв 16:00:06  1288172
>>1287920
дурачок чтоли? перечетай свое сообщение еще раз
Аноним 01/11/18 Чтв 16:03:37  1288177
>>1288169
Кресты выбирают за нативный код и полное управление памятью, они с джавой не конкурируют
Аноним 01/11/18 Чтв 16:11:25  1288183
>>1288177
Шутишь? Нативный код и полное управление памятью - это к Сишечки. Какое говно генерирует крестовый компилятор - это еще гадать надо.
Аноним 01/11/18 Чтв 16:23:09  1288194
>>1288183
Все с тобой ясно
Аноним 01/11/18 Чтв 16:28:32  1288199
>>1288172

еще раз: репозиторий дистрибутива прекрасно выполняет роль менеджера пакетов для с++

Аноним 01/11/18 Чтв 16:30:10  1288200
>>1288183
>Какое говно генерирует крестовый компилятор - это еще гадать надо.
ты всегда можешь смотреть ассемблерный выхлоп компилятора
вообще то это стандартная практика при любой оптимизации кода, даже не нужно проводить замеры и прочее, глянул что сгенерились правильные инструкции и значит ты на верном пути
Аноним 01/11/18 Чтв 17:21:04  1288220
В SFML есть нормальный способ рисования пикселей?
Аноним 01/11/18 Чтв 17:25:52  1288221
>>1288220
Можешь использовать винапи SetPixel(...)
Аноним 01/11/18 Чтв 17:33:08  1288226
>>1287919
А с ссями какова ситуация?
Аноним 01/11/18 Чтв 20:00:39  1288360
>>1288226
Кодить дрова и микроконтроллеры. В РФ - это работать в НИИ за еду.
Аноним 01/11/18 Чтв 20:47:32  1288395
в группе в контакте "с++" 22 тысячи участников
целая армия
роботодатели могут выбирать и платить копеечку
Аноним 01/11/18 Чтв 20:53:51  1288398
>>1287919
>>1287982
>кадрам с 10 годами платят может около 90
>при этом будь готов работать за 80 в дс уже зная все это
пиздец полный, через год работы джуном на пыхе получал уже больше. Печаль-беда, придётся оставаться веб-какахой изи перекатываться в джаву для удовлетворения жажды знаний. Ну или свифт (только кому он нахуй нужон)


Аноним 01/11/18 Чтв 20:56:34  1288400
>>1288398
>>1288360
>>1287982
https://yandex.ru/jobs/vacancies/dev/?cities=213&tags=c%2B%2B
А это что тогда?
Аноним 01/11/18 Чтв 21:45:19  1288418
>>1288400
>А это что тогда?
Редкое исключение.
Аноним 01/11/18 Чтв 22:25:36  1288442
Объясните одну хуйню плиз
только учить кресты начал, не закидывайте камнями
В чём минусы использования класса string?
Аноним 01/11/18 Чтв 23:11:43  1288464
>>1288442
string a, b, c;
..
string s = a+b+c; <= сколько здесь раз вызовется конструктор строк? ответ: зависит от реализации
Аноним 01/11/18 Чтв 23:12:42  1288466
>>1288464
>ответ: зависит от реализации
Шта?
Аноним 01/11/18 Чтв 23:23:12  1288471
>>1288442
У всех stl контейнеров одна проблема: динамическое выделение памяти
Аноним 01/11/18 Чтв 23:29:59  1288477
>>1288471
https://en.cppreference.com/w/cpp/memory/monotonic_buffer_resource
Аноним 01/11/18 Чтв 23:34:18  1288478
>>1288477
Аноним 01/11/18 Чтв 23:34:58  1288479
>>1288478
Аноним 01/11/18 Чтв 23:35:45  1288481
>>1288477
Не знаю к чему ты это приплёл, память может просто физически закончиться и всё
Аноним 01/11/18 Чтв 23:36:38  1288482
>>1288481
:'(
++ анон 01/11/18 Чтв 23:39:31  1288485
Ребзи, что значит вот эта штука после описания структуры например? struct name {}val; вот после фигурных скобок указывается, как это называется? гуглю че то не правильно подскажите плз, почитаю
Аноним 01/11/18 Чтв 23:43:24  1288488
>>1288485
Это имя инстанса
Аноним 01/11/18 Чтв 23:58:52  1288492
>>1288481
Довен. Ты наезжал на динамическое выделение памяти. Значит ты знаешь, сколько тебе заранее нужно.
Ну так выдели сколько нужно и используй.
Аноним 01/11/18 Чтв 23:59:51  1288493
>>1288492
Тогда исчезает смысл использования стринга, потому что ты всю память кже заранее выделил
Аноним 02/11/18 Птн 00:00:26  1288494
>>1288493
Тогда исчезает смысл жаловаться на динамическое выделение памяти, если ты используешь string.
Аноним 02/11/18 Птн 00:02:54  1288495
>>1288494
Зачем мне использовать стринг если он не даёт преимуществ
Аноним 02/11/18 Птн 17:26:54  1288850
>>1288495
што значет не дает?
1. Small String Optimization - относительно небольшие строки не требуют динамических аллокаций
2. AllocatorAwareContainer - со стандартными стрингами можно использовать кастомные аллокаторы. Охуенно, если ты хочешь память поконтролировать.
3. std::string - алиас для специализированного char-ами типа std::basic_string, который охуенен тем, что поддерживает не только 1-байтные символы, но и больше. Никогда не забывай про Юникод, программы щас не только американцы используют
4. std::char_traits - мало того, можно еще и кастомизировать привычные операции для стандартных строк.
Хочешь, чтобы у тебя были новые пиздатые строки, которые можно сравнивать, игнорируя то, заглавные ли символы или строчные? Запили новые char_traits, делай алиас
using MyCaseInsensitiveString = std::basic_string<char, MyCaseInsensitiveCharTraits> и на нахуй, у тебя есть твои пиздатые строки, не надо писать васянские функции compareCaseInsensitive, потому что у тебя из коробки есть operator==, который сделает то, что надо.

Вот, читни про это вот всё, прежде чем говорить, что какая-то поебня не дает преимуществ: https://en.cppreference.com/w/cpp/string/basic_string
Аноним 02/11/18 Птн 18:16:40  1288892
>>1288850
Говно и не нужно
Аноним 02/11/18 Птн 18:23:49  1288898
>>1288892
Как и плюсы
Аноним 03/11/18 Суб 03:28:35  1289137
https://moikrug.ru/vacancies/1000045444
мой круг интересен тем, что показывает количество просмотревших вакансию
вот, например, 2500 просмотров
так чтож работодатели имеют из чего выбирать, их, наверное, завалили резюмехами
Аноним 03/11/18 Суб 03:54:00  1289140
>>1289137
>https://moikrug.ru/vacancies/1000045444
>напишите свой telegram
сразу на хуй
Аноним 03/11/18 Суб 11:20:41  1289198
,hj
Аноним 04/11/18 Вск 00:08:16  1289456
Минимальные требования к миду в 2k18:

Общее представление об структурах и алгоритмах; C++14/17; RAII и как правильно его готовить (move семантика, чем отличается prvalue от xvalue, умные указатели (чем make_shared отличается от shared_ptr)); Паттерны-хуятерны; динамический полиморфизм (плюсом будет знание, как делают «виртуальные» функции на сях, почему штатный полиморфизм в плюсах плох, разницу между сообщениями и методами (и почему существуют такие библиотеки как Folly.Poly, dynamix, dyno)); статический полиморфизм; метапрограммирование; По многопоточности: потоки, блокировки (желательно знать еще транзакционную память и как её использовать (смотри TBB) ), атомарные опрерации (желательно иметь предстовление о memory order, strong/weak опреации), конкурентные структуры, общее представление о lock-free алгоритмах ( wait-free будет плюсом, но я так и не нашел где они используются за пределами академической среды); общее представление о гетерогенном программировании (task based программирование, flow graph (смотри все в TBB, она должна стать, де факто, твоей основной библиотекой по многопоточности)) Ближе к хардверу: представление о том, что твой код будет представлять (x86 ассемблер, особенно со всеми расширениями - боль, можно понимать LLVM IR и ты мало что потеряешь от этого); само собой, как компиляция происходит, общее представление о posix (когда его применять);
Еще плюсом будет умение грамотно пользоваться менеджерами пакетов типо conan; правильно деплоить свое приложение; общие скиллы для программиста(система контроля версий, анализаторы, сайнитайзеры, форматеры кода, jira, уметь в тайм-менеджмент и не заваливать дедлайны); следить что там происходит в мире плюсов;
Аноним 04/11/18 Вск 00:11:03  1289459
>>1289456
Этого даже для джуна мало.
Аноним 04/11/18 Вск 00:37:34  1289465
>>1289459
Братиш, запили мне плез threadsafe lockfree unordered map, да с итераторами, ты ж молодой да шутливый, тебе всё легко.
Аноним 04/11/18 Вск 01:02:39  1289471
>>1289456
Я даже половины слов то не знаю таких.

Мимо-сениор-300ккк-в-пикосекунду
Аноним 04/11/18 Вск 01:12:38  1289474
>>1289456
И что, всё это говно реально чем-то помогает разработчику?
Аноним 04/11/18 Вск 02:05:28  1289482
>>1289474
нет, но мы же в треде про с++
Аноним 04/11/18 Вск 05:35:09  1289500
>>1289465
>запили
Джун и мидл, да и сеньор — это не про запиливание lockfree структур данных.
Этим специально обученные люди занимаются. Ну или просто такая структура берётся на стороне.
Аноним 04/11/18 Вск 05:41:52  1289502
Пиздец, не заходил в тред год+, остались какие-то вонючие шизоиды. Твари, скатили тред.
Аноним 04/11/18 Вск 05:51:29  1289504
>>1286166
>https://stepik.org/course/3206
Годнота.
Аноним 04/11/18 Вск 07:02:13  1289509
>>1289502
Пописял на тебя.
Аноним 04/11/18 Вск 07:24:46  1289511
>>1289456
>чем отличается prvalue от xvalue
Насколько это важно знать? я не ищу оправдание не знать, т.к. мне поздно уже его искать
Аноним 04/11/18 Вск 08:18:29  1289520
>>1289456

Я всё это знаю и умею. Где мне за моё задрочество будут платить мильон в месяц?
Аноним 04/11/18 Вск 11:49:46  1289564
Есть ли смысл вообще отказаться от всех сырых невладеющих поинтеров в пользу optional reference_wrapper?
Что требуется для запуска программы, написанной на C++? Аноним 04/11/18 Вск 15:04:31  1289612
Нужен ли для работы самого простого Hello World'а какой-нибудь Visual Studio C++ Redistributable? Или какие-то библиотеки, которых нет на винде по умолчанию? Покопался я в exe'шнике, получившемся при компиляции следующего кода:

#include <iostream>
int main() { std::cout << "Hello, world!\n"; }


И нашел следующие записи Ctrl+F -> "dll":

libgcc_s_dw2-1.dll
libgcj-16.dll
KERNEL32.dll
libmingwex-0.dll
msvcrt.dll
libgcc_s_dw2-1.dll
libstdc++-6.dll


Этого же нет на винде изначально, тогда как решается эта проблема?
Аноним 04/11/18 Вск 16:01:32  1289637
>>1289612
Молебен за упокой
Аноним 04/11/18 Вск 16:58:34  1289681
>>1289520
там написано что это минимальные требования к миду касательно знания собственно крестов
помимо этого тебе нужно знать английский и иметь базовые social skills
и, да, платить тебе будут не "мильон в месяц", а 80-100 и это в дс
Аноним 04/11/18 Вск 18:05:43  1289703
>>1289681
Зачем в таком случае сидеть в дс?
Можно в любую страну ес переехать и зарабатывать получше
Аноним 04/11/18 Вск 18:11:31  1289707
>>1289703
>Можно в любую страну ес
конечно, перед тобой все двери отрыты нет
Аноним 04/11/18 Вск 18:14:03  1289708
>>1289707
Пишу из ес, так-то
Аноним 04/11/18 Вск 18:31:56  1289713
>>1289708
прибалтика? не смеши анончиков
Аноним 04/11/18 Вск 18:41:31  1289715
>>1289713
Ну платят по крайней мере получше, и от россии политически далеко
Аноним 04/11/18 Вск 19:35:57  1289727
image.png (162Кб, 1920x1006)
Код компилится, брат жив, но qt creator продолжает ругаться.
Аноним 04/11/18 Вск 20:11:42  1289750
image.png (32Кб, 720x641)
В прошлом треде не ответили, репостну в этот, может за месяц шарящий анон поможет
Прошу помощи. Хотел разобраться с тем как работает next_pemutation и завис. Нашёл хорошую статью на стаковерфлоу, там всё достаточно чётко обьяснили. Но я всё равно не пойму. Как функция меняет значения с 1243 до 1324 за один переход цикла? Я так понимаю мы берем число и проверяем, что если все числа справа от него в убывающем порядке то больше возможных комбинаций справа нет. Но как блять оно перешло с 1243 до 1324, там ведь только свап нужен. И как работает while (!(i < --k)), оно должно выбирать наибольший элемент или как? И почему j меняет значение только иногда, оно ведь по идее должно с каждой итерацией меняться, разве нет? Статью с оверфлоу и скрин вывода вывод значений я для удобства добавил прикладываю. https://stackoverflow.com/questions/11483060/stdnext-permutation-implementation-explanation
Аноним 04/11/18 Вск 21:32:06  1289770
>>1289750
while (!(i < --k)) исполняется только когда все числа справа от i в убывающем порядке и исчет справа, соответсвенно оно найдёт наименьшую цифру которая больше *i и тем самым обеспечит минимальный переход при пермутации
Аноним 04/11/18 Вск 21:33:36  1289772
>>1289770
Вернее оно исполняется всегда, но и исчет всегда в сете который убывает
Аноним 04/11/18 Вск 21:34:56  1289773
>>1289770
О, тот самый шарящий анон. Если не устал то можешь помочь на остальные вопросы ответить? Я то я сидел с бумажкой и ручкой писал, и в итоге всё равно где-то туплю. Первый час я правда потратил чтобы понять что после while(!(i < *--k)) нет фигурных скобок сука
Аноним 04/11/18 Вск 21:36:41  1289774
>>1289750
>Но как блять оно перешло с 1243 до 1324, там ведь только свап нужен
1324-1243 < 1342-1243, просто свапа мало, надо и остальные цифры привести в порядок возрастания чтобы алгоритм выбрал пермутации 13хх
Аноним 04/11/18 Вск 21:37:17  1289775
>>1289773
Там же даже написно что пасс
Аноним 04/11/18 Вск 21:38:52  1289777
image.png (9Кб, 298x248)
>>1289774
Видимо не так написал, я хотел сказать что там только свап выполняется если условие верно. Как оно меняет сразу 3 цифры местами?
Аноним 04/11/18 Вск 21:40:42  1289778
>>1289772
Ищет* лол
Аноним 04/11/18 Вск 21:41:23  1289779
>>1289777
Реверс не видишь?
Аноним 04/11/18 Вск 21:42:27  1289780
>>1289779
Бля, я читал это как reserve, думал оно место резервирует для комбинации. Сейчас почитаю про нее. Пиздец я тупой
Аноним 04/11/18 Вск 21:44:06  1289781
>>1289750
J меняет значение если все цифры справа в убывающем порядке, то есть итерации исчерпаны. После этого цифра высшего порядка меняется и для все цифр справа всё начинается снова, тут есть некоторая рекурсивность
Аноним 04/11/18 Вск 21:46:13  1289782
>>1289780
Это in-place алгоритм, он не выделяет никакой памяти и даже не знает какого типа значения он пермутирует, как бы он выделял память или ещё что?
Аноним 04/11/18 Вск 21:59:45  1289785
>>1289782
Да я понял что протупил. Я вот всё равно не пойму смысл while(i < *--k). Что будет если оно вернёт false? Цикл ведь дальше пойдет?
Аноним 04/11/18 Вск 22:01:56  1289786
>>1289785
Если он вернёт false это значит что он нашёл новую цифру высшего порядка и теперь будет её ставить на место
Аноним 04/11/18 Вск 22:03:53  1289789
>>1289786
Не пойму как он это будет делать. Вот если стрелочками показать ну или написать просто то какой код будет исполнятся если вернется фолс? Если тру то цикл просто пойдет дальше выходит.
Аноним 04/11/18 Вск 22:07:45  1289790
>>1289789
Если он тру то он декрементит k и больше ничего не делает, если он фолс то выполняется свап и реверс и ретурн тру, новая пермутация найдена
Аноним 04/11/18 Вск 22:09:44  1289792
>>1289790
Вооооо. Спасибо большое. Все части кода я вроде более-менее понял. Сейчас будет свободных часов 5 впереди, буду сидеть разбираться пока не смогу написать аналогичный алгоритм сам. Какой-то очень адекватный анон пошёл.
Аноним 05/11/18 Пнд 00:01:42  1289842
Всем здрасьте. Хочу разобраться с литералами. Вот считывать сколь угодно длинные строки я умею, а как считывать сколь угодно длинные числа? В какие переменные их можно положить и как?
Аноним 05/11/18 Пнд 10:39:00  1289963
>>1289842
В текстовые! А потом или ручками или библиотекой считать по правилам символьной арифметики.
Аноним 05/11/18 Пнд 12:30:05  1290004
>>1289963
Не очень понял, но предлагается написать что-то типа
my_long_int(const string num)???
А как такая конструкция будет считывать записи типа
my_long_int mli = 1234 ???
И еще вопрос, попробовал скомпилировать, плюсы вообще не хотят работать с числами, в которых много знаков.
Аноним 05/11/18 Пнд 12:38:50  1290007
>>1286166
>https://stepik.org/course/7

Сейчас прохожу https://www.coursera.org/learn/c-plus-plus-white/
В целом курс для новичка сложноват.
Аноним 05/11/18 Пнд 13:23:31  1290022
>>1290004
>попробовал скомпилировать, плюсы вообще не хотят работать с числами, в которых много знаков
????????????????????????
????????????
?????????????????????????????????????????
??????
Аноним 05/11/18 Пнд 13:57:09  1290055
>>1290022
Короче вопрос такой. Могу ли я поймать в какую-то переменную число из 60 символов и если могу то в какую максимально примитивнуюпеременную? В смысле там есть реализация в бусте длинной арифметики, но я что-то не смог найти конструктор этих чисел и посмотреть во что там собственно ловят.
Аноним 05/11/18 Пнд 14:04:53  1290061
>>1290055
gmplib.org
Аноним 05/11/18 Пнд 14:09:04  1290063
>>1290061
Что это? Внешняя библиотека? Мы же разговор про встроенные в плюсы штуки ведем.
Аноним 05/11/18 Пнд 14:13:00  1290064
>>1290063
какие штуки?
Аноним 05/11/18 Пнд 14:14:23  1290066
>>1290064
X number = 123456789012345678901234567890
Существует такой встроенный тип X или способ, как что-то подобное реализовать?
Аноним 05/11/18 Пнд 14:16:55  1290070
>>1290066
gmplib.org
Аноним 05/11/18 Пнд 14:19:50  1290073
>>1290070
Сука, я же обещал себе не заходить в этот тред поле того, как ни один человек в нем не знал, что такое ПОД-типы и какие у них особенности инициализации.
Нахуй вы вообще что-то пишите если в плюсах на уровне школьника разбираетесь?
Аноним 05/11/18 Пнд 14:23:55  1290077
>>1290073
>Кудах
Аноним 05/11/18 Пнд 14:48:56  1290088
>>1290066
Не существует. Стандарт это позволяет, но нужно реализовать компилятор с соответствующим расширением, делающим валидным литералы бесконечной длины.
Аноним 05/11/18 Пнд 14:58:24  1290091
>>1290088
Спасибо, анон.
Аноним 05/11/18 Пнд 15:12:56  1290102
>>1290066
Лучшее, что ты можешь с подобным синтаксисом - использовать какой-нибудь кастомный тип для большой арифметики и user-defined literals, чтобы конструировать из строки с цифрами число, как тут уже сказали:

struct BigInteger {
unsigned long digits;
};

BigInteger operator""_bigint(const char* value, unsigned long len) {
return { len };
}

void foo() {
BigInteger x = "123213213124512512542132213"_bigint;
}
Аноним 05/11/18 Пнд 15:35:24  1290113
>>1290102
>BigInteger x = "123213213124512512542132213"_bigint;
Не, я хочу
BigInteger x = 123213213124512512542132213
Но видимо, так сделать нельзя.
Аноним 05/11/18 Пнд 15:59:27  1290128
Как понять в qt когда надо делать delete для объекта, а когда нет? А то в руководствах нихуя не чистят после выделения памяти в куче и у меня диссонанс какой-то.
Аноним 05/11/18 Пнд 16:02:45  1290131
>>1290128
У объекта есть owner, который чистит всех у кого он числится влалельцем. Соответственно если овнер не нулевой, то чистить не надо, надо чистить только самый топовый объект
Аноним 05/11/18 Пнд 16:09:15  1290134
>>1290131
То есть QApplication и главное окошко надо почистить? А вообще что лучше использовать, .deleteLater() или православный delete free().
Аноним 05/11/18 Пнд 16:12:09  1290137
>>1287837
у всех нормальных людей процессоры с x86 архитектурой и little-endian
Аноним 05/11/18 Пнд 16:21:09  1290140
>>1290134
QApplication у тебя живет на стеке и поэтому деструктор у него вызовется сам при выходе QApplication из области видимости.
Собственно, насколько я помню, это справедливо для всех Qt-объектов
Аноним 05/11/18 Пнд 17:01:40  1290153
>>1290140
Не, ну если я сделаю QApplication* obj = new QApplication? Просто часто бывали случаи как я загружал много объектов в стэк и оверфлоу ловил.
Аноним 05/11/18 Пнд 17:39:52  1290164
>>1290153
Используй умные указатели, люк. В современном С++ сырые указатели это зашквар. В частости тут подойдет либо unique_ptr либо QSharedPointer. Но вообще загугли это, я с Qt не работал очень давно и может там есть какие-то проблемы с этим.
Аноним 05/11/18 Пнд 17:56:59  1290170
>>1290164
вся суть, пациент плавает вообще в основах, а ему советуют использовать умные указатели как панацею
Аноним 05/11/18 Пнд 18:16:28  1290180
>>1290170
По-твоему для использования умных указателей нужно сдать экзамен и получить диплом?
Как правило это сорокалетние старперы так рассуждают, которые привыкли срать new и delete везде, вместо того, чтобы этого не делать.
>как панацею
Твои проекции.
Аноним 05/11/18 Пнд 18:47:48  1290196
>>1290170
>пациент плавает вообще в основах
Какие основы, доктор, я спрашивал про фреймворк, а не про язык.
Аноним 06/11/18 Втр 18:30:52  1290738
>>1290102
И смысл в такой обёртке?
>>1290102
Тебе в примере показали уже, что для твоих целей надо
>unsigned long
Аноним 06/11/18 Втр 18:32:10  1290740
>>1290113
>>1290738
Сюда смотри
Аноним 06/11/18 Втр 19:32:23  1290778
Анон, QML с QtQuick является заменой интерфейсов с виджетами? Стоит ли вкатиться в него и использовать вместо виджетов?
Аноним 06/11/18 Втр 19:50:48  1290791
Аноны, а бест практисы в факе не содержат в себе задач для самостоятельного решения? А то как-то так главу прочитал, через неделю только пятую часть вспомнишь. Или там нужно основные моменты уловить просто?
Аноним 06/11/18 Втр 21:14:35  1290844
>>1290791
>ТЫ, ТЫ ДУРАК ПОНЯЛ
Аноним 07/11/18 Срд 08:36:35  1291078
>>1290778
Да, это похоже на ксамль, вот только встроенные скрипты на джаваскрипте придется писать.
Аноним 07/11/18 Срд 09:14:55  1291084
>>1291078
Ну скрипты с анимацией не страшно. Больше интересен мощный зад на c++, вычисляющий белки на видеокарте, и красивый гуи
Аноним 07/11/18 Срд 09:49:39  1291092
>>1291084
Ну гуи да, реально легче писать чем на виджетах. Особенно если писать скрипты для генерации кюмла.
Аноним 07/11/18 Срд 10:45:57  1291109
Погромисты, приветствую !
Пишу свои хайворлды (лабы) в Sublime text, компилируя gcc (MinGW) под шиндой. Все классно, мне это очень удобно, приятно и легко. Ранее использовал готовые IDE и там в свойствах проджекта задавалась возможность компиляции с всеми библиотеками и прочими ресурсами в готовый файл (это RAD Studio) с MSVC все еще проще было так как регисты есть на всех пк (под шиндовс ofc), а мне их с головой.

Закинул в PATH путь до MinGW и в Build system (Sublime - Tools) выбрал С++ Single file. Компилирую по Ctrl+B, все работает, но стоит перетащить бинарник туда где не установлена MinGW естественно ничего не запускается сыпя ошибками о отсутствии библиотек.

Как можно безболезненно выйти из ситуации (устал компилировать потом отдельно в VS) ? Может достаточно просто закинуть зависимости в папку с бинарником ?

Все что указано в include:
#include "windows.h"
#include "iostream"
#include "cstring"
#include "fstream"

Не помню кстати какие что конкретно в ошибке указывалось, возможно надо еще чего добавить ?
Аноним 07/11/18 Срд 15:21:07  1291205
#include conio.h
Аноним 07/11/18 Срд 16:03:41  1291223
15415077815000.jpg (59Кб, 500x420)
>>1291109
или таскай рантаймы мингв с собой
или линкуй статически
Аноним 07/11/18 Срд 16:12:27  1291227
Сап, двач! Нужен совет. Я хочу сделать себе лёгкое логирование(в файл) работы функций. Так вот, как это сделать? Идея в том, чтобы создать макрос/функцию, которая оборачивает другую функцию, выводит значения всех её параметров, затем вызывает, а затем выводит результат. Что можно попробовать?
Аноним 07/11/18 Срд 16:13:43  1291228
>>1291227
Логировать, естесна, хочу те параметры, которые могут быть выведены в поток оператором <<

Ну а так же не должно быть пиздеца с выводом результата, если функция void.
Аноним 07/11/18 Срд 19:00:39  1291329
15414534135230.png (268Кб, 1894x1869)
>>1286157 (OP)
Джентельмены, походу только здесь могу докопаться до истины
В одном треде Сексача произошел срач между околоайтишниками: https://2ch.hk/sex/res/4884780.html один утверждал, что можно "прочитать пару книжек по С++ и алгоритмам" и уже бежать искать работу за 100-150к, даже без всякого опыта, в качестве пруфа кидался этот пикрил. В ответ ему прилетало что он хуй и чмо, но без особых аргументов
Так кто прав-то??
Аноним 07/11/18 Срд 19:06:34  1291330
>>1291329
Или тупой, или толстый троллинг, или толстый троллинг тупизной
Аноним 07/11/18 Срд 19:09:37  1291333
>>1291330
Не, серьезно, в вакансиях же указано что без опыта берут. В чем подвох?
Аноним 07/11/18 Срд 19:13:20  1291334
>>1291329
>прочитать пару книжек по С++ и алгоритмам
если просто так прочитаешь - ничего в голове не останется
а если выполнять примеры и делать упражнения, то "пара книг" у тебя годик вьябывания по 10 часов в день займет
современные кресты, это ни сишка, но даже тот же k&r будешь делать пару месяцев минимум
Аноним 07/11/18 Срд 19:16:40  1291335
>>1291333
> В чем подвох?
в том что тебя попросят на бумажке на собесе перевернуть односвязный список и на этом ты обосрешся
Аноним 07/11/18 Срд 19:27:18  1291337
>>1291333
Просто автор вакансии не указывает опыт
Аноним 07/11/18 Срд 20:29:04  1291373
Аноны, пытаюсь разобраться с сортировкой вставками, и возникло пару вопросов. В данном коде функция merge будет вызываться каждый раз, или сначала mergeSort пойдет в рекурсию? Я так понял оно не выполниться только если размер подмассива еденичный, то есть начиная с размера равного двойке оно будет сортировать. И когда оно будет мёржить? Теория звучит гораздо проще реализации
Аноним 07/11/18 Срд 20:29:22  1291374
image.png (11Кб, 496x166)
>>1291373
Код забыл
Аноним 07/11/18 Срд 21:19:00  1291386
>>1291373
Всё, в целом с алгоритмом я разобрался, но осталась пара вопросов: этот >>1291373 и где в этом коде реализуется сортировка? Я так понял цикл while выбирает одно из значений и сравнивает его с аналогичным в другой части массива, и в итоге записывает одно из них, увеличивая количество записанных чисел и указатель в одном из массивов. Но когда я рисовал алгоритм на листочке я так и не понял где оно сортирует его, если при достижении размера 1 слияние не выполняется, а при двойке оно просто их сливает. Может кто пояснить на конкретно этом коде? cpp.sh/2x7x5
Аноним 07/11/18 Срд 21:41:39  1291404
>>1291386
>Всё, в целом с алгоритмом я разобрался, но непонятно как сортировка происходит
Аноним 07/11/18 Срд 21:43:01  1291406
>>1291404
Ну бля я хуй знает как описать, там практически весь алгоритм это слияние двух подмассивов и рекурсия, а вот момент минимальный подмассив сортируется я не могу понять точнее найти
Аноним 07/11/18 Срд 21:49:14  1291411
>>1291373
>сортировкой вставками
>функция merge
Ты ничего не путаешь, пацанчик?
Аноним 07/11/18 Срд 21:50:38  1291413
>>1291411
Слиянием конечно, не заметил как-то.
Аноним 07/11/18 Срд 21:51:20  1291416
>>1291406
В мерже, дятел
Аноним 07/11/18 Срд 21:52:12  1291417
>>1289504
Удвою. Наконец-то понял мув семантику, форвард-хуёрвард, ссылки все эти, разобрался с кастами, осознал разницу между деклтупе и авто.
Аноним 07/11/18 Срд 21:55:22  1291419
image.png (54Кб, 1052x435)
>>1291416
Та ну де ебать?
Аноним 07/11/18 Срд 21:55:40  1291420
>>1290073
>что такое ПОД-типы
На работе на мой вопрос чё это за хуйня тимлид сказал "хуй знает, наверное pairs of double", так что не будь так строг к анонам, анон.
Аноним 07/11/18 Срд 21:57:27  1291422
>>1291419
Пиздец ты тупой
Внизу дерева останется два или 3 элемента которые будут мерджится, а мерджатся они в порядке возрастания
Возьми небольшой массив и пройдись по алгоритму в уме
Аноним 07/11/18 Срд 22:00:54  1291423
>>1291420
Потому что их правильно называть сабклассы
В плюсах никто классы с типами не путает
Аноним 07/11/18 Срд 22:01:56  1291424
>>1291423
>В плюсах никто классы с типами не путает
Но по сути же класс это тип!
Аноним 07/11/18 Срд 22:02:41  1291425
>>1291423
>В плюсах никто классы с типами не путает
Алсо на сппреференс то и дело в описании сбиваются с классов на типы и наоборот, так что не всё так однозначно.
Аноним 07/11/18 Срд 22:03:17  1291426
>>1291424
Пиздуй в сикптред к аутистам
Аноним 07/11/18 Срд 22:04:10  1291427
>>1291422
Сейчас пройдусь, только ответь на первый вопрос пожалуйста. Сначала функция сама себя вызовет, а потом только будет мёржить? Выходит оно сначала 2+2 сложит, потом 4+4 и по возрастанию?
Аноним 07/11/18 Срд 22:05:52  1291429
>>1291373
>сортировкой вставками
Это точно?

>>1291406
Подозреваю, всё происходит при вызове merge(ar, size1, size2); кода то нет
Аноним 07/11/18 Срд 22:06:06  1291430
>>1291427
1+1, потом еще один 1+1, потом 2+2
Это рекурсивный алгоритм, поэтому сложность получается nlogn
Аноним 07/11/18 Срд 22:07:07  1291431
>>1291426
Ну не стукай, братишка, все ж мы люди.
Аноним 07/11/18 Срд 22:07:29  1291432
image.png (1Кб, 126x24)
>>1291430
Оно разве до 1 дойдет? Там ведь если размер равен 1 то return. Если оно с еденицы складывать начинает то сортировка понятна.
>>1291429
Кинул же в том посте еще
Аноним 07/11/18 Срд 22:08:23  1291433
>>1291427
Можешь посмотреть визуализации сортировок на ютубчике.
Аноним 07/11/18 Срд 22:09:15  1291434
>>1291432
Что-то не верится, что понятно
Аноним 07/11/18 Срд 22:10:34  1291435
>>1291431
Ладно, извиняюсь, был неправ
Аноним 07/11/18 Срд 22:12:59  1291437
image.png (39Кб, 792x645)
>>1291434
Ну вот как-то так выходит, верно? АААА блять, оно же сначала разделит массив на два, а потом в рекурсии проверит. Спасибо аноны, выручаете, как всегда.
Аноним 07/11/18 Срд 22:28:28  1291442
>>1291223
> рантаймы мингв с собой
Так как определить что конкретно таскать ?
Аноним 07/11/18 Срд 23:27:12  1291490
Эй, дегенераты с ПОД типами:
> A Plain Old Data Structure in C++ is an aggregate class that contains only PODS as members, has no user-defined destructor, no user-defined copy assignment operator, and no nonstatic members of pointer-to-member type. Greater detail can be found in this answer for C++98/03.

>>1291442
http://www.heaventools.ru/pe-explorer.htm
Этим чтоли посмотри. Ты куда вкатываешься вообще: в сиспрограмминг или фронтэнд с портфолями?
Даже без всего этого можешь тупо пытаться смотреть какие длл требует и добавлять в папочку (костыли из костылей костыльных)
Аноним 07/11/18 Срд 23:29:40  1291494
15415922319160.png (251Кб, 580x798)
Типичный программист на Цэ Плюз Плюз
Аноним 07/11/18 Срд 23:33:13  1291498
>>1291490
>Requirements
Either:
a scalar type;
a class type (class or struct or union) that:
is a trivial type;
is a standard layout type;
has no non-static members that are non-POD;
an array of such type.
Далеко не только то, что ты описал, а вообще к чему ты это? Я как раз и писал, что даже тимлид не знал, что такое pod, говорит pairs of doubles.
Аноним 07/11/18 Срд 23:36:48  1291502
>>1291498
На всякий случай scalar это possibly cv-qualified arithmetic, pointer, pointer to member, enumeration, or std::nullptr_t type, другими словами с под типами гораздо чаще сталкиваетесь, чем думаете.
Аноним 07/11/18 Срд 23:40:17  1291505
>>1291498
Я всё к тому что проведя очень много времени за всем этим вычитыванием остаешься в ситуации когда даже с сраной джава макаки требуют меньше чем с тебя за большие деньги. Нахуй так жить. Перекатываюсь
Аноним 07/11/18 Срд 23:42:52  1291506
>>1291505
Да я не провожу много времени, просто столкнулся в реквайрментсах с POD типами, спросил, получил ответ про пары даблов, решил загуглить. Я не какой-то там книжный червь. Как раз про то и говорю, что не то, что аноны с двача, чувак с дохера годами опыта понятия не имел что это.
Аноним 07/11/18 Срд 23:42:55  1291507
>>1291505
Лучше блядь грузчиком в ашане или тележки в ленте катать чем быть анальным рабом манагеров
Аноним 07/11/18 Срд 23:44:39  1291510
>>1291420
Мой первый пост если что >>1291506
Аноним 07/11/18 Срд 23:53:13  1291514
любая офисная работа лучше работы грузчиком или вообще работы в магазине
ты, наверное, просто не был на дне, не вьябывал на погрузке, не стоял в магазе в зале или на кассе, не работал в цеху на заводах, даже по студенчеству
и тебе не с чем сравнить
Аноним 08/11/18 Чтв 00:06:53  1291519
>>1291514
Я огороды перекапывал еще ДО студенчества и норм было - попроще чем мозгоебство в этих ваших конторах с дегенератами.
Аноним 08/11/18 Чтв 00:07:41  1291520
>>1291490
Да, через манифесты это еще тот костыль. Никуда я не вкатываюсь, каким - то местом попал в местный универ мухосранска на ОТи погромист специальность (ПИ), сам я не погромист ниразу, точнее писал много чего и были времена действительно веселый,даже банчил своими продуктами. Но я к этому перегорел еще до 20 - ти лет и это уже далеко не то что мне нужно ин лайф. Соответственно ВУЗ кончаю так сквозь пальцы чтобы маму не обижать. Там постоянно что - то погромировать надо, но, в основном основы основ (то что я описал в инклуд это максимум что может понадобится) максимум ООП какой - нибудь. Я уже не могу терпеть всякие IDE, мне чистый компилятор и текст эдитор за глаза, но, свои програмки я должен демонстрировать в вузе, где они не открываются. Чтобы начали открываться приходится в стужии финал компилировать, но это иногда черевато переделыванием половины кода нахуй. Узнать какие библиотеки требует заранее я тоже не могу. Неужели не предусмотрен вариант чтобы все зависимости в бинарник сами запоковались ну или в папку копирнулись. Может можно скормить бинарник линкеру там или компоновщику. Я хз как параметры компиляции в стандартном пресети билда саблайма менять.
Аноним 08/11/18 Чтв 00:08:14  1291521
>>1291519
Сравнил огороды и грузчиком. Я в порту грузчиком работал, офис после этого словно в рай попал.
Аноним 08/11/18 Чтв 00:16:16  1291524
15409821234120.jpg (63Кб, 600x864)
>>1291521
Сравнил грузчика в порту с пинанием хуев с тележками. Эти сраные 8 часов с офисными дегенератами подрывает здоровье посильнее физического труда.
Аноним 08/11/18 Чтв 00:22:59  1291526
>>1291520
Замени MinGW на вот это: http://tdm-gcc.tdragon.net/
Оно по дефолту делает статик (якобы)
Или ищи ключи к статической сборке MinGW
Аноним 08/11/18 Чтв 00:29:27  1291530
>>1291526
У MinGW посмотри флаги -static-libgcc -staticlibc++ -static
Аноним 08/11/18 Чтв 20:11:56  1291896
<code>#include <iostream>
#include <string>

using namespace std;

class name_pairs {
public:
name_pairs(string nn, int aa):n{nn},a{aa}
{}
name_pairs():n{default_pairs().name()},a{default_pairs().age()}
{}
const name_pairs& default_pairs()
{
static name_pairs d{"def name",0};
return d;
}
string name () const {return n;}
int age () const {return a;}

private:
string n;
int a;
};

ostream& operator<<(ostream& os, const name_pairs& d)
{
return os<<"name: "<<d.name()<<" age:"<<d.age();
}
int main()
{
name_pairs dd;
cout<<"вот вам хуй"<<dd;
return 0;
}
</code>
Аноним 08/11/18 Чтв 20:18:47  1291900
>>1291896
>const name_pairs& default_pairs()
>{
>static name_pairs d{"def name",0};
>return d;
>}

Проиграл
Аноним 08/11/18 Чтв 20:21:04  1291903
>>1291900
С чего? Я просто с пгт.
Аноним 08/11/18 Чтв 20:53:57  1291925
>>1291903
Надо писать return std::move(d)
Аноним 08/11/18 Чтв 21:39:39  1291954
>>1291925
Зачем? В итоге же && станет &, не?
Аноним 08/11/18 Чтв 21:46:54  1291958
Хочу запилить децентрализованный торRент с возможность воспроизведения видео в процессе скачивания.

С чего начать? Boost ASIO + vlc? Насколько подъёмно?
Аноним 08/11/18 Чтв 21:54:44  1291963
15416582923530.jpg (23Кб, 313x286)
>>1291954
Не слушай наркоманов
Аноним 08/11/18 Чтв 22:46:31  1291991
Почему std::map insert требует pair? Это же лишняя аллокация. Погуглил и пишут что есть emplace, но только в C++11. Почему нельзя было сделать это в ранних версиях? Просто метод с двумя параметрами (ключ и значение), а не один параметр-пара.
Аноним 08/11/18 Чтв 22:56:59  1291995
>>1291991
Алсо, есть ли какие-то более менее стандартные реализации concurrent map для плюсов? Итерироваться не нужно, только вставка-удаление. Или только мьютекс вручную?
Аноним 08/11/18 Чтв 23:19:30  1292005
>>1291995
>стандартные
Серебряной пули нет, отталкивайся от потребностей.
Например, можешь взять одну из реализация cuckoo.
Аноним 08/11/18 Чтв 23:21:23  1292006
>>1291991
Какая аллокация, ты не пишешь new и пара выделяется на стеке точно так же, как выделялись бы два параметра
Аноним 08/11/18 Чтв 23:30:41  1292010
>>1292006
А внутри там нет new?
Аноним 09/11/18 Птн 00:36:38  1292032
>>1291995

если хочешь чтобы все это дело было более-менее рабочим и из коробки нахаляву, то да

с++11 + std::map + std::mutex
c++11 гарантирует thread safe для map на операции чтения, а мьютексом синхронизируешь операции изменения

lock free вообще любые контейнеры еще пока, имхо, сырые
Аноним 09/11/18 Птн 00:41:38  1292034
>>1292032
вернее, относительно легко делается lock-free стек и очередь, что собственно и сделано в boost
но реализация хорошего lock-free map - адски сложное дело
Аноним 09/11/18 Птн 02:03:11  1292063
>>1292032
не слушайте этого любителя андифайнед бихевиоров. Shared Mutex для этого впилили спецом
Аноним 09/11/18 Птн 02:40:38  1292073
>>1292010
Нет, в С++ переменые умеют храниться на стеке, а не указывать куда-то в кучу, как в случае управляемых языков. Поэтому выделение памяти под std::pair будет просто как для любой локальной переменной. Вызов конструктора компилятор заинлайнит и поэтому тут вообще никаких проблем нет.
Зато сам map хранит свои ноды в куче, так что там аллокаций будь здоров, без pool-аллокатора это крайне тормозная штука, не рекомендую. Но заменой параметров у insert ситуацию не поправишь.
Аноним 09/11/18 Птн 02:40:51  1292074
>>1292063
>Shared Mutex
дык вроде спрашивающий хотел активно писать-изменять, а не читать..
Аноним 09/11/18 Птн 03:02:54  1292077
>>1292073
ну это понятно, что для мапов и списков вместо аллокатора по умолчанию по идее лучше взять кастомный, основанный на пуле, например из буста пул взять
только вот посмотреть бы как на практике это реализуют в работающих проектах
Аноним 09/11/18 Птн 09:56:42  1292130
>>1291991
>Почему нельзя было сделать это в ранних версиях?
Забыли.
Аноним 09/11/18 Птн 17:40:13  1292409
image.png (49Кб, 1059x328)
image.png (23Кб, 405x237)
Аноны подскажите пожайлуста, почему первое считывание не работает? Дальше все хорошо идёт, а в первой проблема. Структуры использовать нельзя, препод заебал уже
Аноним 09/11/18 Птн 17:52:22  1292420
>>1292409
Инпут в первом кейсе терминируется длиной, а не делиметером
Увельчь лимит до нормального значения(и размер буфера тоже)
Аноним 09/11/18 Птн 17:58:20  1292424
>>1292420
По заданию не более 12 букв во всех трёх строках. Но за помощь спасибо. Не заметил как-то. Алсо, тут еще одна проблема. Программа зависает во всех случаях, даже если я просто ввожу значения из файла во входной поток. Дело в том что оно не видит где конец файла и пытается считать дальше, или в чём? Код приложу сейчас. cpp.sh/3zvej
Аноним 09/11/18 Птн 17:59:39  1292425
>>1292424
Букв 12 + байт на нуль терминатор
Пользуйся стрингом
Аноним 09/11/18 Птн 18:02:42  1292428
>>1292424
У тебя только 9 строчек, а ты пытаешься считать 10
С такими мудацкими вопросами сам ебись, умнее будешь
Аноним 09/11/18 Птн 18:05:29  1292430
>>1292425
С радостью бы использовал шаблонные классы, но препод сказал что тот, кто будет использовать СТЛ до его изучения получит по ебалу, а его работу не примут. В чём тогда смысл учить наперед я не понимаю. Но учу.
>>1292428
Спасибо, извиняюсь за невнимательность.
Аноним 09/11/18 Птн 23:40:47  1292587
>>1290007
отпишись как закончишь курс, в шапку добавим насколько хорош материал
Аноним 09/11/18 Птн 23:42:32  1292588

в шапку треда видео с питерского крестового митапа

https://www.youtube.com/playlist?list=PLtDc3cNvuhAIU_LRYg6xFaJV_95Kkt79n
Аноним 09/11/18 Птн 23:46:21  1292589

в шапку треда:
"шаблоны с++, второе издание" джосаттиса и вандервуда издали на русском
книга охватывает и с++17
есть в сети в электронном виде

имхо, вместе с майерса последней книжкой будет самое наиполезнейшее чтение из книг сейчас

Аноним 10/11/18 Суб 00:01:57  1292599
>>1292589
> есть в сети в электронном виде
https://vk.com/doc7608079_480845688
Аноним 10/11/18 Суб 11:43:20  1292727
>>1292589
>издали на русском
Русикобляди совсем охуели
Потом удивляются что им по 500 баксов платят
Аноним 10/11/18 Суб 11:49:25  1292730
>>1292588
Чем это лучше cppcon и проч?
Аноним 10/11/18 Суб 14:50:21  1292834
Анончик, что делать если в if мне надо сделать сразу два действия? Например

if(ost==1) {x1=x1*10+ost; s1=s1+1;}

И else обязательно ли использовать, если он не нужен?
Аноним 10/11/18 Суб 15:14:25  1292855
Как в visual studio возвести число в степень? Просто 2^2 не работает.
Аноним 10/11/18 Суб 15:26:11  1292864
Сап. Есть такая (стандартная?) функция exit(). Нужно ли ей такую строку прописывать #include <cstdlib> ? Убрал эту строку, вроде пашет. Книга по которой изучаю наверно уже старая. Если не собираюсь использовать старый компилятор можно уже писать без этой строчки?
Аноним 10/11/18 Суб 15:36:19  1292879
>>1292834
Лол
Не обязательно
Аноним 10/11/18 Суб 15:37:11  1292881
>>1292855
http://www.cplusplus.com/reference/cmath/
Аноним 10/11/18 Суб 15:38:04  1292883
>>1292881
Так что там насчёт ^ в визуал студио?
Аноним 10/11/18 Суб 15:40:17  1292886
>>1292883
Не работает, потому что ^ это xor
В спп нет оператора возведения в степень
Аноним 10/11/18 Суб 15:44:15  1292890
>>1292864
stackoverflow.com/questions/35910043/why-does-rand-compile-without-including-cstdlib-or-using-namespace-std
Вам в ваших ебучих шарагах надо курс по гуглению давать, с экзаменами
Аноним 10/11/18 Суб 15:54:18  1292898
>>1292886
Как тогда в C выглядит операция 2^2?
Аноним 10/11/18 Суб 15:56:16  1292899
>>1292898
pow(2, 2)
Аноним 10/11/18 Суб 15:58:18  1292901
>>1292899
Чистый visual C++ Express воспринимает pow как переменную. Ещё варианты?
Аноним 10/11/18 Суб 16:04:21  1292909
>>1292901
cmath подключи
Аноним 10/11/18 Суб 16:08:26  1292912
>>1292909
Нельзя, препод запрещает.
Аноним 10/11/18 Суб 16:22:27  1292922
>>1292912
пиши свой pow циклом
Аноним 10/11/18 Суб 16:55:04  1292934
>>1292855
https://pastebin.com/XKfwfi19
Аноним 10/11/18 Суб 16:59:54  1292937
image.png (70Кб, 1036x741)
image.png (92Кб, 1197x583)
Крестобояре, внимание, вопрос: почему при вводе символа вместо числа показанный фрагмент кода впадает в истерию и начинает циклически перезапускать код не спрашивая ввода значения через scanf?

Аноним 10/11/18 Суб 17:09:56  1292942
>>1292587
Я проходил его, хорош достаточно для того, чтобы устроиться крестоджуном на галеру. Работаю уже полгода.
Аноним 10/11/18 Суб 17:13:22  1292944
>>1292922
Можно рекурсией очень быстрое возведение делать.
Аноним 10/11/18 Суб 17:19:56  1292948
>>1292937
>unsigned int
>%d
Аноним 10/11/18 Суб 17:20:01  1292949
>>1292937
var00 - не инициализированная переменная.
Наверное scanf не извлекает все символы.
И если ты уже юзаешь С ф-и, тоюзай printf вместо cout
Аноним 10/11/18 Суб 17:49:39  1292966
Без имени-1.png (249Кб, 1920x1080)
>>1292944
Реализовал то что у тебя на пике:
70 строк кода вместо 20 с обычным циклическим алгоритмом умножения

Аноним 10/11/18 Суб 17:52:30  1292969
image.png (10Кб, 572x93)
>>1292949
>>1292948

Не тот скрин отправил, сейчас исправлюсь. Алсо, scanf юзал только потому что он помог мне избавиться от этого циклического говна в предыдущем фрагменте, когда я заменил им cin. Но тут почему-то не сработало.

Аноним 10/11/18 Суб 18:00:44  1292975
>>1292966
не хватает комментариев типа "это открывающая скобочка" "а это закрывающая"

Аноним 10/11/18 Суб 18:06:22  1292978
image.png (378Кб, 1920x1080)
>>1292975
Просто увидел эту гифку и решил попробовать сделать так же, чисто ради интереса, да и помогать разбираться так вроде бы проще будет
Аноним 10/11/18 Суб 18:06:54  1292981
15418613795060.png (264Кб, 1920x1080)
>>1292966
Почему это компилируются?
Аноним 10/11/18 Суб 18:08:26  1292982
Без имени-1.png (99Кб, 1444x594)
>>1292949
>>1292948

Вот так это все выглядит сейчас. Поправил спецификатор формата, инициализировал переменную.

Слева фрагмент с (вроде-бы) таким же принципом работы просто выдает ошибку, справа же вылетает в ту бесконечную хуйню
Аноним 10/11/18 Суб 18:09:30  1292983
image.png (80Кб, 892x580)
>>1292981
Знаю, уже исправил. Кинул сразу после того как дописал, не проверяя на компилируемость
Аноним 10/11/18 Суб 18:11:05  1292985
>>1292730
имхо, не лучше, но на уровне
лично мне одинаково интересно смотреть доклады и у них и у нас
второе, признаюсь, мне не хватает знаний английского языка, когда докладчики начинают объяснять какие-то новые концепции, вводимые в язык, с которыми я еще не сталкивался
проще сначала послушать человека который говорит о том же но на русском языке
Аноним 10/11/18 Суб 18:11:44  1292986
>>1292983
А если степень равна 1?
Аноним 10/11/18 Суб 18:15:49  1292989
>>1292986
>>1292981

Предпоследняя и последняя строки
Аноним 10/11/18 Суб 18:25:25  1292993
image.png (15Кб, 1003x131)
Всем сап. Есть задание: описать в методах класса два конструктора. Один должен инициализировать поля единицами, другой - заданным набором значений.
Как сделать так, чтобы по выбору пользователя (1 пик) >Введите 1, чтобы..
У меня срабатывал конструктор, заполняющий произв. значениями, а при нуле - единицы.
Пытаюсь запихнуть всё это в операторы ветвления, но после этого у меня перестают определяться методы из этого класса. Как быть?
Весь код: https://pastebin.com/8uBFNi4f
Аноним 10/11/18 Суб 18:37:37  1293004
2342134124.jpg (45Кб, 367x420)
>>1292989
Привет, тож в этом году в колледж поступил
Аноним 10/11/18 Суб 18:48:23  1293012
>>1292993
Может добавить во второй конструктор еще один аргумент какой-то типо true?
мимо-вкатывальщик
Аноним 10/11/18 Суб 18:49:10  1293013
Анон, почему когда я в visual studio ввожу 1234567890 в этe программу, то вместо 9876543210 я получаю 1286608618?
Программа должна выстраивать из цифр вводимого числа максимально большое число. Подобное наблюдается при вводе любого числа, в котором больше 10 цифр.

#include <stdio.h>
int main()
{
int n, ost, x1=0, x2=0, x3=0, x4=0, x5=0, x6=0, x7=0, x8=0, x9=0;
int s0=1, s1=1, s2=1, s3=1, s4=1, s5=1, s6=1, s7=1, s8=1, s9=1;
scanf_s("%d", &n);

while(n>0)
{
ost=n%10;
n=n/10;

if(ost==0) s0=s010;
if(ost==1) {x1=x1
10+ost; s1=s110;}
if(ost==2) {x2=x2
10+ost; s2=s210;}
if(ost==3) {x3=x3
10+ost; s3=s310;}
if(ost==4) {x4=x4
10+ost; s4=s410;}
if(ost==5) {x5=x5
10+ost; s5=s510;}
if(ost==6) {x6=x6
10+ost; s6=s610;}
if(ost==7) {x7=x7
10+ost; s7=s710;}
if(ost==8) {x8=x8
10+ost; s8=s810;}
if(ost==9) x9=x9
10+ost;
}
n=n+((((((((((((((((x9s8)+x8)s7)+x7)s6)+x6)s5)+x5)s4)+x4)s3)+x3)s2)+x2)s1)+x1)*s0;
printf("%d", n);
scanf_s("%d", &n);
return 0;
}


Аноним 10/11/18 Суб 18:50:14  1293015
>>1293013
Извиняюсь, вот нормальный код.
Аноним 10/11/18 Суб 18:50:46  1293016
>>1293013
Скорее всего у тебя проблема в том, что инт может хранить значения не больше 2^31. Попробуй тип на какой-то long long поменять.
Аноним 10/11/18 Суб 18:51:53  1293017
>>1293013
pow(Говнокод,+inf)
Аноним 10/11/18 Суб 18:51:56  1293018
>>1293016
А почему long два раза? Один раз нельзя? Просто я только начал учить языки программирования.
Аноним 10/11/18 Суб 18:52:53  1293019
>>1293017
Библиотеки какие там подключены видишь? То-то же.
Аноним 10/11/18 Суб 18:53:37  1293020
>>1293018
Это вроде самый большой тип для хранения данных. Можешь unsigned int попробовать, мне лень считать.
Аноним 10/11/18 Суб 18:55:05  1293022
image.png (243Кб, 724x487)
>>1293018
Хотя нет, не хватит. Вот тебе табличка.
Аноним 10/11/18 Суб 18:55:47  1293023
15380564146220.png (121Кб, 736x736)
>>1293015
>вот нормальный код
Аноним 10/11/18 Суб 18:57:40  1293024
15416582923530.jpg (23Кб, 313x286)
>>1293019
>Библиотеки какие там подключены видишь? То-то же.
преподу своему так говорить будешь, когда он это повторит
Аноним 10/11/18 Суб 18:57:53  1293025
>>1293023
А ты можешь только с stdio.h сделать лучше?
Аноним 10/11/18 Суб 19:02:48  1293029
>>1293019
а у тебя массивы из языка тоже удалили?
Аноним 10/11/18 Суб 19:03:23  1293030
>>1293029
Да, это задание нужно сделать без массивов.
Аноним 10/11/18 Суб 19:05:44  1293031
15416961762680.jpg (158Кб, 811x811)
>>1293030
тогда пиздец
Аноним 10/11/18 Суб 19:05:45  1293032
>>1293030
Еба, таких условий даже нам в шараге не дают. Компиляторами хоть пользоваться можно, или свой писать?
Аноним 10/11/18 Суб 19:06:35  1293033
>>1293032
вывод в консоль записью в видеобуфер
Аноним 10/11/18 Суб 19:08:27  1293037
>>1293032
У того препода такой способ обучения, заставляет решать задачи лишая нас некоторых упрощающих решение возможностей, заставляя искать иной выход из поставленной ситуации.
Аноним 10/11/18 Суб 19:09:24  1293039
>>1293025
Где учишься?
Аноним 10/11/18 Суб 19:09:52  1293040
>>1293037
ваш препод дегенерат с двача
Аноним 10/11/18 Суб 19:10:00  1293041
>>1293039
ИКТИБ ЮФУ Таганрог, а препод Хусаинов.
Аноним 10/11/18 Суб 19:11:24  1293042
>>1293041
Задание полное дай
Аноним 10/11/18 Суб 19:12:03  1293044
15418494741220s.jpg (7Кб, 170x170)
Хусаинов Наиль Шавкятович запрещает своим ученикам использовать массивы
Аноним 10/11/18 Суб 19:12:54  1293045
>>1293030
А указателями жонглировать тоже нельзя?
Массивы это же сахарок.
Аноним 10/11/18 Суб 19:13:05  1293046
>>1293044
Да там можно и без массивов
Пусть даст задание со всеми условиями
Аноним 10/11/18 Суб 19:13:55  1293048
>>1293046
уверен в том что можно, но звучит круто
Аноним 10/11/18 Суб 19:14:15  1293049
>>1293042
Вводится число (n<=10^15), надо написать такую программу, которая меняет цифры введённого числа местами, образуя максимально возможное число из этих цифр. Не слово в слово, но как запомнил. Заданий было несколько, на лабе не решил ни одного, только одно сейчас дома осилил.
Аноним 10/11/18 Суб 19:15:35  1293050
>>1293049
Можно и без массивов.

Байтоёбство как оно есть.
Аноним 10/11/18 Суб 19:21:41  1293054
43214123423.jpg (26Кб, 259x342)
>>1293050
>Байтоёбство как оно есть.
Пошел на хуй из треда

>>1293049
Забирай

МимоХусаинов
Аноним 10/11/18 Суб 19:22:53  1293055
>>1293054
Ты забыл самое главное, нельзя использовать ничего кроме stdio.h, это одно из условий задания.
Аноним 10/11/18 Суб 19:23:43  1293056
>>1293055
Здесь ничего инеиспользуется

Но я максимальное число не построил, лол
Аноним 10/11/18 Суб 19:25:54  1293061
>>1293049
Ну здесь Хусаиновым ебанутым надо быть, чтобы без массивов делать
Аноним 10/11/18 Суб 19:27:31  1293063
image.png (34Кб, 510x426)
>>1292982
Я же писал что сканф оставляет лишнюю хуйню в потоке. Надо stdin очищать sclear_stdin на пикриле
Аноним 10/11/18 Суб 19:33:18  1293069
>>1292966
Лол, зачем так? 4 строчки
func pow(x, n)
{
if n = 0 return 1
else if n is odd return x умножить на pow(x, n/2)^2
else return pow(x, n/2)^2
}
Аноним 10/11/18 Суб 19:36:04  1293071
>>1293069
"умножить на" замени на звездочку, ^2 замени на дважды повторённое умножение, а то мало ли не понял.
Аноним 10/11/18 Суб 19:36:43  1293072
>>1293055
https://ideone.com/brGzbI
Продолжай деградировать
Аноним 10/11/18 Суб 19:37:34  1293073
>>1293072
Но это тоже говнокод
Аноним 10/11/18 Суб 19:38:13  1293075
15418494741220s.jpg (7Кб, 170x170)
>>1293073
И привет Наилю Хусаинову
Аноним 10/11/18 Суб 19:40:47  1293079
Anime Chan.jpg (50Кб, 500x732)
>>1293063
Блять, мерси, ты лучший
Аноним 10/11/18 Суб 19:41:31  1293080
>>1293071
У такого алгоритма если че О(логн) комлпексити всего, а у наивного О(н), фил зе дифференс как говорится мхмхехе.
Аноним 10/11/18 Суб 19:41:43  1293081
>>1293069
Потому что я сижу дома вторую неделю и мне нехуй делать, алсо, тренируюсь в написании функций
Аноним 10/11/18 Суб 19:42:32  1293082
>>1293081
Типа это не косяк, а так и было задумано? Ну ок тогда.
Аноним 10/11/18 Суб 19:42:36  1293083
>>1293080
Блять, я новый ньюфаг, переведи плес
Аноним 10/11/18 Суб 19:43:22  1293084
>>1293083
Быстрее работает.
Аноним 10/11/18 Суб 19:43:23  1293085
>>1293083
логарифмическая сложность в гугле
Аноним 10/11/18 Суб 19:45:47  1293087
>>1293083
Например, если тебе нужно возвести х в 1024 степень, то по первому алгоритму ты совершишь 1024 действия, а по второму 10.
Аноним 10/11/18 Суб 19:46:44  1293088
>>1293072
У тебя вообще ответ не выводится.
Аноним 10/11/18 Суб 19:47:16  1293089
>>1293085
>>1293087

Спасибо
Аноним 10/11/18 Суб 19:47:34  1293091
>>1293087
однако ты быстро словишь выход за допустимые границы числа на больших степенях - а потому сомневаюсь в дрочке этого алгоритма
Аноним 10/11/18 Суб 19:48:23  1293092
>>1293072
>>1293088
использую Visual Studio 2010 Express, если что. Там ответ к твоему коду не выводится. Почему?
Аноним 10/11/18 Суб 19:48:42  1293093
>>1293091
Ну он же не привязан к С++, в каком-нибудь питоне нет ограничений по сути на длину числа.
Аноним 10/11/18 Суб 19:50:12  1293094
image.png (1Кб, 119x143)
>>1293092
лiл
Аноним 10/11/18 Суб 19:50:27  1293095
>>1293091
Да и вообще, а если тебе просто нужно 1000 сравнительно небольших чисел возвести в степень по очереди. Не, один хуй имеет смысл.
Аноним 10/11/18 Суб 19:52:20  1293097
>>1293095
>Да и вообще, а если тебе просто нужно 1000 сравнительно небольших чисел возвести в степень по очереди. Не, один хуй имеет смысл.
Вот про это соглашусь, а про питухон - там разве числа неограниченной величины? (без decimals)
Аноним 10/11/18 Суб 19:56:17  1293098
>>1293097
Да, в третьем нет ограничений на int.
Аноним 10/11/18 Суб 20:04:56  1293103
>>1293092
https://ideone.com/brGzbI
Наиль, попробуйте так
Аноним 10/11/18 Суб 20:11:14  1293106
>>1293094
Я имею в виду, что пытался скомпилировать твой код через VS 2010 Express, ввёл число и получил хуй.
Аноним 10/11/18 Суб 20:14:28  1293108
>>1293106
>Я имею в виду, что пытался скомпилировать твой код через VS 2010 Express, ввёл число и получил хуй.
У вас там наверное манямирок со своими манякомпиляторами, работающими по вашим же манястандартам.
Последняя версия использует те же io функции, что и твое поделие
Аноним 10/11/18 Суб 20:36:24  1293120
>>1293072
> printf для одного символа
...
Аноним 10/11/18 Суб 20:36:46  1293121
>>1293106
Ах, да, вы ж еоф в поток не шлете. Манямирок...
https://ideone.com/EjI8PI
Аноним 10/11/18 Суб 20:37:36  1293122
>>1293072
> scanf для одного char
...
Аноним 10/11/18 Суб 20:39:07  1293123
>>1293120
> printf scanf в C++ треде
> ...
Аноним 10/11/18 Суб 20:42:24  1293125
>>1293123
> имплаинг они не часть стандарта C++
Аноним 10/11/18 Суб 20:43:05  1293126
Дайте мне точное определение говнокода.
Аноним 10/11/18 Суб 20:43:40  1293127
>>1293121
>этот говнокод
Че это за хуйня? Ты ебанат? Не пиши такое.
Аноним 10/11/18 Суб 20:45:38  1293129
>>1293049
ну отсортируй да и всё. мержсорт какой-нибудь возьми.
Аноним 10/11/18 Суб 20:48:34  1293131
15415067050040.jpg (41Кб, 576x463)
>>1293127
>Че это за хуйня? Ты ебанат? Не пиши такое.
Аноним 10/11/18 Суб 20:52:21  1293133
>>1293129
По условию задания нельзя использовать ничего из C++, потому что сейчас мы проходим чистый C.
Аноним 10/11/18 Суб 20:52:29  1293134
>>1293129
>ну отсортируй да и всё. мержсорт какой-нибудь возьми.
идиома задачи: массивы не нужны
Аноним 10/11/18 Суб 21:18:21  1293149
>>1292587
там кстати сделали целую специализацию по с++ . Помимо этого курса есть еще 4. Этот самый простой.

Я бы посоветовал его проходить после прочтения половины любой книги для новичков по с++.
Аноним 10/11/18 Суб 21:24:00  1293151
15415101081050.jpg (4Кб, 228x221)
>>1293127
Для байтебов:
https://ideone.com/EjI8PI
Аноним 10/11/18 Суб 22:36:57  1293210
На С++ вообще используют фреймворки кроме графических?
мимо студент
Аноним 10/11/18 Суб 22:49:17  1293215
>>1293151
>https://ideone.com/EjI8PI
> <stdio.h>

Это не C++.
Аноним 10/11/18 Суб 22:49:34  1293216
>>1293210
Да.
Аноним 10/11/18 Суб 23:04:45  1293222
>>1293215
>Это не C++.
Наиль Шавкятович считает по другому...
Аноним 11/11/18 Вск 01:30:21  1293316
Есть по qt хороший учебник с примерами? Посоветуйте что-то чтобы не в слепую тыкаться.
Аноним 11/11/18 Вск 01:33:46  1293317
>>1293316
Марк Шлее
Примеры, вроде, в сам Qt creatore есть
Аноним 11/11/18 Вск 01:41:45  1293325
>>1293317
Благодарю.
Аноним 11/11/18 Вск 02:05:19  1293335
>>1290007
>>1293149

окей, закину в шапку следующего треда, если буду жив к тому моменту
https://www.coursera.org/specializations/c-plus-plus-modern-development
в общем, на курсере этот курс от ребят из яндекса и мифи
а на степике таки лучше курсы от cs center чем от mail.ru
Аноним 11/11/18 Вск 02:09:05  1293336
>>1293317
не марк блядь додик, а Макс Шлее
Аноним 11/11/18 Вск 02:20:00  1293340
>>1293336
Вообще похую
Аноним 11/11/18 Вск 02:27:36  1293341
>>1293335
хотя нет, не буду
coursera окуклилась и стала платной
насколько я понял
ну их
Аноним 11/11/18 Вск 03:12:59  1293353
Блять, чет сейчас сижу и сам с себя проигрываю в гiлаc

НАПИСАЛ ОВЕР 1000 СТРОК КОДА
@
ВСЕ РАБОТАЕТ
@
РЕШАЕШЬ ПРИКРУТИТЬ ЕЩЕ ОДНУ СВИСТОПЕРДЕЛКУ
@
ВСЕ РАБОТАЕТ, ПРИ ПОПЫТКЕ ИСПОЛЬЗОВАТЬ СВЕЖЕПРИКРУЧЕННОЕ - КРАШИТСЯ
@
ПЫТАЕШЬСЯ ПОЧИНИТЬ
@
ПЕРЕСТАЕТ РАБОТАТЬ ВООБЩЕ ВСЕ
@
УДАЛИЛ ВСЕ ЧТО ПРИКРУТИЛ
@
КОД ВСЁ ЕЩЕ НЕ ПОДАЕТ ПРИЗНАКОВ ЖИЗНИ, ПРИ ТОМ ЧТО СТАБИЛЬНО КОМПИЛИРУЕТСЯ
@
НАЧИНАЕШЬ ПРОЗВАНИВАТЬ, РАЗДЕЛЯЯ ПО КУСОЧКАМ
@
В ГОЛОВЕ ЕХИДНЫЙ ГОЛОС:
@
>Ну, давай разберем по частям тобою написанное. Складывается впечатление, что ты реально контуженный, обиженный жизнью имбецил.
Аноним 11/11/18 Вск 03:15:45  1293355
>>1293353
Я в таком случае удаляю объектные файлы.
Иногда помогает.
Аноним 11/11/18 Вск 03:26:47  1293357
Absolutely haram.jpg (46Кб, 531x471)
>>1293355
https://pastebin.com/4J1RXZxK

Блять, помогите, а? Где ошибка?
Аноним 11/11/18 Вск 03:27:59  1293358
>>1293357
В scanf надо передавать адрес переменной
Аноним 11/11/18 Вск 03:31:25  1293359
.png (7Кб, 977x110)
>>1293358
>>1293357
Да и вообще компилятор же должен тебя предупреждать об такой херне
Аноним 11/11/18 Вск 03:31:41  1293360
image.png (8Кб, 349x112)
>>1293358
Блять, не в том ошибка была, это я переписал неправильно.
Но спасибо за наводящий ответ, нашел

Один символ и все по пизде
А я ошибку в логике искал ~ полчаса
Аноним 11/11/18 Вск 03:33:44  1293361
Shrek Dota2.gif (1116Кб, 200x220)
>>1293359
Нихуя не предупреждает, пидорас
Компилирует, запускает, при попытке ввода крашится

DEV C++, ммм
Аноним 11/11/18 Вск 03:34:32  1293362
>>1293360
Чем тебя не устроил cin?

> Один символ и все по пизде
> А я ошибку в логике искал ~ полчаса
Не огорчайся.
Даже у сильных мира сего бывают ошибки
https://twitter.com/id_aa_carmack/status/857207449987817472
Аноним 11/11/18 Вск 03:35:14  1293363
>>1293361
Так добавь опции компилятору -Wall
Аноним 11/11/18 Вск 10:30:29  1293401
>>1293151

>>1293120
>>1293122
Аноним 11/11/18 Вск 10:53:06  1293408
>>1293401

>>1293222
Аноним 11/11/18 Вск 13:14:48  1293488
image.png (39Кб, 598x365)
image.png (18Кб, 452x275)
Может кто нибудь пояснитть что ей сука не нравится?

При этом код компилится и работает
Аноним 11/11/18 Вск 13:45:18  1293508
>>1293488
Да это иде не может твоё говно правильно распарсить
Аноним 11/11/18 Вск 14:16:34  1293529
>>1293341
Но там можно бесплатно прослушать курс. Разница только в том что ты не можешь 90% задач отправлять на проверку. А так весь материал и видео лекции бесплатен.
Аноним 11/11/18 Вск 14:46:40  1293545
Как у крестогоспод в 2к18 принято управлять памятью?
Выделять все на стеке и пусть конпелятор оптимизирует?
Ебашить везде shared_ptr? Разбавлять unique_ptr'ами?
Или, по-старинке, долго и вдумчиво new-delete, new-delete?
Аноним 11/11/18 Вск 14:48:06  1293547
>>1293545
По ситуации, универсального способа нет.
Аноним 11/11/18 Вск 14:50:04  1293549
>>1293547
Плохо. Мне как раз нужен универсальный способ, я хочу написать транслятор своего языка во что-нибудь компилируемое.
Аноним 11/11/18 Вск 14:56:00  1293552
>>1293549
Тогда делай все на умных указателях. Будет тормозить - тогда уже оптимизируй.
Аноним 11/11/18 Вск 16:04:27  1293596
>>1293549
>Мне как раз нужен универсальный способ
GC
Аноним 11/11/18 Вск 17:09:42  1293643
>>1293549
> я хочу написать транслятор своего языка во что-нибудь компилируемое.

Почему плюсы а не C или LLVM?
Аноним 11/11/18 Вск 17:20:54  1293650
Помогите написать функцию, которая принимает в себя двумерный массив и находит строку и столбец с наибольшими суммами и меняет их элементы на нули.
Алгоритм нахождения сумм и замены элементов я понимаю, но я не понимаю, как можно пропихнуть двумерный массив в функцию и как вернуть измененный массив?
Аноним 11/11/18 Вск 17:28:07  1293653
>>1293650
Бля, ну и вопросы у вас. Это всё гуглится за две минуты. Если массив динамический то прототип выглядит примерно так
int foo(int ar,int size); Чтобы потом что-то с ним делать присвой результат функции куда-то и всё.
Аноним 11/11/18 Вск 18:05:45  1293672
>>1288183
Согласен, поэтому лучше юзать с++ без библиотек в своих маня проектах.
Аноним 11/11/18 Вск 18:39:37  1293691
>>1293650
>как можно пропихнуть двумерный массив в функцию
function(^^array), где домик это звёздочка
Аноним 11/11/18 Вск 18:41:06  1293693
>>1292942
Долблюсь в зенки, я не курсеру, а
>https://stepik.org/course/7
Аноним 11/11/18 Вск 19:35:09  1293714
>>1288183
>Какое говно генерирует крестовый компилятор - это еще гадать надо.
не надо гадать
ассемблерный выход всегда можно посмотреть, вообще то
Аноним 11/11/18 Вск 21:55:44  1293817
Безымянный.png (344Кб, 2796x1032)
https://pastebin.com/uPgSexV7|

Аноны, вчерашний дебил с калькулятором на связи.
Калькулятор я доделал и теперь мне приспичило запилить себе консольную змейку.
Отписал я значит кусок кода, решил запустить, он скомпилился (ВНЕЗАПНО с первого раза) и дальше предлагает ПОЖАЛУЙСТА ПОСОСАТЬ ПИСОС

Что делать, аноны?

Алсо, на запрос адреса в printf-е внимание не обращайте, знаю что имя массива указывает на его первый элемент вся хуйня, уже пофиксил.

Все равно не работает

На комментарии тоже можете внимания не обращать, я это чтобы вслух все не проговаривать, иначе доебут спасибо боженька за аутизм не обманул
Аноним 11/11/18 Вск 22:02:16  1293823
>>1293041
Скажи спасибо, что у тебя Хусаинов ведет.
Он самый нормальный препод по проге во всем радике, как мне кажется
Аноним 11/11/18 Вск 22:06:43  1293827
>>1293044
Суть в том, что Хусаинов любит олимпиадки и часто дает олимпиадные задачи.
В частности, в контестах для младших школьников есть много задач, которые нужно решать без условий, циклов и массивов - вот он их и дает.
Аноним 11/11/18 Вск 23:24:18  1293875
15419660153850.jpg (68Кб, 292x306)
>>1293827
Это всё хорошо, но олимпиадцы потом в большинстве своем никому не нужны.
Аноним 11/11/18 Вск 23:36:30  1293887
>>1293817
Типа сейчас змейка выползает, ползет вправо и заползает. И повторить?
- У тебя строки на '\0' заканчиваются?
- Цикл for принципиально не юзаешь?
- У тебя куча магических чисел.
Аноним 12/11/18 Пнд 00:05:22  1293897
image.png (6Кб, 300x129)
>>1293887
>магических чисел
Что это?

>цикл for принципиально не юзаешь
В while все как-то очевиднее для меня, поэтому предпочитаю, хз.
У for есть какие-нибудь преимущества по скорости исполнения перед while-ом?

>У тебя строки на '\0' заканчиваются?
Они же вроде сами проставляются, если под них место оставить, нет?

Алсо, я космический еблан. Тут действительно стоило бы for использовать

Расставил везде puts-ы чтобы посмотреть до какого места работает, а она в самом начале в бесконечный цикл уходит оказывается
Аноним 12/11/18 Пнд 00:07:41  1293898
image.png (262Кб, 1920x1080)
И вот какого хуя у меня это говно рисуется? Там же строка должна писаться, забиваться '\b'-шками к началу и снова писаться там же?

Или я неправильно понимаю принцип работы?
Аноним 12/11/18 Пнд 00:13:24  1293903
А все, идите нахуй, заработало
Аноним 12/11/18 Пнд 00:18:37  1293906
Геймдев уровня /b/
Аноним 12/11/18 Пнд 00:41:45  1293914
Сраные студенты засрали весь тренд
Аноним 12/11/18 Пнд 02:45:00  1293952
image.png (40Кб, 652x443)
>>1293914
> Не студент
> Все еще сидит на харкаче

Кого ты пытаешься обмануть?
Аноним 12/11/18 Пнд 05:16:50  1293964
image.png (278Кб, 1920x1080)
Змейко-калькулятородебил снова в тренде.

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

Это меня огорчает

>>1293049
Тред не читал, пока стоял в душе придумал решение, скорее всего уже решили получше, но вот (Шавкятычу привет):

#include <cstdio>
using namespace std;

int main()
{
short num;
unsigned short num0,num1,num2,num3,num4,num5,num6,num7,num8,num9,counter;
num0=num1=num2=num3=num4=num5=num6=num7=num8=num9=counter=0;

puts ("Ââåäèòå ÷èñëî, ïîäëåæàùåå ñîðòèðîâêå: ");
while (num!='\n')
{
scanf ("%c", &num);

switch (num)
{
case '0': {++num0; break;} case '1': {++num1; break;}
case '2': {++num2; break;} case '3': {++num3; break;}
case '4': {++num4; break;} case '5': {++num5; break;}
case '6': {++num6; break;} case '7': {++num7; break;}
case '8': {++num8; break;} case '9': {++num9; break;}
case '\n': break;
default: {puts("\n\nÂâîäè ÷èñëà, âûáëÿäîê!"); break;}
}

++counter;
}

long long result = 0, degree = 1;
bool doCycle = 1;

for (; counter != 2; --counter) {degree = 10;}

while (doCycle)
{
while (num9) {result += (9
degree); degree/=10; --num9;}
while (num8) {result += (8degree); degree/=10; --num8;}
while (num7) {result += (7
degree); degree/=10; --num7;}
while (num6) {result += (6degree); degree/=10; --num6;}
while (num5) {result += (5
degree); degree/=10; --num5;}
while (num4) {result += (4degree); degree/=10; --num4;}
while (num3) {result += (3
degree); degree/=10; --num3;}
while (num2) {result += (2degree); degree/=10; --num2;}
while (num1) {result += (1
degree); degree/=10; --num1;}
while (num0) {result += (0*degree); degree/=10; --num0;}
doCycle = 0;
}

printf ("\nÐåçóëüòàò ñîðòèðîâêè ðàâåí: %lld\n\n", result);
return 0;
}


Алсо, какого хуя не копируется кириллица из моего любимого DEV C++?
Аноним 12/11/18 Пнд 05:18:07  1293965
>>1293049
https://pastebin.com/bhuaMBDC

Лови в нормальном виде
Аноним 12/11/18 Пнд 05:23:35  1293968
Только что понял, что это говно работает только с положительными числами, но на отрицательные мне дописывать лень, короче принцип ты понял
Аноним 12/11/18 Пнд 05:51:39  1293969
15371172915590.jpg (72Кб, 578x600)
>>1293964
Твой код напомнил мне пикрил
Аноним 12/11/18 Пнд 06:07:39  1293971
Elon Musk smoki[...].gif (109Кб, 516x472)
>>1293969
Знаю что непрофессиональная хуйня

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

а как иначе реализовать без мам, пап и массивов с векторами и Наилями в душе не ебу, честно
Аноним 12/11/18 Пнд 06:17:36  1293973
>>1293971
Вместо миллиона переменных num сделай один массив. В первом цикле используй введенное число как индекс массива (nums(num)++). Во втором цикле замени тучу циклом while на один цикл for от 0 до 9 и один while внутри него.
Аноним 12/11/18 Пнд 06:19:08  1293974
>>1293971
>а как иначе реализовать без массивов
Это обязательно?
Аноним 12/11/18 Пнд 06:25:04  1293975
>>1293974
Парень который задавал вопрос указал это как одно из условий (а еще нельзя использовать никакие хедеры кроме <stdio.h>)
Аноним 12/11/18 Пнд 07:10:56  1293978
>>1293971
Ну как

Твоя задача отсортировать цифры по убыванию: 2860327 => 8632270
Цифр у тебя мало, всего 10 штук, значит удобно применить сортировку подсчетом https://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D1%80%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D0%B0_%D0%BF%D0%BE%D0%B4%D1%81%D1%87%D1%91%D1%82%D0%BE%D0%BC
То есть тупо считаешь число девяток, число восьмерок и дальше как-то их записываешь.

Ты можешь легко узнать последний разряд числа хуиткой типа
while (n != 0) {
posledniy_razryad = n % 10;
n = n / 10;
}

Ты можешь легко дописать цифру слева хуиткой типа
yoba = yoba + cifra 10^длина_числа.
а цифру справа хуиткой типа
yoba = yoba
10 + cifra_sprava

Остается это скомбинировать. Считаем число нулей, записываем. Считаем число единиц, записываем справа от нулей. Считаем число двоек. И так далее, до девяти.

Получится вот так

https://ideone.com/VelFpW
Аноним 12/11/18 Пнд 07:19:50  1293981
>>1293978
>2860327 => 8632270
Тут с семеркой проебался
>Считаем число единиц, записываем справа от нулей
А тут слева конечно же
Аноним 12/11/18 Пнд 11:21:04  1294042
>>1293596
Проиграл
Аноним 12/11/18 Пнд 12:53:03  1294088
>>1293964
>как ожидать от пользователя ввода между обратным отсчетом в циклах
Колдовать с API операционки для неблокирующих и не выводящих на экран чтений. Можно в другом потоке, но все равно нужен ввод без эха.
Аноним 12/11/18 Пнд 14:50:59  1294190
Аноны, как можно создать без вектора динамический размер с реализацией функции push_back? Я вот попробовал, создал двумерный массив для хранения строк
>char names = new char * ;
А после добавлял туда по одному элементу
>names = new char[нужный размер];
И увеличивал счётчик на единицу за каждый элемент, а потом с помощью цикла использовал элементы как мне нужно. Но когда пришло время очистки памяти компилятор начал ругаться за утечку памяти. Может кто подсказать нормальный способ, или хотя-бы как правильно очистить память в моём случае, вот так вот выдаёт ошибку
> for (int i = 0; i < arraysize;i++)
delete [] names;
Аноним 12/11/18 Пнд 14:51:50  1294191
>>1294190
>динамический массив
>delete names
фикс
Аноним 12/11/18 Пнд 14:52:50  1294192
>>1294191
Блять, там вообщем i-элемент в обоих случаях создания и удаления строки, абу не пускает.
Аноним 12/11/18 Пнд 14:59:54  1294198
>>1294190
ты когда новую память выделяешь старую освобождаешь?
Аноним 12/11/18 Пнд 15:04:18  1294205
>>1294198
Не совсем понял вопрос. Когда мне нужно старую освобождать? Мне нужно на ходу составить массив из нескольких элементов, их количество заранее не известно. От чего нужно освобождать память, если я создаю несколько элементов массива?
Аноним 12/11/18 Пнд 15:09:53  1294208
>>1294205
Когда ты вызываешь
names = new char[нужный размер];
ты выделяешь абсолютно новый блок памяти
Соответственно старый со старыми данными остаётся висеть в памяти
Выделяешь новую память -> копируешь данные в новую память -> освобождаешь старую память -> присваиваешь указателю на старую память адрес новой памяти
Аноним 12/11/18 Пнд 15:11:44  1294211
>>1294208
Да я там элемент массива создать пытаюсь, тут просто нельзя квадратные скобки со значением интерпретируются не так. Там должно быть
names[номер элемента] = new char[размер строки];
Аноним 12/11/18 Пнд 15:20:22  1294215
>>1294211
Код нормально запросит для начала
Аноним 12/11/18 Пнд 15:21:32  1294216
>>1294215
Там большая программа связанная с файлами, сейчас комментариев расставлю чтобы понятнее было и вкину
Аноним 12/11/18 Пнд 15:26:00  1294221
>>1294215
cpp.sh/6ijvn
Держи, там в целом тоже самое что я и писал, только еще код программы основной. Сейчас запустил и заметил что программа в конце зависает, раньше вроде такого не было
Аноним 12/11/18 Пнд 15:30:52  1294227
>>1294211
Пиздец ты нихуя не понял что такое массив, как они относятся к указателям и что делает new
Начинай сначала
Аноним 12/11/18 Пнд 15:31:11  1294228
>>1294227
>>1294221

Аноним 12/11/18 Пнд 15:32:02  1294230
>>1294227
Бля(
хоть намекни в чём проблема то
Аноним 12/11/18 Пнд 15:41:12  1294236
>>1294230
Ты хочешь хранить указатели на неопределённое количество строк, но выделяешь память только под один указатель

Аноним 12/11/18 Пнд 15:53:50  1294255
image.png (1Кб, 291x26)
image.png (17Кб, 642x350)
>>1294236
Я так понял вот такой записью я создам указатель на указатель на строки размером в 13 символов? Ну как на картинке выходит. А можно ли создать массив из неопределенного количества строк и неопределенного их размера, а заполнить по мере надобности? Или я пик 3 переопределяю их размер? В главе про new и кучу ничего такого не было, извини если очевидные вещи спрашиваю
Аноним 12/11/18 Пнд 15:54:28  1294256
image.png (2Кб, 480x16)
>>1294255
забыл пик3
Аноним 12/11/18 Пнд 16:10:23  1294266
>>1294255
Указатель это и есть строка
>А можно ли создать массив из неопределенного количества строк
Нет
И освободить всё потом не забудь
Аноним 12/11/18 Пнд 16:11:54  1294267
>>1294266
Спасибо за помощь
Аноним 12/11/18 Пнд 18:50:13  1294396
15418129569262.jpg (328Кб, 640x639)
Сар котаны, как делать так чтобы рандомные вопросы не повторялись? Спасибо

Сорян за то что много текста


#include "pch.h"
#include <iostream>
#include <string>
#include <iomanip>
using namespace std;

int Player;
int Total;

class Question
{
private:
string Question_Text;
string Answer_1;
string Answer_2;
string Answer_3;
string Answer_4;

int Correct_Answer;
int Question_Score;

public:
void setValues(string, string, string, string, string, int, int);
void askQuestion();
void SetQuestion()
{
srand(time(0));
rand();
int r = rand() % 10 + 1;
switch (r)
{
case 1:
setValues("В каком году началась Первая мировая война?",
"1913",
"1914",
"1915",
"1916",
2,
10);
break;
case 2: setValues("В каком году закончилась Первая мировая война?",
"1917",
"1918",
"1919",
"1920",
2,
10); break;
case 3:setValues("В каком году началась русско-японская война?",
"1902",
"1903",
"1904",
"1905",
3,
10); break;
case 4:setValues("В каком году закончилась русско-японская война?",
"1903",
"1904",
"1905",
"1906",
3,
10);
break;
case 5:setValues("В каком году началась Октябрьская революция?",
"1915",
"1916",
"1917",
"1918",
3,
10);
break;
case 6:setValues("В каком году началась Вторая мировая война?",
"1938",
"1939",
"1940",
"1941",
2,
10);
break;
case 7:setValues("Кто был главным союзником Гитлера?",
"Черчилль",
"Рузвельт",
"Муссолини",
"Хирохито",
3,
10);
break;
case 8:setValues("Когда закончилась Вторая мировая война?",
"1943",
"1944",
"1945",
"1946",
3,
10);
break;
case 9:setValues("Точная дата окончания Второй мировой войны?",
"9 мая", "2 сентября", "1 июня", "22 июля", 2, 10);
break;
case 10:setValues("Когда случился развал СССР?", "1990", "1991", "1992", "1993", 2, 10);
default:
break;
}
}

};

int main()
{
setlocale(0, "Rus");

cout << "Нажмите Enter чтобы начать викторину" << endl;
cin.get();


Question q[10];
for (int i = 0; i < 10; i++)
{
q.SetQuestion();
q.askQuestion();
}
cout << "Вы набрали: " << Total << " Из 100" << endl;
cout << endl;
if (Total >= 50)
{
cout << "Поздравляю, вы прошли викторину!" << endl;
}
else
{
cout << "К сожалению, вы не прошли викторину" << endl;
}
return 0;
}


void Question::setValues(string q, string a1, string a2, string a3, string a4, int ca, int pa)
{
Question_Text = q;
Answer_1 = a1;
Answer_2 = a2;
Answer_3 = a3;
Answer_4 = a4;
Correct_Answer = ca;
Question_Score = pa;

}

void Question::askQuestion()
{
cout << endl;
cout << Question_Text << endl;
cout << "1. " << Answer_1 << endl;
cout << "2. " << Answer_2 << endl;
cout << "3. " << Answer_3 << endl;
cout << "4. " << Answer_4 << endl;
cout << endl;

cout << "Ваш ответ?" << endl;
cin >> Player;
if (Player == Correct_Answer)
{
cout << endl;
cout << "Поздравляю! Правильный ответ!" << endl;
Total = Total + Question_Score;
cout << "Счет: " << Question_Score << " Из " << Question_Score << endl;
cout << endl;
}
else
{
cout << endl;
cout << "К сожалению, не правильный ответ" << endl;
cout << "Счет: 0 " << " Из " << Question_Score << endl;
cout << "Правильный ответ: " << Correct_Answer << endl;
}
}
Аноним 12/11/18 Пнд 19:34:11  1294414
>>1294396
>Сар котаны, как делать так чтобы рандомные вопросы не повторялись?
Ты даун? Ты рофлишь что ли? Тебе блять самому удобно читать такое говно?
Аноним 12/11/18 Пнд 20:16:33  1294436
>>1294042
С тобой не играл никто.
Аноним 12/11/18 Пнд 20:19:41  1294440
>>1294414
Сейчас дело не в удобстве, а в работоспособности кода. Как мне сделать так чтобы эти ебанные вопросы не повторялись?
Аноним 12/11/18 Пнд 20:21:02  1294441
>>1294440
Собери их в массив, массив перемешай (std::shuffle), выдавай из него по порядку.
Аноним 12/11/18 Пнд 22:11:13  1294530
>>1293978
>https://ideone.com/VelFpW

Работает, действительно. Можете канонично крестить меня в говнокодеры

switch-case-одебил
Аноним 13/11/18 Втр 02:21:51  1294639
Elon Musk Smoki[...].jpg (66Кб, 1300x651)
Хвощ, ковыряю Си, запрашиваю объяснение сего. Если я правильно понимаю, s содержит адрес первого элемента массива. Функция печатает элемент массива, затем меняет адрес, хранящийся в s, на адрес следующего элемента массива.

Но загадкой для меня является сочетание while (s).
Что это значит? Адрес, на который оказывает s, выйдет за границы массива. Если он пустой, то указателю присвоится значение 0 и цикл прервется. Но что если по этому адресу хранится какое-нибудь значение?

int puts (const char
s)
{
while (s) putchar (s++);
return 1;
}

Знаю, что для Си есть отдельный отдел, а у крестобояр ссылки-ссылочки, но раз уж тут тусуюсь уже
Аноним 13/11/18 Втр 02:22:55  1294641
int puts (const char s)
{
while (
s) putchar (*s++);
return 1;
}

Блять, опять проебался. Вот так должно быть

>>1294639

Аноним 13/11/18 Втр 02:23:44  1294642
Поставьте звездочки перед s везде мысленном короче, у меня чёт не работает нихуя

>>1294641
Аноним 13/11/18 Втр 02:33:18  1294647
>>1294639
Строка должна заканчиваться символом '\0' реальный ноль 0х00. При разыменовании он преобразуется в false и цикл прервётся.
Аноним 13/11/18 Втр 02:54:14  1294652
Haha yes.jpg (26Кб, 538x491)
>>1294647
Ай блять, нуль терминатор, спасибо что напомнил
Аноним 13/11/18 Втр 03:25:20  1294662
>>1294639
>Знаю, что для Си есть отдельный отдел
И там такие как ты не нужны. Как и тут.
Аноним 13/11/18 Втр 11:19:25  1294740
>>1294641
Нахуя ты разыменовуешь указатель когда его инкрементируешь?
Аноним 13/11/18 Втр 12:16:28  1294776
image.png (18Кб, 523x239)
>>1294740

Он блять везде разыменованный, но операторы * блять отпали какого-то хуя. Алсо, можешь пояснить что не так? Должны же ступенчато отобразиться x, y, z, нет?
Аноним 13/11/18 Втр 12:21:40  1294780
>>1294776
Господин, пройдите в ньюфаг-тред.
Аноним 13/11/18 Втр 12:24:21  1294783
Аутист.jpg (13Кб, 204x247)
>>1294662
Все ведь когда-то начинали.
Если научусь чему-то большему чем замена CASE CASE CASE как тебе такое Илон Маск циклами спасибо анону >>1293978, можете всем двачем деанонить, приезжать и бить ебало за ТЕ САМЫЕ ™ блядские вопросы
Аноним 13/11/18 Втр 12:24:47  1294784
>>1294780
Сорян, не знал что такой есть. Дематериализуюсь
Аноним 13/11/18 Втр 12:25:43  1294785
wg21-schedule-2[...].png (22Кб, 500x227)
Когда сеть в стандарте будет? Обещали в 17, сейчас в 20, а у Саттера в бложике пикча с 23. И я так понимаю, io_context будет заменян на эти самые Executors?
Аноним 13/11/18 Втр 12:37:55  1294790
Neo wake up.jpg (9Кб, 500x313)
>>1294255
Можно поставить на кнопку вызов функции выделения памяти, выделять память размером в выделенная в прошлый раз + введенный размер", первые объекты делать указателями на ранее введеные, а остальные заполнять, либо копировать старые значение адреса нового массива, а старый удалять.

Можно вроде как почти все, если надо.

>>1294266
Анон, может ли указатель на указатель на
over9000* на указатель на переменную со значением = 0 вызвать переполнение стека/кучи?
Я предполагаю что да, ведь вроде как указатели тоже занимают место в памяти, хоть и хранят только адреса, но все же, вдруг ошибаюсь
Аноним 13/11/18 Втр 12:39:36  1294791
>>1294790
*копировать старые значения в память нового массива
Аноним 13/11/18 Втр 13:03:55  1294796
Ананасы, как придумать тему для диплома?
Кроме как написать игру сетевую на ум ничего не приходит.
Правда ещё была мысль о проверке работы курсовой/дипломной на соответствию ГОСТу, но как-то ограниченно кажется.
Аноним 13/11/18 Втр 13:50:14  1294818
>>1294790
Ну да, теоретически можно так сделать, только как потом это разыменовывать?
Аноним 13/11/18 Втр 13:51:14  1294820
>>1294796
Базу данных напиши
Аноним 13/11/18 Втр 16:40:48  1294907
Может кто обьяснить почему когда я использую для замены данных в бинарном файле обьект ofstream то ничего не работает, а при fstream всё хорошо? Пытаюсь поменять местами максимальный и минимальный элемент без массива. Нахожу максимум и минимум, сохраняю их позиции помноженные на размер типа данных. Перемещаю файловый указатель на размер минимума - записываю максимум, ну и наоборот. Если использовать ofstream то все элементы после позиции максимального становятся его копиями, а до принимают значение 0. Если поменять тип на fstream то работает корректно. Сидел 2 часа пока не нашёл какой-то англоязычный форум, комментатор там не знал почему так происходит, но попробовал и сработало. Может тут кто поможет? Я думал вся разница это то, что fstream содержит методы обоих классов, и не создаёт файл при открытии. Или это не баг а фича какая-то?
Аноним 13/11/18 Втр 16:42:18  1294909
>>1294907
Хотя сейчас протестил на другой версии студии, вроде работает. Это студия шалит так? Сука 2 часа убил
Аноним 13/11/18 Втр 17:02:30  1294925
>>1294909
Видимо так и есть. Жалко онлайн компиляторы работу с файлами не поддерживают. Вопрос закрыт думаю.
Аноним 13/11/18 Втр 20:21:26  1295050
image.png (169Кб, 1596x874)
>>1294266
Анон, если ты еще тут, можешь ответить пожайлуста. Нужно ли очищать память от указателей, которые никуда не указывают? Вот я создал массив из 10 строк, заполнил из них только 4. При удалении больше 4 компилятор зависает. Пустые указатели удалятся вместе с удалением указателя, который указывает на них? На картинке отметил на всякий случай
Аноним 13/11/18 Втр 21:12:04  1295077
>>1295050
чем планируешь "очищать"? веничек и совочек приготовил?
Аноним 13/11/18 Втр 21:12:54  1295079
>>1295077
Только delete и цикл
Аноним 13/11/18 Втр 21:22:58  1295085
>>1295050
Указатель указывает на память, ты освобождаешь память, а не указатель, указатель в данном случае это просто адрес памяти которую надо освободить
Если у тебя указатели тоже хранятся на куче, то тебе сначала нужно освободить каждую отдельную строку которую ты выделил, пройдясь циклом по массиву, а потом и этот массив целиком
На каждый new у тебя в программе должен быть delete
Аноним 13/11/18 Втр 21:26:12  1295088
>>1295085
Спасибо.
Аноним 14/11/18 Срд 03:34:08  1295219
5858.png (11Кб, 471x389)
Не видит x и y (error С3861), вай ?
Аноним 14/11/18 Срд 04:11:53  1295226
>>1295219
Квалификатор к ним добавь. Вот так:
0.5 figure<T>::x figure<T>::y
Аноним 14/11/18 Срд 04:12:59  1295227
>>1295226
>>1295219
Бля, звездочки протерялись. Ну ты понял.
Аноним 14/11/18 Срд 04:13:17  1295228
>>1295226
>>1295219
Бля, звездочки протерялись. Ну ты понял.
Аноним 14/11/18 Срд 15:06:58  1295391
Есть мультиплатформенный код, который восстал из 06 года.

Поясните аноны как работает unsigned(int)
Так как вот именно эта хрень почему-то падает, я не понимаю.
Аноним 14/11/18 Срд 15:13:37  1295395
>>1295391
Ты о чём?
> unsigned(int)
Это обычный каст инта к беззаконному.
Скорее всего инт был отрицательный, а после кастинга он стал UNSIGNED_MAX
И, наверное, использовался как индекс где-то и выхода за границы массива случился
Аноним 14/11/18 Срд 15:34:17  1295400
>>1295395
Оно положительное.
Есть ебучие условие
If ( u(i)>x || u(i2)>x) raise()
Причем х точно больше этого говна.
Аноним 14/11/18 Срд 15:46:01  1295403
>>1295400
То есть, это условие выполняется или нет?
Из-за чего падает?
Попробуй через cppcheck прогнать, может покажет чего.
Аноним 14/11/18 Срд 16:57:43  1295456
Надеюсь не слишком тупой вопрос.Я пишу сборник костылей и столкнулся с проблемой, что не могу внутри функции класса получить значения переменных другого объекта, а мне очень хочется. Тоесть есть 2 объекта пупа и лупа. вызываю функцию пупы и внутри неё хочу знать как дела у лупы, отправлять аргументами не вариант.
Аноним 14/11/18 Срд 17:11:40  1295466
>>1295456
Гугли friend class
Аноним 14/11/18 Срд 17:20:38  1295471
>>1295403
Бля, пиздос. Кто-то для скорости величины через define поставил и не написал в коммите.
Аноним 14/11/18 Срд 17:29:43  1295483
>>1295456
Чего? Ну попробуй статический вектор объектов класса, в любом методе любого из объектов хоть все другие объекты этого класса сможешь получить. Это как вариант, но я с таким не сталкивался, так что хз.
Аноним 14/11/18 Срд 19:14:26  1295526
Аноны, а как можнр реализовать псевдо-рандом? Чтобы одни значения выпадали чаще других, но всё еще рандомно. Прийдется математические формулы расчитывать и шаманить со srand-ом или уже есть готовое решение? Ну или хотя-бы статейки какие с теорией.
Аноним 14/11/18 Срд 19:23:36  1295532
>>1295526
Рестартовать цикл, если значение A попадается меньше N раз. Как-то так.
Аноним 14/11/18 Срд 19:25:44  1295535
>>1295532
Как-то костыльно. Я думал какое-то умное зерно для ранда придумать нужно. Вот к примеру нужно сгенерировать числа от 1 до 100, но чтобы чисел, которые меньше 50 встречались в 2 раза чаще остальных. Это нужно формулы высчитывать? Сюда пришёл чтобы узнать, может где-то уже это реализовывали.
Карьера байтоеба в российских реалиях Аноним 14/11/18 Срд 19:50:52  1295543
Реально ли вкатиться в байтоебство и найти работу в России?
Собираюсь через переехать в спб из своей мухосрани, но есть еще 1-2 года в запасе, которые можно будет потратить на изучение разных штук и технологий. Я понял, что успешный байтоеб в 2019 году должен уметь: в C, C++, Linux, Linux Kernel и какой-нибудь скриптовый язык вроде питона и систему контроля версий, а также алгоритмы и структуры данных для собеседования.
Стоит ли игра свеч? Или лучше оставить байтоебство как хобби, а работать где-нибудь в вебе или энтерпрайзе?
Аноним 14/11/18 Срд 20:01:42  1295547
>>1295543
>C, C++, Linux, Linux Kernel
За 1-2 года ты даже С++ не освоишь. Выучи что-то одно идеально, а не 300кк языков понемногу.
Аноним 14/11/18 Срд 21:55:25  1295590
выложили видео с белорусского осеннего corehard
https://www.youtube.com/watch?v=srhdfL_ytwc&list=PLgsLnJ-wgYTbaNXfp3mjf-eOb62Md9-33
Аноним 14/11/18 Срд 21:59:29  1295593
вот
переворачиваем списки!
https://www.youtube.com/watch?v=QLqySEpEKW8&index=12&list=PLgsLnJ-wgYTbaNXfp3mjf-eOb62Md9-33
Аноним 14/11/18 Срд 22:05:48  1295598
>>1295543
>ли вкатиться в байтоебство и найти работу в России?
>переехать в спб из своей мухосрани
все же нужен бекграунд: техническая вышка, 2-3 года работы по специальности кодером у себя в мухосрани..
если этого нет, то тяжко будет..

Аноним 14/11/18 Срд 22:31:45  1295607
>>1295590
Какая-то хуйня без задач. Кроме рефлексии там вообще есть что-то?
Аноним 14/11/18 Срд 23:39:54  1295628
float floatVar = 3.14;
int fl = (int)&floatVar;

Аноны, не понимаю как работает вторая строчка, точнее синтаксис. Можете объяснить? Или статью какую-нибудь почитать киньте.
Что она делает я знаю
Аноним 14/11/18 Срд 23:41:07  1295629
>>1295628
...
Аноним 14/11/18 Срд 23:41:53  1295630
1.png (1Кб, 250x53)
>>1295629
>>1295628
Аноним 14/11/18 Срд 23:50:33  1295633
>>1295630
Что неясно-то?
Аноним 14/11/18 Срд 23:54:24  1295636
>>1295630
Кармарк, заебал шабить
Аноним 14/11/18 Срд 23:57:15  1295637
>>1295630
>>1295633
Ты читать умеешь? Ты преобразовал ссылку на float к указателю на int, разыменовал его и присвоил значение интовой переменной. Нахуя это вообще? Что за пиздец?
Аноним 14/11/18 Срд 23:57:59  1295638
>>1295633
Ещё и выебуешься, если такой умный то почему сразу скрин не скинул?
Аноним 15/11/18 Чтв 00:06:16  1295639
>>1295638
Ты кому отвечаешь, шизик?
Аноним 15/11/18 Чтв 00:07:26  1295640
>>1295639
Я подумал что это он написал, сорре, таблетки забыл выпить.
Аноним 15/11/18 Чтв 00:39:27  1295645
>1295637
Я все равно не понял.
Я просто лабу вузовскую делаю. Нужно внутренне представление числа типа флоат: сначала достал значения битов этой переменной, потом в цикле умножаю побитово это число на перемнную цикла (которая равна 2 в 31 и уменьшается каждый шаг в два раза соответсвтенно), ну и вывожу либо ноль либо один.
Аноним 15/11/18 Чтв 00:41:14  1295646
>>1295645
Ну сделай через union тогда
Аноним 15/11/18 Чтв 00:48:05  1295648
>>1295637
>>1295645


>>1295646
Я знаю про union, но мне интересно именно, что я скинул. Как эти операции называются? Что гуглить?
Аноним 15/11/18 Чтв 00:48:13  1295649
>>1295645
Биты не так достаются
Bit = (target>>x) & 0x01
Аноним 15/11/18 Чтв 02:33:12  1295673
>>1286157 (OP)
Аноны, вкатываюсь в С++ и сразу пара вопросов:
1) Нужно ли начинать с Си?
2) Можно ли использовать в С++ системные файлы из Си, например stdio.h?
Аноним 15/11/18 Чтв 02:53:01  1295683
>>1295673
>1) Нужно ли начинать с Си?
Необязательно.
>2) Можно ли использовать в С++ системные файлы из Си, например stdio.h?
Можно.
Аноним 15/11/18 Чтв 07:40:35  1295720
>>1295673
>1) Нужно ли начинать с Си?
Обязательно. Прочитай K&R и потом Дизайн и эволюцию С++. Сэкономишь кучу времени, пытаясь понять, какого хуя настолько все через жопу.
>2) Можно ли использовать в С++ системные файлы из Си, например stdio.h?
На С++ сишные хедеры правильно инклудить как <cstdio>, без .h и с "c" в начале. Это особо приветствуется (те же format strings подвержены атакам типа переполнения буфера), но всем похуй.
Аноним 15/11/18 Чтв 09:52:01  1295756
Как не зайду в тред, одни школьники сидят и просят друг-друга хеллоуворды решать. Пиздец блять. Призываю настоящих олдфагов байтодрочеровов для выполнения моего реквеста ИТТ.

Сейчас изучаю формат PE и разные манипуляции с ним. В частности инжекты. Не могу понять, как работает мануал маппинг, и можно ли вообще замаппить PE в формате exe?
Аноним 15/11/18 Чтв 09:56:23  1295759
>>1295756
Это тебе в ассемблер тред или в Си тред, а тут С++, тут таким зашкварно заниматься.
Аноним 15/11/18 Чтв 10:17:49  1295764
>>1295759
А чем это сейчас крестовые бояре занимаются? Ой, погоди, вы тут сидите базовые алгоритмы покаете, еще и с STL библиотекой. Никаких вопросов!
Аноним 15/11/18 Чтв 11:02:28  1295777
>>1295764
Виндоговно это нормальный такой зашквар, так что твоё кукареканье из-под шконки мало кого интересует
Аноним 15/11/18 Чтв 13:29:17  1295840
>>1295756
Ты не в тот тред пишешь, "олдфаг".
Аноним 15/11/18 Чтв 15:13:38  1295864
15420151762880.png (57Кб, 200x200)
>>1295756
>можно ли вообще замаппить PE в формате exe

Можно. Статья 273. Создание, использование и распространение вредоносных программ для ЭВМ наказываются лишением свободы на срок до трех лет со штрафом в размере до двухсот тысяч рублей или в размере заработной платы или иного дохода осужденного за период до восемнадцати месяцев.
Аноним 15/11/18 Чтв 17:39:05  1295912
Подскажите годных курсов по нейросетям

Это вообще адекватно - на крестах нейросети писать, надо в пайтон вкатываться?
Аноним 15/11/18 Чтв 18:04:47  1295925
>>1295912
они на всем одинаково пишутся (практически). coursera с кучей курсов по машобу поможет.
Но... Лучше не делать велосипедов, а взять библиотеку
Аноним 15/11/18 Чтв 19:55:11  1295974
>>1295720
>Дизайн и эволюцию С++
самая интересная книжка у страуструпа
если че, я всё у него прочитал
Аноним 15/11/18 Чтв 22:36:33  1296036
>>1295974
И до сих пор живешь без галоперидола?
Аноним 16/11/18 Птн 01:19:57  1296093
15232485294780.jpg (37Кб, 362x346)
>>1295720
>Обязательно
Нахуя учить Си ? Чтобы потом путаться и юзать уже "мёртвые" в С++ функции ?
Аноним 16/11/18 Птн 06:00:32  1296122
>>1295864
Тарищ МАЙОООООР, все исключительно в образовательных целях, для выявления способа защиты коммерческого продукта. Ни один калькулятор при проведении испытаний не пострадал.

>>1295777
>>1295840
Да я уже понял.

>>1296093
Нахуя учить С++? Есть же дотнет. Чтоб самому все ручками писать?!?!?
Аноним 16/11/18 Птн 14:57:16  1296225
>>1296122
>Нахуя учить С++? Есть же дотнет. Чтоб самому все ручками писать?!?!?
Нахуя тебе Си ? В плюсах добавили хуеву тучу нового, для чего на Сишке приходилось писать свои велосипеды. Только говнокодить станешь больше из-за Сишки до С++.
Аноним 17/11/18 Суб 11:50:47  1296607
>>1296225
На плюсах велосипеды тоже часто приходится писать, если что
Аноним 17/11/18 Суб 23:08:28  1296930
Прочитал Шилда, куда дальше вкатываться ? В QT от Шлее ?
Аноним 19/11/18 Пнд 22:25:36  1297869
image.png (32Кб, 491x490)
image.png (2Кб, 283x159)
Аноны, как можно написать функцию, которая будет искать все возможные варианты сум какого-то числа? Как на пике. Пытался найти возможные суммы числа (пик 2),а после перетасовывать элементы в них, но выходила какая-то хуйня. Если менять элементы сравнивая с последним, то строки по типу 1 2 2 будут давать мало вариантов, а если с первым - то все остальные. Может кто подсказать примерный алгоритм? Инет обрыл, нашёл только варианты как для пик2. Уже 6 часов сижу думаю, и нихуя не придумал. Если кому нужно, функцию для поиска пик2 оставлю под спойлером cpp.sh/8554k
Аноним 20/11/18 Втр 04:03:38  1297986
15407315170690.jpg (119Кб, 761x761)
>>1297869
Попробуй отталкиваться от матана.
Любое положительное число можно представить в виде n = 1+1+1...+1.
Например если брать число с примера 5, то 5 = 1 + 1 + 1 + 1 + 1 и в этом равенстве можно располагать скобки как захочешь(согласно правилам математики)
5 = 1 + 1 + 1 + (1 + 1) = 1 + 1 + 1 + 2
5 = 1 + 1 + (1 + 1 + 1) = 1 + 1 +3
5 = 1 + (1 + 1 + 1 + 1) = 1 + 4
Количество способов расставить скобки можно найти по числам Каталана (Х-1) число, когда есть Х чисел.

Аноним 20/11/18 Втр 09:33:27  1298039
>>1297869
Я изначально думал в таком русле, но потом затупил когда начал реализовывать. Выходило 1-1-1-2 - все 4 штуки, потом 1-1-3- три штуки - 2 -3 две штуки и 5. Не пойму как в алгоритме сделать, чтобы оно перебирало все комбинации. Вчера вечером чуть-чуть доработал метод с перестановками, но он почему-то не работает для сумм из 2 чисел. Хотя если вывод добавить, то пишет что оно их меняет, а на деле нихуя. Добавлю свой говнокод, может кто найдёт ошибку cpp.sh/47v4n
Аноним 05/12/18 Срд 17:09:52  1306438
2222222.PNG (17Кб, 1054x625)
Почему такой текст? Как это исправить?
Аноним 05/12/18 Срд 17:15:54  1306439
>>1306438
всё, я решил, на английском работает всё нормально, на русском не знаю почему, но такие символы. Кто знает, подскажите, пожалуйста


Топ тредов
Избранное