Карта сайта

Это автоматически сохраненная страница от 25.12.2015. Оригинал был здесь: http://2ch.hk/b/res/111022183.html
Сайт 2ch-b.ru не связан с авторами и содержимым страницы
жалоба / abuse: 2ch-b.ru@mail.ru

Птн 25 Дек 2015 13:40:55
Сап двач. Нужен вопрос по с++. Используя собственную найти разность между максимальным отрицательным и минимальным положительным значениями элементов массива(одномерного).


инбифо: это может любой школьник и тд и тп



Птн 25 Дек 2015 13:42:34
Бамп

Птн 25 Дек 2015 13:42:53
Бамп

Птн 25 Дек 2015 13:43:28
Бамп

Птн 25 Дек 2015 13:44:11
Бамп

Птн 25 Дек 2015 13:45:06
>>111022183 (OP)
Хохол порвался.

Птн 25 Дек 2015 13:45:42
>>111022183 (OP)
Что "собственную"?

Птн 25 Дек 2015 13:45:54
>>111022602
Да и что

Птн 25 Дек 2015 13:46:14
>>111022660
*функцию

Птн 25 Дек 2015 13:47:08
>>111022707
Окей. И какой вопрос тебе нужен касательно этого? Нужно придумать формулировку вопроса?

Птн 25 Дек 2015 13:49:30
>>111022784
Определить два одномерных массива а(19) и б(26). Первый ввести с клавиатуры а второй задать начальной инициализацией. Используя собственную функцию, найти разность между максимальным отрицательным и минимальным положительным значениями элементов этих массивов

Птн 25 Дек 2015 13:50:10
>>111022183 (OP)
int f(int *a)
{
находишь максимальный отрицательный, минимальный положительный, их разность.
return разнность;
}

Птн 25 Дек 2015 13:51:25
>>111023060
>(OP)
>находишь максимальный отрицательный, минимальный положительный, их разность.


Как это сделать?

Птн 25 Дек 2015 13:52:21
>>111022990
Окей. Что тебе уже понятно? Ты хотя бы понимаешь, с каких строчек должна начинаться твоя программа? А любая программа? Высказывай свои соображения.

Птн 25 Дек 2015 13:54:50
>>111023260
Понимаю все, кроме того как найти максимально е отрицательное и минимальное положительное

Птн 25 Дек 2015 13:55:35
>>111023175
Bubble loop гугли.
Минимальный=максимальный=первый.
Цикл, по каждом елементе{
Если елемент больше максимального: максимальный = елемент.
Если елемент меньше минимального: минимальный = елемент
}
Return максимальный - минимальный

Птн 25 Дек 2015 13:56:02
>>111022183 (OP)

float sosnickiy (float * kishki, int dlina)
{float katyah, kucha;
katyah = 999999.0;
for(int i=0, i<dlina, i++)
if(abs(kishki) < katyah)
{katyah = abs(kishki);
kucha = kishki};

return kucha;
};

Птн 25 Дек 2015 13:56:26
>>111023566
Можно же без сортировки сделать, тупо на двух ифах

Птн 25 Дек 2015 13:57:18
>>111023493
сюда отдельно подаются массив отрицательных и массив положительных, из отрицательного выйдет максимальный, из положительного минимальный

>>111023609

Птн 25 Дек 2015 13:57:47
>>111023741
Мне не это надо сделать

Птн 25 Дек 2015 13:58:02
>>111023645
Хуй знает. Мне так понятней.

Птн 25 Дек 2015 13:58:34
>>111023609
>kucha = kishki

Птн 25 Дек 2015 13:59:10
>>111023790
Возьми за пример

Птн 25 Дек 2015 13:59:15
>>111023809
Да мне непонятно как в заданном массиве найти максимальное отрицательное и минимальное положительное

Птн 25 Дек 2015 14:00:06
>>111023866
СУКА скобочка i скобочка макаба проглатывает

Соси короче, а не код тебе

