Как всегда только ты моя надеждаЯ пока что не дружу с с++, подскажи первое задание:int sum = 0;for (int i = 0; i < size-1; ++i) for (int j = 0; j < size-i-1; ++j) if (matrix[j] = 0) sum += matrix[j];Пойдет? Со вторым подскажешь, буду крайне рад тоже, но думаю с ним нагуглюсь
>>223736640 (OP)В операторе if нужно использовать знак == для проверки на равенство. И на кой хуй ты суммируешь, если элемент равен нулю то? Если элемент == 0 то должен происходить выход их циклов.
>>223736915Бля, я даже на описание for не смотрел.1. На кой хуй инкременируешь до size-1? Если size - мощность матрицы, то просто до size надо.2. Ты на кой хуй j инкременируешь до size-i-1? Тогда ты будешь "лесенкой" парсить, то есть не всю матрицу пройдешь. Такую хуйню еще в школе выбивают: бери карандаш и листочек, нарисуй бля матрицу и смоделируй, как он будет работать у тебя (хуево, но все равно попробуй. Так легче будет усвоить)И еще бля почему ты matrix[j] прибавляешь, когда у тебя двемерная матрица, еблан? sum += matrix[j] тогда ужБери учебник Шилда и не еби мозги порядочным анонам
>>223737308Сука, абу!И еще бля почему ты matrix[j] прибавляешь, когда у тебя двуемерная матрица, еблан? sum += matrix[j] тогда ужбыстрофикс
>>223737369Так, бля. 1 more try.И еще бля почему ты matrix[j] прибавляешь, когда у тебя двумерная матрица, еблан? sum += matrix[тут i][тут j]
>>223736640 (OP)Второе совсем ебланство какое-то. Кто эту хуйню генерировал? void-функция по определению нихуя не возвращает.void your_mum (int fat) {printf("Ya ebal tvoyu mat', ebanii vkativalshik. Makaka ebanaya. Твоя мать весит %d кило. Живи с этим", fat);}Вызов...main() {your_mum(500);}
>>223736915>>223737369Нахождение суммы отрицательных элементов до первого нулевого элемента матрицы.Так вот что ли? Меня просто система образования ебет, в моей профе с++ ваше ннint sum = 0;for (int i = 0; i < size; ++i)for (int j = 0; j < size; ++j)if (matrix[j] == 0)sum += matrix[j]break;
>>223737817нет, я совсем дебил int sum = 0;for (int i = 0; i < size; ++i)for (int j = 0; j < size; ++j)if (matrix[j] == 0)sum += matrix[j];
>>223737817Бля ну хотя бы break знаешь.1. У тебя матрица, бля. Это двумерный массив. Когда ты пишешь matrix[j] тебе возвращают не элемент массива а j-ую строку чисел (это как на графике вместо x-y координат просто указать x).2. Не запустится это говно. После суммирования должно быть ;
>>223737996да, вакаба ебет и коверкает код сама int sum = 0;for (int i = 0; i < size; ++i)for (int j = 0; j < size; ++j)if (matrix[j] == 0)sum += matrix[j];break;
>>223737996Охуенно, конечно. Но суммирование у тебя будет происходить только если текущий элемент равен нулю, что противоречит заданию. По заданию суммируется только отрицательный элемент, а на нулевом происходит выход из циклов
>>223738358Да, но ты в курсе, что твой код эквивалентен вот этой хуйне? У тебя в случае если element == 0 происходит суммирование, а сразу после парсинга самой первой строки происходит выход из цикла?
>>223736640 (OP)Отрицательных чисел же num < 0? выйти из одного цикла обычно break поможет, но у тебя тут 2 цикла - так что легче будет создать булеан который будет сигнализировать о выходе
>>223738860Нахуя логическая переменная, если это простая функция? Можно просто вернуть сумму если на нуль попал. Не грузи его, он и так едва понимает
>>223738361>>223738650Ну сделай мне и сразу прикрепи карту/яд там 100р кину на пиво, тебе явно два клика в это задание вложить >>223738860s = 0;for(i=0; i<size; i++)for(j=0; j<size; j++)if (x[j] < 0) s += X[j];Тут я просто сумму отрицательных элементов в матрице найду А как сделать до первого нулевого?
>>223736640 (OP)А потом они удивляются, как это "тупые 30летние васяны вкатывальщики" им составляют конкруенцию, лолблять.
>>223738358В общем, короче. Тебе нужно 2 логические проверки запилить вместо одной в последнем блоке for:1. Проверка на отрицательное значение. Если true, то суммируешь.2. Проверка на 0. Если true, то выходишь из циклов. Вместо break юзай return. Если нужно вывести сумму на консоль, то перед этим printf("%d", sum);
>>223739177Ладно, хуй с тобой. Надеюсь, это не профиль, иначе пизда нам окончательнаяКомпилятора под рукой нет, поэтому за работоспособность не ручаюсь
>>223739268чисто еще что бы по конвенции, я бы каждый if еще добавил ковычки { }if else заменить на if ifgoto тоже считается плохим тоном, заменить на return или вызов функции в которую ты кидаешь аргумент sum если играешь в function composition функционального программирования
>>223739640В данном случае надобности никакой нет. Выдели подсчет суммы в отдельную функцию и выход по return.
>>223739640Да, но только профессионалам. ОП даже не зеленый. Таких за готу бить по рукам надо, а ты поощряешь и в то же время путаешь еще больше! Нехорошо...
>>223739521А почему не профиль то? Вполне в духе мамкиного зумерка, что пошел на погроммиста из-за денег, а мозгов хуйма, что элементарную хуйню написать не может
>>223739521>>223739268template <class numberable>void yoba(int size, numberable[][] matrix, void (f)(numberable) pipe) {numberable sum, i, j = 0;for(;i < size; i++) { for(;j < size; j++) { int num = matrix[j]; if(num == 0) { pipe(sum); } if(num < 0) { sum += matrix } }}}
>>223740078Конец учебного года ведь. Если не совсем обосанная шарага, то гарантировано 100% студней такую базу давно прошли и это задание никому не подкинут даже в виде шутки. К тому же, ОП вроде намекнул, что c++ исключительно в нагрузку дали
>>223740143проебался с поинтером, нахуй функцию каждый раз копироватьvoid (f)(numberable) pipe -> void (pipe)(numberable)pipe(sum) -> (pipe)(sum)сильно не стебите, писал на коленке
>>223736640 (OP)for (int i = 0, sum = 0, p = matrix; (i < size size) && (p >= 0); i++, sum += p) ;Ну и что такого, что я извращенец и люблю костыли, зато в одну строчку.
>>223741195>>223741302А что такое (звездочка)p? указатель на целое число? Вангую ошибку компиляции, ибо матрицы обычно в виде двумерного массива пилят.Плюс, по условию в массиве могут встречаться как положительные, так и отрицательные значения. У тебя же, при встрече с числом < 0 цикл скажет пока-пока.
>>223741876>У тебя же, при встрече с числом < 0 цикл скажет пока-пока.Я буду внимательно читать задания. Я буду внимательно читать задания. Я буду внимательно читать задания.
>>223745305Сорри был на митинге, в общем заскринил свой код, фунеция как и написано является void, учел момент когда 0 не встретиться и прочее и прочее
>>223741195да тоже норм, но ты проебался в условии (p != 0)и потом, нужно все равно делать sum += check(p)где int check(int p) { if(p < 0) { return p; } return 0;}ща допишу
>>223737758>void-функция по определению нихуя не возвращает.В плюсах есть такая замечательная вещь как указатель на void. Но вероятность, что ОП-хую об этом рассказывали стремиться к нулю.