Птн 25 Дек 2015 14:00:50
>>111024021
Да у тебя все равно код непонятный, зачем ты флоат юзаешь, если мне инт надо

Птн 25 Дек 2015 14:01:16
>>111023938
Крч, как я написал вышел, магаба сглатывает квадратные скобки, так что >>111023609 код не рабочий, и написать тут не выйдет, иди нахуй

Птн 25 Дек 2015 14:02:28
>>111024128
Пиши ii в чем проблема

Птн 25 Дек 2015 14:02:58
Ты дурак совсем?
http://www.cplusplus.com/forum/beginner/16878/

Птн 25 Дек 2015 14:14:49
>>111023493
Ты умеешь перебирать элементы массива в цикле? У каждого элемента есть свой индекс, берешь за индекс счетчик цикла, все такое.

А что такое "максимальное отрицательное", например? Это один из отрицательных элементов массива, который должен быть больше их всех.

А как понять, какой из отрицательных элементов массива больше всех других отрицательных элементов? Их нужно все перебрать, начиная с первого. Берешь первый элемент, проверяешь его отрицательность, и если он отрицателен - то называешь его условно наибольшим. Далее идет перебор - второй, третий и т. д. Если, например, второй является отрицательным и при этом больше того первого, который мы приняли условно за наибольший - то наибольшим становится второй и т. д. Смысл понятен?

Естественно, что значение и индекс того элемента, который мы в данный момент считаем наибольшим, еще не закончив перебор всех элементов, должны храниться в отдельных от массива переменных. В конце перебора всех элементов эти переменные и будут хранить значение и индекс наибольшего отрицательного элемента. В принципе, достаточно хранить лишь индекс - значение элемента всегда можно получить по его индексу.

Абсолютно аналогично обстоит дело с поиском наименьшего положительного элемента.

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

Птн 25 Дек 2015 14:15:50
>>111025222
Спасибо. Сделал. Можно ещё одну задачу спросить?

Птн 25 Дек 2015 14:16:00
>>111025305
Спрашивай.

Птн 25 Дек 2015 14:18:59
>>111025317
Дана пустая прямоугольная матрица [m x n ]. Заполнить её целыми числами от 1 до m x n по спирали, начиная с левого верхнего угла

Птн 25 Дек 2015 14:26:53
[email: sage]

>>111022183 (OP)
Python-god вкатился
max(i for i in L if i < 0) - min(i for i in L if i > 0)

Птн 25 Дек 2015 14:28:34
>>111025541
Лови

http://ideone.com/nGFmhS

Птн 25 Дек 2015 14:35:32
>>111025541
Можно сделать через две рекурсивные функции - одна для заполнения в цикле элементов в строке, другая - для заполнения в цикле элементов в столбце, и эти две функции будут по очереди друг друга вызывать. А в качестве передаваемых параметров функции будут принимать значение начального и конечного элемента в строке/столбце, от которого до которого им нужно пройти и заполнить строку/столбец. При каждом рекурсивном вызове граничные индексы, передаваемые в параметрах, должны модифицироваться: например, при первом вызове функции заполнения элементов строки она проходит ее целиком, затем вызывает функцию заполнения элементов столбца, на котором закончилось заполнение элементов строки, начиная со второго; после того, как эта функция отработает, она вызывает снова функцию заполнения строки - только теперь заполнение должно произойти в обратном порядке и тоже начиная со "второго" т.е. с предпоследнего, или второго с конца; далее - снова вызов функции заполнения столбца - но уже в обратном порядке, начиная со второго с конца и заканчивая вторым с начала.

Для того, чтобы несколько упростить хитровыебанную модификацию граничных индексов, передаваемых в параметры рекурсивных функций, посоветую даже сделать четыре таких функции, которые последовательно друг друга вызывают с некоторой модификацией параметров:
1) функция заполнения строки слева направо, начиная с текущего столбца (для начала работы программы это первый столбец первой строки);
2) ф-ция заполнения столбца сверху вниз;
3) строки справа налево;
4) и столбца снизу вверх;
5) повторить с п. 1.

Граничные индексы будут все ближе и ближе подвигаться друг к другу, и рано или поздно у тебя возникнет условие, когда они перехлестнутся - это и будет конец программы и возврат из всех рекурсивных функций. Такая проверка на конечное состояние должна быть у тебя в каждой из четырех функций - ты не можешь предсказать, на каком этапе это произойдет, если значения m и n могут варьироваться.

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

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

И напоследок: уверен, есть решение и без применения рекурсии. Но рекурсия проще и нагляднее для реализации, и если в условии не говорится "не использовать рекурсию" - то смело действуй.

Птн 25 Дек 2015 14:42:52
>>111026176
пиздец недоязык

Птн 25 Дек 2015 14:43:39
>>111027497
Императивоблядь, не способная в лямбда-выражения, закукарекала.

Птн 25 Дек 2015 14:45:42
>>111027552
но зачем простое делать сложным?
ты же не один кодер в мире - далай код читаемым

Птн 25 Дек 2015 14:45:53
>>111026176
На Шарпе версии 3 и выше соответственно:
(from i in L where i < 0 select i).Max() - (from i in L where i > 0 select i).Min();

Птн 25 Дек 2015 14:48:06
>>111027737
Простое сложным, лол? На лямбде это делается в одну строчку - что может быть проще. А "сложным" это кажется лишь кодеру-ПТУшнику, который оказался неспособен вместить в себя курс дискретки и даже не представляет себе, как выглядят предикаты, не знает даже банального языка запросов SQL в общем виде. Для знающего же все это выражение очень ясное по форме.

Птн 25 Дек 2015 14:50:15
>>111027552
>лямбда-выражения
Банальный синтаксический сахар

Птн 25 Дек 2015 14:50:40
>>111027978
я кодер самоучка (по вышке в гуманитарий), таких нас процентов 50. и под нас, вы, лямбда-задроты свой код и пишете.

Птн 25 Дек 2015 14:51:56
Аноны, помогите лучше с этим разобраться: анализ рекурсивного алгоритма вычисления факториала.


Вот это нам на лекциях не читали вообще

Птн 25 Дек 2015 14:54:25
>>111028211
Вы, самоучки-гуманитарии, нахуй никому не всрались. Если ты неспособен уследить за прогрессом в среде инструментов разработки - который произошел уже с ~десять лет как, лол - то лучше и не лезь в это дело. Ступай дальше дрочить тривиальные примерчики с циклами.

Птн 25 Дек 2015 14:55:47
>>111028339
Гугли про всякие О больше (эн), о малое (эн).

Птн 25 Дек 2015 14:56:23
>>111028693
Я что то нашёл, но нихуя непонятно вообще

Птн 25 Дек 2015 14:56:31
>>111028567
ты еще не понял что нас, самоучек уже большинство, и дрочит приходится именно вам, глубоко образованным.

Птн 25 Дек 2015 14:58:01
>>111028767
Такие тупые самоучки, как ты, ровным счетом ничего не решают.

>и дрочит приходится именно вам
Успокойся и прими свои таблетки.

Птн 25 Дек 2015 14:58:25
>>111028339
Гуглится за пять секунд же

http://stackoverflow.com/questions/16373065/complexity-of-factorial-recursive-algorithm

Птн 25 Дек 2015 15:01:21
>>111028893
нас все больше о больше. а ваших готовят из рук вон плохо. у меня однажны один образованный спрашивал как AJAХ работает.
>прими свои таблетки.
ты молодетз, просто дипломат от бога

Птн 25 Дек 2015 15:05:59
>>111028211
>лямбда-задроты
Проиграл с программиста-люмпена.
Тебя свои же пенделями не гоняют?

Это не ты полгода назад в треде писал, что лямбды, паттерн-матчинг и прочее - все понты и ненужные новые примочки, а нормальный продакшн так не делается?

Птн 25 Дек 2015 15:08:21
>>111029194
>нас
>ваших
И он еще отнекивается от приема таблеток, лол.

>у меня однажны один образованный спрашивал как AJAХ работает
Это был твой собрат по разуму, очевидно. Номинальный статус и корочка ничего не говорят.

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

Птн 25 Дек 2015 15:09:07
>>111028339
Если результат укладывается в максимальное целое, доступное на железе, то O(N).
Если результат больше, то будет зависеть от используемого алгоритма умножения, но с достаточной степенью общности можно оценить как O(N2 (log N)2)

Птн 25 Дек 2015 15:11:35
>>111028211
Я тоже самоучка, и что? По мне так гораздо проще для понимания словесный синтаксис выражения, действительно, очень похожего на sql-запрос, как выразился >>111027978-анон, чем нагромождение вложенных циклов.

Мимошел-самоучка-шарпист

Птн 25 Дек 2015 15:13:52
>>111029865
>нас
>ваших
обобщения тебе не ведомы, то только о таблетках
> и тупым ретроградством гуманитария.
бляха муха, я взял учебник и пару туториалов и к понедельнику уже неплохо знаю лямбда выражения. поработал с ними месяц - просто гуру.
а ты цени свое недоступное другим знание, да.

Птн 25 Дек 2015 15:14:34
>>111029865
>ретроградством
Воу воу, лямбда исчислению и анонимным функциям сто лет в обед, какое ретроградство? Отказ от них скорее модернизм

Птн 25 Дек 2015 15:15:02
>>111030328
>поработал с ними месяц - просто гуру.
> лямбда
ПРоигрываю с дауна все больше и больше.

Птн 25 Дек 2015 15:15:53
>>111030449
нечего сказать, решил проиграть

Птн 25 Дек 2015 15:16:51
>>111030521
Ты как себе представляешь гуру лямбда функций, червь? Ты ведь так и не разобрался, что это, как используется?

Птн 25 Дек 2015 15:17:04
>>111030328
>я взял учебник и пару туториалов и к понедельнику уже неплохо знаю лямбда выражения. поработал с ними месяц - просто гуру.
Ну так и хуль ты выебываешься тогда тут? Твой изначальный аргумент, который ты защищал, если вернуться к твоему посту >>111027737, была простота и понятность внешнего вида кода.

>>111030398
Речь о лаконичности кода. Ебанутый самоучка у нас тут защищает традиционныйЪ подходЪ - писать циклы и считать счетчики.

Птн 25 Дек 2015 15:19:27
>>111022183 (OP)
Через цикл for же. А 0 за что будешь принимать принимать, за минимальное положительное или максимальное отрицательное??

Птн 25 Дек 2015 15:20:00
>>111030626
>Ебанутый самоучка у нас тут защищает традиционныйЪ подходЪ - писать циклы и считать счетчики.
Так о том и речь, что лямбды -- это как раз старый проверенный подход и используются в CS дай бог памяти с 60х годов.

А тебя поддвачну в целом.

Птн 25 Дек 2015 15:20:10
>>111030608
> Ты ведь так и не разобрался
я ведь тебе так и сказал что я не в курсе, а ты теперь мня так и упрекаешь что я так и не в курсе

Птн 25 Дек 2015 15:22:38
>>111030827
Ни то, ни другое.

Птн 25 Дек 2015 15:22:55
>>111030879
Тогда как ты моюешь говорить
>я взял учебник и пару туториалов и к понедельнику уже неплохо знаю лямбда выражения. поработал с ними месяц - просто гуру.

И как тебя взяли на работу без фундаментальных знаний?

Птн 25 Дек 2015 15:26:48
>>111031104
>И как тебя взяли на работу без фундаментальных знаний?
какие фундаментальные, а? пришел один хуй кодить базу данных, он кроме нее умеет только в крестики нолики, но мускул он умеет уже лет 10.
его соответственно и взяли. какие там фундаментальные?
а я манагер, прогаю для себя чисто

Птн 25 Дек 2015 15:33:35
>>111031420
>какие фундаментальные, а?
Ну вот хотя бы те же лямбы, паттерн-матчинги, основы ФП в целом.

Птн 25 Дек 2015 15:35:35
>>111032005
>фундаментальные
>перечисляет утилитарные приёмы
Вон из профессии!

Птн 25 Дек 2015 15:38:07
>>111032174
Критикуя предлагай.
Сейчас пойдет вода аля
алгоритмы
стуктуры данных

Птн 25 Дек 2015 15:41:41
>>111032005
>паттерн-матчинги
паттерны? это когда вы фабрики классов создаете, тоже паттерн не?
вопрос, а когда вы между фабриками поезда уже начнете пускать, будет скоро?

Птн 25 Дек 2015 15:41:59
>>111032394
Именно, алгоритмы и структуры данных.
Без них ты хоть с лямбдами, хоть без них будешь изобретать неэффективные велосипеды.

Птн 25 Дек 2015 15:42:22
>>111032726
> >паттерн-матчинги
>паттерны? это когда вы фабрики классов создаете,
Ты троллишь или реально такой долбоеб?

Птн 25 Дек 2015 15:43:08
>>111032797
смысловая нагрузка поста = 0. зачем так?

Птн 25 Дек 2015 15:45:32
>>111032874
Затем, что ты как макака увидел знакомое слово и применил его невпопад.
Наш разговор выглядит со стороны примерно так:
>Здесь нужна контр-гайка
>Контр? Это как контр-страйк чтоли? Играл немного, говно вообще.

Птн 25 Дек 2015 15:47:54
>>111033124
молодец, видишь можешь если попросить.
а паттерн-матчинг это вообщет алгоритмы статистики, как и кластертинг (они немного похожи)

Птн 25 Дек 2015 15:48:56
>>111033351
>паттерн-матчинг
Это не алгоритм. Ты хоть бы погуглил. Давай я сделаю за тебя:
>метод анализа и обработки структур данных, основанный на выполнении определённых инструкций в зависимости от совпадения исследуемого значения с тем или иным образцом, в качестве которого может использоваться константа, предикат, тип данных или иная поддерживаемая языком конструкция.

Птн 25 Дек 2015 15:50:33
>>111031074
Ок. А может как нибудь так?
int raznost=0, neg=0, pos=0;
for (i=0; i<l; i++){
if (m<0){
if (m>neg or neg==0) neg=m;}
else if (m>0){
if (m<pos or pos==0) pos=m;}}
if (neg<0&&pos>0) raznost=pos-neg;
Правда в случае если положительных либо отрицательных нет, то разность выдаст нолю, но можно сделать чтоб явно нахуй посылало.

Птн 25 Дек 2015 15:51:23
>>111033441
>Это не алгоритм
как я и написал это алгоритМЫ. паттерн может быть любой, он инференции до поля чисел.
чет ты хуевый какой то кодер.

Птн 25 Дек 2015 15:52:15
>>111033616
> m
под m конечно же имелось в виду [CODE]m[/CODE], которое вакаба выпилила.

Птн 25 Дек 2015 15:52:31
>>111033694
Ты в себе? Ты опять выдумал определение слова и пытаешься свою неграмотность заместтить собственным словарем терминов?

Птн 25 Дек 2015 15:52:32
>>111033786
m{i}
сука

Птн 25 Дек 2015 15:53:28
>>111033819
и снова <ты неправ и все тут> пост

Птн 25 Дек 2015 16:07:22
>>111033819
Он же про языковый паттерн матчинг, типа такого
sign x
| x > 0 = 1
| x == 0 = 0
| x < 0 = -1

Птн 25 Дек 2015 16:23:29
Аноны, я 5 получил. Всех чмафф в пузико!

А, да, анончик, который писал мне поиск минимального и максимального, препод сказал что немного некорректно, но все равно спасибо!


← К списку тредов