на первой странице не найшол. Потому спрошу прям так.
Есть кто-то, шарящий в вижул-сях под билдой?
Предупреждаю: отвечать утвердительно опасно, но чрчайно полезно для меня.
Цитата: Искандер от марта 21, 2011, 15:08
вижул-сях под билдой
Это вброс или неграмотность? :???
Ах да, забыл, сабж не нужен.
Кто-то удалил моё сообщение?
Въобщем уже не суть.
Сижу пишу функцию "раздвинь и вставь".
Печален.
Пока на выходе всегда массив нулей.
Хорошо ещё правильного размера.
А сколько Вы потомков хотите на выходе?
Цитата: Bhudh от марта 22, 2011, 18:04
А сколько Вы потомков хотите на выходе?
Разве в таком случае будут потомки?
Цитата: Bhudh от марта 22, 2011, 18:04
А сколько Вы потомков хотите на выходе?
почему потомков?
сколько вставил — на столько и больше должен быть выходной массив.
Десу же.
Цитата: Искандер от марта 22, 2011, 17:58
Кто-то удалил моё сообщение?
В мусорном ведре ничего нет. Кто-то нас обманывает...
Цитата: Искандер от марта 22, 2011, 17:58
Въобщем уже не суть.
Сижу пишу функцию "раздвинь и вставь".
Печален.
Пока на выходе всегда массив нулей.
Хорошо ещё правильного размера.
При чём здесь Билдер?
Цитата: myst от марта 22, 2011, 18:17
В мусорном ведре ничего нет. Кто-то нас обманывает...
Значит виноват МТС интернет "ни единого разрыва".
Цитата: myst от марта 22, 2011, 18:17
При чём здесь Билдер?
Я пишу в этой среде.
Поэтому виновата именно она!
Во всех моих бедах.
Цитата: Искандер от марта 22, 2011, 18:39
Я пишу в этой среде.
Поэтому виновата именно она!
Во всех моих бедах.
А надо писать в текстовом редакторе.
По сути вопроса: как говаривал великий Линус: «Shut up and show your code».
Цитата: myst от марта 22, 2011, 19:01
«Shut up and show your code».
Вы уверены?
void writeGrad(float p, float i)
{
GQ++; //счётчик размера массива глобален
grad TM; //временная
int q=0; //защщёлка записи
for(int j=0; j<GQ||q==1; j++)
{
if(G[j].p>p) //дошли до места
{
TM=G[j]; //сохранили
G[j].p=p;
G[j].i=i; //вставили
for (int k = GQ; k>j+1; k--)
{
G[k] = G[k-1];
} //раздвинули
G[j+1] = TM; //вернули то шо сохранили туда где раздвинули
q++; //защщёлкнули бряк фора
}
}
if(q==0) //иначе дописали в конец
{
G[GQ].p=p;
G[GQ].i=i;
} //но всё равно получили [color=red]censored [/color]на выходе
/*for (int k=GQ; k>q+1; k--)
{
G[k]=G[k-1] ;
}
G[q+1]= TM; */
Form1->Edit3->Text=GQ;
for (int l=0; l < GQ+1; l++) {
Form1->Memo1->Lines->Add(FloatToStr(G[l].p));
}
}
А вообще, билдер давно уже устарел, к чёрту его. Чем на студии Вам не делается? Впрочем, источник бед явно не среда разработки.
G - глобальный массив типа структуры из двух флоутов.
GQ - его размер, глобальный.
Вроде всё.
Но оно не работает, когда вставляешь не в конец, а в середину.
Обратите внимание: как только речь зашла за конкретику, комментаторы удалились.
оменял в условии цикла по жи условие q==1 на q==0
Появился аццес виолэйшын.
Цитата: DeSha от марта 22, 2011, 19:52
Мне Ваш код - что русскому украинский.
Я понимаю по-украински.
хотя да, говорю я по-украински дерьмово.
Цитата: Искандер от марта 22, 2011, 19:55
Я понимаю по-украински.
Я тоже, але хріновє.
Конструкции як "
Form1->Edit3->Text=GQ" шарповцу съедают мозг. Не, всё понятно, чо. Просто слишком непривычно.
Так я не понял. Вы там что-то вроде исправили, заработало?
Цитата: Искандер от марта 22, 2011, 19:48
Обратите внимание: как только речь зашла за конкретику, комментаторы удалились.
Они должны не есть, не спать, но Вас уламывать и ждать?
Господи, что это за говнотрёхколёсник?
STL религия не позволяет использовать?
Цитата: DeSha от марта 22, 2011, 20:04
заработало?
нет, стало правильнее, но ещё хуже.
Цитата: myst от марта 22, 2011, 20:07
Они должны не есть, не спать, но Вас уламывать и ждать?
Не, ну было бы неплохо конешно...
Цитата: myst от марта 22, 2011, 20:11
Господи, что это за говнотрёхколёсник?
STL религия не позволяет использовать?
Знать бы, что за STL
Цитата: Искандер от марта 22, 2011, 20:17
Знать бы, что за STL
Программист на C++ не знает, что такое STL? :o
Как бы то ни было там есть резиновые массивы (man vector).
Всякое в жизни бывает
http://www.sgi.com/tech/stl/Vector.html
Сразу сказать, шо шаблоны — не, нельзя, да?
И чем мне помогут шаблоны, если дело в частностях.
А ещё лучше вот это: http://www.cppreference.com/wiki/container/start
Цитата: Искандер от марта 22, 2011, 20:25
Сразу сказать, шо шаблоны — не, нельзя, да?
И чем мне помогут шаблоны, если дело в частностях.
(Недоумевающе смотрит в монитор.)
Цитата: myst от марта 22, 2011, 20:26
А ещё лучше вот это
Тоже слишком не оно.
Задача гораздо проще.
Какой всё-таки С++ нихароший. Что-то не очень мне нравятся все эти штуки, что вы сейчас скинули, myst. В С# куда всё проще и лучше, по-моему, организовано. С++ сейчас чтётся вообще?
Я вам дал ссылку на стандартные контейнеры C++, которыми следует заменить тот прон. Что у Вас там за задача, я вообще без понятия.
Цитата: DeSha от марта 22, 2011, 20:31
Какой всё-таки С++ нихароший. Что-то не очень мне нравятся все эти штуки, что вы сейчас скинули, myst. В С# куда всё проще и лучше, по-моему, организовано. С++ сейчас чтётся вообще?
Он на C++ пишет, а не на C#.
Цитата: Искандер от марта 22, 2011, 20:29
Тоже слишком не оно.
Жесть. Это говорит велосипедист, тщетно пытающийся изобрести динамический массив.
Советовать человеку, который учится программировать, пропустить этап делания все вручную и сразу перейти на все готовое — не самый лучший совет.
Пусть ковыряется.
Цитата: myst от марта 22, 2011, 20:35
Жесть. Это говорит велосипедист, тщетно пытающийся изобрести динамический массив.
Я сразу сделал thestruct G[1000]
Динамическими массивами не увлекаюсь
Никаких контейнеров, всё делается проще.
Просто я сказочный долбоъб, перепутавший конъюнкцию с дизъюнкцией в условии внешнего цикла.
А теперь о вечном:
Чем ваши эти контейнеры лучше предложенного мной кода, делающего минимум телодвижений?
Цитата: RawonaM от марта 22, 2011, 20:42
Советовать человеку, который учится программировать, пропустить этап делания все вручную и сразу перейти на все готовое
Ну вот у нас есть тащемта библиотеки всяких кошерных функций на все случаи жизни. Были написаны в прежние годы умными людьми. Работают.
Моей-то там нет.
Я как-то не очень верю, что на этих вот контейнерах проще.
Цитата: RawonaM от марта 22, 2011, 20:42
Пусть ковыряется.
Способ научиться программировать, бесспорно, отличный, но недаром такое обильнейшее количество библиотек сделано, чтобы ими не пользоваться :yes: Я, например, ни за что лишний раз не буду насиловать мозг: взял готовое - и использую. Второй раз изобретать велосипед, который к тому же до тебя был изобретён гораздо качественнее, нет смысла совершенно, даже для начинающих то омоимас.
Цитата: DeSha от марта 22, 2011, 20:50
Я, например, ни за что лишний раз не буду насиловать мозг: взял готовое - и использую.
просто порой подгонять скопип**************е — куда большее насилие над мозгом. А тут коротенькая аккуратненькая функция.
И совсем другой вопрос, что я пишу командную строку на эдитах. Вот где надо возмущаться и кидать ссылки на хорошие, годные библиотеки.
Цитата: DeSha от марта 22, 2011, 20:50
Способ научиться программировать, бесспорно, отличный, но недаром такое обильнейшее количество библиотек сделано, чтобы ими не пользоваться :yes:
Так я и говорю, нужно отличать учебу от продуктивного программирования. Чтобы понять как все работает, нужно поковырять. Иначе получится, что научился использовать формулу, но доказательтва не знаешь, то есть, никакого нужного понимания нет.
То есть ссылок на командную строку мне пока не дадут всё-равно?
Цитата: Искандер от марта 22, 2011, 20:55
скопип**************е
Слишком много букв, Вам не кажется?
Цитата: Искандер от марта 22, 2011, 20:55
тут коротенькая аккуратненькая функция
Функция - может быть, но именно Ваша функция мне не seems таковой, увы.
Цитата: RawonaM от марта 22, 2011, 21:01
Так я и говорю, нужно отличать учебу от продуктивного программирования. Чтобы понять как все работает, нужно поковырять. Иначе получится, что научился использовать формулу, но доказательтва не знаешь, то есть, никакого нужного понимания нет.
А я чо, я не спорю чо. Просто говорю о том, что когда мозг уже начнёт думать на сях, тогда можно и покопи[censored]ить библиотеки. Впрочем, лучше-таки на ранних этапах начинать уже с ними знакомиться (уточню, знакомиться ≠ юзать), иначе потом тоже будет несладко.
Цитата: Искандер от марта 22, 2011, 21:05
ссылок на командную строку
Щиито?
Какую еще командную строку?
Я вам скажу вот чё: в реальной жизни STL не используется. Потому что если нужно высокоуровенное решение, то юзаем C#. Если нужно низкоуровненное, то STL не катит. Особенно когда речь идет о реальном времени.
Цитата: RawonaM от марта 22, 2011, 20:42
Советовать человеку, который учится программировать, пропустить этап делания все вручную и сразу перейти на все готовое — не самый лучший совет.
Пусть ковыряется.
Надо отличать программирование на конкретном языке от уроков алгоритмизации. Ты знаешь, что он вообще делает? Я нет. :)
Цитата: RawonaM от марта 22, 2011, 21:14
Потому что если нужно высокоуровенное решение, то юзаем C#
А я про щьто :smoke:
Однако, сторонники ++ убеждают в обратном, мол, "больше библиотек, чем в до-диезе", ну и что с того? В фортране тоже больше всего математических библиотек, и? Вы на нём что-то напишете нормальное? Немного сомневаюсь. В прологе - хер какие библиотеки, а,
стопицот лет немного пораскинув мозгами, можно сбацать такое, отчего и си, и шарп будут верещать от страха indeed. Но что-то менять в такой проге уж поверьте, ... в общем, понятно. Так что С++ может и неплохой язык, но в промышленных (подчёркиваю,
промышленных) целях лучше шарпа разве что... а ничего, впрочем.
Но это так, лирическое отступление. Здесь явно ни о каких масштабных проектах речи не идёт.
Цитата: myst от марта 22, 2011, 21:21
Ты знаешь, что он вообще делает? Я нет. :)
Ну там штота с массивами :umnik:
Цитата: DeSha от марта 22, 2011, 21:24
Так что С++ может и неплохой язык, но в промышленных (подчёркиваю, промышленных) целях лучше шарпа разве что... а ничего, впрочем.
В промышленных целях лучше шарпа я же сказал для чего. Для низкоуровненных решений. Диез не катит по производительности.
Цитата: RawonaM от марта 22, 2011, 21:31
Для низкоуровненных решений. Диез не катит по производительности.
То, что С++ переняло от С всякую работу с указателями и прочей нечистью - это да. Шарп это не очень любит, хотя в нём сие есть. Он для других целей немножечко.
Мы, видимо, разные оттенки придаём слову "промышленный". То, что это слово для меня, шарп идеален.
Цитата: Искандер от марта 22, 2011, 20:45
Я сразу сделал thestruct G[1000]
Что будет, если количество элементов превысит эту цифру?
Цитата: Искандер от марта 22, 2011, 20:45
Динамическими массивами не увлекаюсь
Никаких контейнеров, всё делается проще.
Цитата: Искандер от марта 22, 2011, 20:45
всё делается проще
Цитата: Искандер от марта 22, 2011, 20:45
проще
:D
Цитата: Искандер от марта 22, 2011, 20:45
Чем ваши эти контейнеры лучше предложенного мной кода, делающего минимум телодвижений?
Во-первых, глобальные переменные уже признак быдлокода.
Во-вторых, v.insert(find_if(v.begin(), v.end(), less<float>, val), val).
Цитата: DeSha от марта 22, 2011, 20:50
Способ научиться программировать, бесспорно, отличный
Отнюдь.
Цитата: RawonaM от марта 22, 2011, 21:31
В промышленных целях лучше шарпа я же сказал для чего. Для низкоуровненных решений. Диез не катит по производительности.
Сиплюсплюсных тормозных поделок никогда не видел?
Вот кстати то сообщение, которое МТС зажал:
либо неграмотность, либо вы чо то непоняли.
Среда билдер такая среда...
Скажите как выглядит код, вырубающий винду?
Цитата: myst от марта 22, 2011, 21:56
Сиплюсплюсных тормозных поделок никогда не видел?
Вопрос, конечно, не ко мне, но всё-таки.Я лично с С++ дело имел разве что на уровне "знаю, что сие существует". Так что особо чего сказать не могу.
На Си, например, надо умудриться написать что-то (особенно если там ещё будут
мои любимые грамотные ассемблерные вставки), что будет тормозить. Не, если Вы зададите, мягко говоря, стопицот массивов (тут сейчас эта тема, как я вижу, актуальна, ну значит будем говорить о них) со стопицот элементами в каждом, и захотите, чтобы внезапно все массивы обменялись ими, то да, тут зависнет всё, на чём это не напиши. А так, прямым доступом к памяти можно очень просто варьировать так, что даже многожрущие драйвера в пару десятков мб будут бегать, как на Ф1.
Цитата: Искандер от марта 22, 2011, 22:02
Среда билдер такая среда...
Я ж говорю - зачем она Вам? Переходите на студию. Не пожалеете, обещаю :UU: Привыкайте, так сказать, работать не в старье!
Цитата: Karakurt от марта 22, 2011, 22:03
Скажите как выглядит код, вырубающий винду?
#include <bomb.h>
void main(void)
{
explode(10);
}
Цитата: DeSha от марта 22, 2011, 22:05
Я ж говорю - зачем она Вам? Переходите на студию. Не пожалеете, обещаю :UU: Привыкайте, так сказать, работать не в старье!
Я осенью попользовался этой студией, больше не хочу. Может, для шарпа она и шоколадная, но для плюсов — тормозное УГ.
Цитата: myst от марта 22, 2011, 21:41
Цитата: Искандер от марта 22, 2011, 20:45
Я сразу сделал thestruct G[1000]
Что будет, если количество элементов превысит эту цифру?(1)
Цитата: Искандер от марта 22, 2011, 20:45
Динамическими массивами не увлекаюсь
Никаких контейнеров, всё делается проще.
Цитата: Искандер от марта 22, 2011, 20:45
всё делается проще
Цитата: Искандер от марта 22, 2011, 20:45
проще
:D
Цитата: Искандер от марта 22, 2011, 20:45
Чем ваши эти контейнеры лучше предложенного мной кода, делающего минимум телодвижений?
Во-первых, глобальные переменные уже признак быдлокода.(2)
Во-вторых, v.insert(find_if(v.begin(), v.end(), less<float>, val), val).(3)
1)Выскочит месеӂбокс "Поздравляем, вы задрот!"
2) Как бы есть другие варианты?
3) Вот для меня совершенно неочевидно как это работает и где по этому лежит хелпак.
Цитата: Искандер от марта 22, 2011, 22:08
Вот для меня совершенно неочевидно как это работает и где по этому лежит хелпак.
Может, с более простого начнёте? :-\
Массивы, особенно если в них по уши абсорбироваться, одна из непосильных мозгу тем (впрочем, как говорят друзья, "за кружкой пивка пойдёт всё").
Цитата: Искандер от марта 22, 2011, 22:02
Вот кстати то сообщение, которое МТС зажал:
либо неграмотность, либо вы чо то непоняли.
Среда билдер такая среда...
И к чему этот набор слов? О «вижул-сях под билдой» может говорить нахватавшийся слов школьник.
Задача без массивов это где?
Цитата: myst от марта 22, 2011, 22:13
Цитата: Искандер от марта 22, 2011, 22:02
Вот кстати то сообщение, которое МТС зажал:
либо неграмотность, либо вы чо то непоняли.
Среда билдер такая среда...
И к чему этот набор слов? О «вижул-сях под билдой» может говорить нахватавшийся слов школьник.
1) У меня кроме общего курса информатики особо нигде программирования и не было. Не работаю я кодером.
2) и где йта я чо не так сказал? Ся? Вижул апликэйшн? Билдер компилит? Чо не так?
Цитата: Искандер от марта 22, 2011, 22:08
1)Выскочит месеӂбокс "Поздравляем, вы задрот!"
2) Как бы есть другие варианты?
3) Вот для меня совершенно неочевидно как это работает и где по этому лежит хелпак.
Ламеры такие ламеры.
Цитата: Искандер от марта 22, 2011, 22:17
1) У меня кроме общего курса информатики особо нигде программирования и не было.
Я заметил.
Цитата: Искандер от марта 22, 2011, 22:17
Не работаю я кодером.
Это радует.
Цитата: Искандер от марта 22, 2011, 22:17
2) и где йта я чо не так сказал? Ся? Вижул апликэйшн? Билдер компилит? Чо не так?
Википедия может помочь.
Цитата: DeSha от марта 22, 2011, 22:11
Может, с более простого начнёте? :-\
Надо теорию прежде покурить какбэ.
Ня вы хуже Али уже.
От что википедия тут изменит?
Цитата: myst от марта 22, 2011, 22:17
Ламеры такие ламеры.
"Все мы когда-то были такими" ©
Цитата: myst от марта 22, 2011, 22:20
Надо теорию прежде покурить какбэ.
Сие и подразумевалось.
Цитата: Искандер от марта 22, 2011, 22:20
От что википедия тут изменит?
Try search for «Visual C».
Цитата: myst от марта 22, 2011, 22:20
Цитата: DeSha от марта 22, 2011, 22:11
Может, с более простого начнёте? :-\
Надо теорию прежде покурить какбэ.
Не-а.
Контроллеры я в данный момент теорю, а остальное мне взять негде.
Никто ещё нигде эту теорию ни разу не изложил.
Цитата: DeSha от марта 22, 2011, 22:21
"Все мы когда-то были такими" ©
Нет, конечно.
Цитата: myst от марта 22, 2011, 22:22
Цитата: Искандер от марта 22, 2011, 22:20
От что википедия тут изменит?
Try search for «Visual C».
Цитировали бы полностью...
Перечитал тему.
Ничего полезного.
Способов избавиться от глобальных переменных нет.
Способов раздвинуть и вставить менее чем тремя функциями нет.
Ссылок на доки по командной строке нет.
*глубоко вздохнул*
Цитата: myst от марта 22, 2011, 21:56
ЦитироватьВ промышленных целях лучше шарпа я же сказал для чего. Для низкоуровненных решений. Диез не катит по производительности.
Сиплюсплюсных тормозных поделок никогда не видел?
Как это относится к теме? Если кто-то молотком по пальцу бьет — это не значит, что молоток виноват.
Цитата: Искандер от марта 22, 2011, 22:29
Способов избавиться от глобальных переменных нет.
1) Передавать массив через параметр функции.
2) Создайть класс, в нем функции (де факто то же самое, но объектно-ориентированно).
Цитата: Искандер от марта 22, 2011, 22:29
Способов раздвинуть и вставить менее чем тремя функциями нет.
Уже тремя оказывается?
Цитата: RawonaM от марта 22, 2011, 21:12
Какую еще командную строку?
Если речь идет о замене виндовой среды для консольников своим велосипедом, то у меня самого подобные идеи возникают. Поддержка кодировок в ней столь ужасающа, что создание собственной реализации командной строки — священный долг любого программиста. Интересно, зачем вообще придумали кодовую страницу 65001, если большинство программ под ней вылетают без приличного объяснения своего ухода?..
Цитата: RawonaM от марта 22, 2011, 22:36
Цитата: myst от марта 22, 2011, 21:56
ЦитироватьВ промышленных целях лучше шарпа я же сказал для чего. Для низкоуровненных решений. Диез не катит по производительности.
Сиплюсплюсных тормозных поделок никогда не видел?
Как это относится к теме? Если кто-то молотком по пальцу бьет — это не значит, что молоток виноват.
Цитата: Искандер от марта 22, 2011, 22:29
Способов избавиться от глобальных переменных нет.
1) Передавать массив через параметр функции.
2) Создайть класс, в нем функции (де факто то же самое, но объектно-ориентированно).
Цитата: Искандер от марта 22, 2011, 22:29
Способов раздвинуть и вставить менее чем тремя функциями нет.
Уже тремя оказывается?
У меня одной, а как мист суветует, ятакпащитал, тремя.
Вот с точки зрения микроконтроллерной техники, если память позволяет -- создавай глобальную переменную. Быстродействие десу.
С точки зрения приложения надо ботать классы видимо.
Цитата: RawonaM от марта 22, 2011, 21:14
Я вам скажу вот чё: в реальной жизни STL не используется. Потому что если нужно высокоуровенное решение, то юзаем C#. Если нужно низкоуровненное, то STL не катит. Особенно когда речь идет о реальном времени.
Кстати, а тогда книжка Александреску (Modern C++ Design: Generic Programming and Design Patterns Applied) не нужна? Один ревьюер на амазоне назвал её template pathology ... :donno:
Цитата: RawonaM от марта 22, 2011, 22:36
Как это относится к теме?
Здесь оффтоп самого первого сообщения, если ты не заметил.
Цитата: RawonaM от марта 22, 2011, 21:14
Я вам скажу вот чё: в реальной жизни STL не используется.
Что за бред ты говоришь.
Цитата: Python от марта 23, 2011, 01:31
Если речь идет о замене виндовой среды для консольников своим велосипедом, то у меня самого подобные идеи возникают.
Так есть же уже несколько, мало?
До сих пор почему-то никто не спросил, зачем аффтару темы вообще вставлять в середину массива.
Цитата: Чайник777 от марта 23, 2011, 07:14
Кстати, а тогда книжка Александреску (Modern C++ Design: Generic Programming and Design Patterns Applied) не нужна? Один ревьюер на амазоне назвал её template pathology ... :donno:
Йир кокой? :)
Цитата: myst от марта 23, 2011, 08:18
ЦитироватьЯ вам скажу вот чё: в реальной жизни STL не используется.
Что за бред ты говоришь.
А зачем? C# есть.
Цитата: RawonaM от марта 23, 2011, 09:58
А зачем? C# есть.
А зачем C#, если есть Java?
Инструмент выбирают на основании многих факторов, а не потому, что есть X. Зайди, например, на sourceforge и посмотри, сколько проектов на C++ и сколько на C#. Внезапно, да?
Кстати, там же ты можешь обнаружить исходники и поискать в них STL, которая в реальной жизни не используется. ;)
Цитата: myst от марта 23, 2011, 10:08
ЦитироватьА зачем? C# есть.
А зачем C#, если есть Java?
Или Java.
Цитата: myst от марта 23, 2011, 10:08
Инструмент выбирают на основании многих факторов, а не потому, что есть X. Зайди, например, на sourceforge и посмотри, сколько проектов на C++ и сколько на C#. Внезапно, да?
И еще на основании того, к чему человек привык, что знает или когда это делалось (внезапно плюсы существуют задолго до появления кошерных прикладных языков).
На сегодня нет смысла строить прикладные проекты на С++. На нем делают те вещи, которые требуют быстродействия и достаточно полного контроля. Это идет вразрез с STL.
Когда не было С# и Java, это был единственный удобный вариант.
Цитата: RawonaM от марта 23, 2011, 10:12
И еще на основании того, к чему человек привык, что знает или когда это делалось
Это входит во многие факторы. :)
Цитата: RawonaM от марта 23, 2011, 10:12
На сегодня нет смысла строить прикладные проекты на С++.
Реальность говорит об обратном.
Цитата: RawonaM от марта 23, 2011, 10:12
На нем делают те вещи, которые требуют быстродействия и достаточно полного контроля.
Я думал, что вещи, требующие быстродействия, делают на C. Что такое достаточно полный контроль? Контроль чего?
Цитата: RawonaM от марта 23, 2011, 10:12
Это идет вразрез с STL.
В чём заключается разрез?
Мист почему-то считает, что вставлять в середину массива бессмысленно. :(
Мне нужен массив точек собранный по возрастанию координаты точки по траектории.
Цитата: myst от марта 23, 2011, 10:19
ЦитироватьНа сегодня нет смысла строить прикладные проекты на С++.
Реальность говорит об обратном.
Если завтра появится некий более удобный и выгодный язык чем C#, не стоит ожидать, что все кто уже привык к последнему так легко перескочат. Это занимает поколение, пока старые вымрут. После 30 лет менять привычки невероятно сложно.
Цитата: myst от марта 23, 2011, 10:19
Я думал, что вещи, требующие быстродействия, делают на C.
С не ОО, так что любой большой проект становится неапдейтываемый и нечитаемый.
Цитата: Искандер от марта 23, 2011, 10:21
Мист почему-то считает, что вставлять в середину массива бессмысленно. :(
Мне нужен массив точек собранный по возрастанию координаты точки по траектории.
Потому что я не знаю, что за задача. Вы же за четыре страницы так её и не рассказали. Почему массив нельзя потом отсортировать?
Цитата: RawonaM от марта 23, 2011, 09:58
Йир кокой? :)
http://www.amazon.com/Modern-Design-Generic-Programming-Patterns/dp/0201704315
2001.
Цитата: RawonaM от марта 23, 2011, 10:27
С не ОО, так что любой большой проект становится неапдейтываемый и нечитаемый.
Расскажи об этом разработчикам Linux, например. :)
И да, ОО само по себе не является гарантией читаемости и апдейтываемости.
Цитата: Чайник777 от марта 23, 2011, 10:28
ЦитироватьЙир кокой? :)
http://www.amazon.com/Modern-Design-Generic-Programming-Patterns/dp/0201704315
2001.
Ну вот, это был намек же. Тогда еще альтернатив не было.
Цитата: myst от марта 23, 2011, 10:30
Расскажи об этом разработчикам Linux, например. :)
Линукс это 70-ые годы, там он и остался. Для таких целей С подходит в общем-то.
Цитата: RawonaM от марта 23, 2011, 10:31
Ну вот, это был намек же. Тогда еще альтернатив не было.
Жаба была.
Цитата: RawonaM от марта 23, 2011, 10:31
Линукс это 70-ые годы, там он и остался. Для таких целей С подходит в общем-то.
:)
Цитата: myst от марта 23, 2011, 10:30
И да, ОО само по себе не является гарантией читаемости и апдейтываемости.
Само по себе вообще ничего ничем не является. Человеческий фактор всегда найдет способ испортить :)
Цитата: RawonaM от марта 23, 2011, 10:31
Цитата: myst от марта 23, 2011, 10:30
Расскажи об этом разработчикам Linux, например. :)
Линукс это 70-ые годы, там он и остался. Для таких целей С подходит в общем-то.
Стоп-стоп, проект большой? Огромный. Значит C, по твоим словам, не подходит.
Цитата: Чайник777 от марта 23, 2011, 10:32
ЦитироватьНу вот, это был намек же. Тогда еще альтернатив не было.
Жаба была.
Ну она еще плохо была. Начало только.
Цитата: myst от марта 23, 2011, 10:33
ЦитироватьЦитироватьРасскажи об этом разработчикам Linux, например. :)
Линукс это 70-ые годы, там он и остался. Для таких целей С подходит в общем-то.
Стоп-стоп, проект большой? Огромный. Значит C, по твоим словам, не подходит.
Это не один проект, а кучка маленьких и средних :) Во-первых, уже все написано, переписывать что ли с каждым выходом нового более удобного языка? Во-вторых, нужен больший контроль и бо́льшая производительность, С этим неплох.
Цитата: myst от марта 23, 2011, 10:28
Цитата: Искандер от марта 23, 2011, 10:21
Мист почему-то считает, что вставлять в середину массива бессмысленно. :(
Мне нужен массив точек собранный по возрастанию координаты точки по траектории.
Потому что я не знаю, что за задача. Вы же за четыре страницы так её и не рассказали. Почему массив нельзя потом отсортировать?
Зачем откладывать на потом то, чо можно сделать сразу?
Чтобы отсортировать потом, нужно будет раздвигать и вставлять ЖиКу раз, а тут только сравнивать и один раз раздвинуть и вставить.
Цитата: RawonaM от марта 23, 2011, 10:37
Это не один проект, а кучка маленьких и средних :)
Ох, выкручиваешьса же. :)
Так чо?
Я прав или не прав?
Цитата: Искандер от марта 23, 2011, 10:42
Зачем откладывать на потом то, чо можно сделать сразу?
Чтобы отсортировать потом, нужно будет раздвигать и вставлять ЖиКу раз, а тут только сравнивать и один раз раздвинуть и вставить.
Затем, что задачи решают сведением к уже решённым; затем, что макаронокод не нужен; затем, что существуют более эффективные алгоритмы сортировки, чем простые вставки.
Вам немедленно следует выкурить вот эту книгу (http://www.gotw.ca/publications/c++cs.htm).
Что надо сделать вообще?
Цитата: RawonaM от марта 23, 2011, 11:13
Что надо сделать вообще?
Ты тоже решил спросить? :)
Надо что-то раздвинуть и туда что-то вставить.
Цитата: RawonaMуже все написано, переписывать что ли с каждым выходом нового более удобного языка?
Задание: перечитать статью «Наш ответ Чемберлену» и ещё раз объяснить, что такого плохого хотел автор.
Цитата: Karakurt от марта 23, 2011, 11:15
Надо что-то раздвинуть и туда что-то вставить.
Бхудх уже спросил, сколько детей после этого он хочет. Не ответил.
лана, до компа доберусь -- читну.
Но как-то не вижу причин чтобы из готовых кусков собирался более короткий код, чем этот.
Цитата: Искандер от марта 23, 2011, 11:50
Но как-то не вижу причин чтобы из готовых кусков собирался более короткий код, чем этот.
Если уже кто-то этот кусок написал, то ваш код будет однострочковый. Вероятно короче.
Цитата: Karakurt от марта 23, 2011, 11:15
Надо что-то раздвинуть и туда что-то вставить.
Если это надо делать много раз, то, может, вместо массива стоит взять список?
Во вам прям целиком задачу пассказать?
И вы станете за это помогать и содействовать?
Сомневаюсь, уж не в обиду но.
Так вот: задача минимум -- прога, симулирующая движение поезда по заданному пути-профилю.
Задача максимум: вспомнить си и заботать чо новенького.
Цитата: RawonaM от марта 23, 2011, 11:56
Цитата: Искандер от марта 23, 2011, 11:50
Но как-то не вижу причин чтобы из готовых кусков собирался более короткий код, чем этот.
Если уже кто-то этот кусок написал, то ваш код будет однострочковый. Вероятно короче.
Экзекутив?
Конешно в этой случае не критично... но я сделал вот так. Пока делал, кстати, много нового вспомнил.
Цитата: Тайльнемер от марта 23, 2011, 12:14
Если это надо делать много раз, то, может, вместо массива стоит взять список?
Я же не зря дал ссылку на контейнеры, чтобы можно было выбрать подходящий. Я ж хотел во имя добра, но человек неадекватен.
Цитата: RawonaM от марта 23, 2011, 10:12
На сегодня нет смысла строить прикладные проекты на С++. На нем делают те вещи, которые требуют быстродействия и достаточно полного контроля. Это идет вразрез с STL.
По-моему, это не идёт в разрез с STL. STL сделан так, что не имеет оверхеда. Велосипеды работают не быстрее (или, в крайних случаях, незначительно быстрее) STL'я.
Цитата: http://en.wikipedia.org/wiki/Standard_Template_Library#CriticismsThe STL was created as the first library of generic algorithms and data structures for C++, with four ideas in mind: generic programming, abstractness without loss of efficiency, the Von Neumann computation model[1], and value semantics.
Кроме того, компиляторы оптимизированы под использование STL'я, а не велосипедов.
Цитата: Искандер от марта 23, 2011, 12:34
И вы станете за это помогать и содействовать?
Сомневаюсь, уж не в обиду но.
Я уже два раза пытался помочь и оба раза пожалел. Не в обиду, но.
Общаться на нормальном языке уже всё, никак? Регистры не переключаются?
Цитата: Тайльнемер от марта 23, 2011, 12:43
По-моему, это не идёт в разрез с STL. STL сделан так, что не имеет оверхеда. Велосипеды работают не быстрее (или, в крайних случаях, незначительно быстрее) STL'я.
Наконец-то разумный человек в треде. К тому же оверхед в данном случае вообще дело надцатое. Человек едва пык-мыкать научился, а уже о каких оверхедах рассуждает. Это же фэйспалм Хагрида.
Цитата: RawonaM от марта 23, 2011, 12:44
Опять плюсы сями называют >(
Вижул-си под билдой же. :)
Всем юным и не очень трёхколёсникам ежедневно читать вот это (http://en.wikipedia.org/wiki/NIH_syndrome).
Цитата: Тайльнемер от марта 23, 2011, 12:43
ЦитироватьНа сегодня нет смысла строить прикладные проекты на С++. На нем делают те вещи, которые требуют быстродействия и достаточно полного контроля. Это идет вразрез с STL.
По-моему, это не идёт в разрез с STL. STL сделан так, что не имеет оверхеда. Велосипеды работают не быстрее (или, в крайних случаях, незначительно быстрее) STL'я.
Ладно, уговорили. :) Но я вам дело говорю, для всего, что в риалтайме мы не используем STL.
Да, как-то Искадндер не содействует помощи. Если просто нужно сделать, то готовый контейнер проще.
Вообще у билдера есть по-моему свои штуки поверх стандартной библы, они еще проще.
Цитата: myst от марта 23, 2011, 12:47
Человек едва пык-мыкать научился, а уже о каких оверхедах рассуждает. Это же фэйспалм Хагрида.
Как вы сурово о Равонаме :)
Цитата: RawonaM от марта 23, 2011, 12:53
Но я вам дело говорю, для всего, что в риалтайме мы не используем STL.
Интересно! А что используете? Сишные функции?
Цитата: Чайник777 от марта 23, 2011, 13:03
ЦитироватьЧеловек едва пык-мыкать научился, а уже о каких оверхедах рассуждает. Это же фэйспалм Хагрида.
Как вы сурово о Равонаме :)
Это вообще-то не обо мне было вроде. Иначе мисту на сдобровать. 8-)
Я С++ами не пользуюсь уже лет 15.
Цитата: RawonaMОпять плюсы сями называют
Сими же.
Цитата: Тайльнемер от марта 23, 2011, 13:05
ЦитироватьНо я вам дело говорю, для всего, что в риалтайме мы не используем STL.
Интересно! А что используете? Сишные функции?
Лисапеды же :green:
Цитата: RawonaM от марта 23, 2011, 12:53
Ладно, уговорили. :) Но я вам дело говорю, для всего, что в риалтайме мы не используем STL.
А што у вас за риалтайм? :???
Цитата: Чайник777 от марта 23, 2011, 13:03
Как вы сурово о Равонаме :)
Да я не о нём вовсе.
Цитата: RawonaM от марта 23, 2011, 13:06
Я С++ами не пользуюсь уже лет 15.
Если вы последний раз брали С++ в руки в 14 лет, это как-то не серьёзно.
Цитата: Чайник777 от марта 23, 2011, 13:12
ЦитироватьЯ С++ами не пользуюсь уже лет 15.
Если вы последний раз брали С++ в руки в 14 лет, это как-то не серьёзно.
Действительно загнул. Наверное еще в 18 бывало баловался.
Цитата: myst от марта 23, 2011, 13:11
ЦитироватьЛадно, уговорили. :) Но я вам дело говорю, для всего, что в риалтайме мы не используем STL.
А што у вас за риалтайм? :???
Распознавание.
После 18 я заразился лингвистикой :(
Если Искандер лепит свою поделку с нуля, то ему надо срочно слезать с плюсов и трупобилдера и топать на дотнет, жабу, удавчик, etc. Если код чужой, то учить плюсы и продолжать грызть кактус. Судя по описанию задачи, фичи плюсов не нужны, а бегать по плюсовым граблям — хардкорное садомазо.
Конечно, выбор С++ неразумный. Гуи-поделки надо на шарпе делать и все. Можно на Делфи, если на старину тянет. Буильдер — это гибрид неразумный.
чисто теоретически, вот если вы спросите у менч как работат тису, то я наверно вм дам не фотографию силового шкафа, а наверно всё же книжку "Управление тэд гэт" и номер страницы.
Так?
Так вам вроде и дали ссылку на STL.
Цитата: RawonaM от марта 23, 2011, 13:18
Буильдер — это гибрид неразумный.
Да, это известный ужоёж. Но почему-то до сих пор на него западают студенты. :(
Вот главный ресурс по плюсам: http://www.cplusplus.com/
Enjoy!
Цитата: RawonaM от марта 23, 2011, 13:20
Так вам вроде и дали ссылку на STL.
Фотографию шкафа с подписями на чешском...
Цитата: Искандер от марта 23, 2011, 14:10
ЦитироватьТак вам вроде и дали ссылку на STL.
Фотографию шкафа с подписями на чешском...
Ладно, вот:
http://www.yolinux.com/TUTORIALS/LinuxTutorialC STL.html#LIST (http://www.yolinux.com/TUTORIALS/LinuxTutorialC++STL.html#LIST)
http://www.cplusplus.com/reference/stl/list/
См. пример в первой ссылке как пользоваться списком. Если не разберетесь, спрашивайте.
В буилдере используется в основном не стандартная библиотека, а своя — RTL.
У нее есть класс http://docwiki.embarcadero.com/VCL/2010/en/Classes.TList
Или у себя пишите tlist и давите Ф1.
А современный Builder мне нравится, тот который RAD Studio XE.
1) удобно и быстро делать гуй как в делфях
2) не требует .NET как всякие там C#
3) можно вставлять почти без изменений код на C/C++
Под мои задачи подходит идеально (я беру некий код, написанный в виде консольного приложения на C/C++ и делаю из него ГУЙовую утилиту).
При таком раскладе он может быть иногда и полезным, буилдер этот.
Но в целом, нечего в нем искать. Создатель Делфи ушел в Микрософт и создал дотнет по образу и подобию делфи+жаба, а Борланд продал эту линию непонятно кому, так что ожидать от него каких-то вкусных штучек не приходится, они все идут в шарп :)
Пняненька.
Ну и пока я ещё не совсем онлайн (нагло сбежал из вертепа) спрошу:
Так что же лучше -- шарп или џава-џава? И почему не плюс-плюс.
Цитата: amdf от марта 23, 2011, 14:27
Под мои задачи подходит идеально (я беру некий код, написанный в виде консольного приложения на C/C++ и делаю из него ГУЙовую утилиту).
И как оно работает не в Windows, нормально? :eat:
Цитата: RawonaM от марта 23, 2011, 14:23
В буилдере используется в основном не стандартная библиотека, а своя — RTL.
Стандартные средства следует использовать по возможности, нестандартные — по необходимости; а не наоборот. :umnik:
Цитата: myst от марта 23, 2011, 14:43
ЦитироватьВ буилдере используется в основном не стандартная библиотека, а своя — RTL.
Стандартные средства следует использовать по возможности, нестандартные — по необходимости; а не наоборот. :umnik:
RTL и есть стандарт в буилдере. STL какбы не есть часть языка таки.
Цитата: Искандер от марта 23, 2011, 14:42
Так что же лучше -- шарп или џава-џава?
(Пока Гринь не видит.) Я бы жабу таки взял. Завтра может понадобиться юзать программу не в Windows и вообще не на PC. У жабы с этим попроще.
Цитата: Искандер от марта 23, 2011, 14:42
Так что же лучше -- шарп или џава-џава? И почему не плюс-плюс.
плюсы устарели за годами. Настоятельно рекомендую шарп.
У Джавы нет нужных инструментов (гуи не построишь так просто) и она слишком сурова.
Кроме того, машину нужно везде устанавливать. Дотнет стоит везде, остальных в топку.
Цитата: RawonaM от марта 23, 2011, 14:46
RTL и есть стандарт в буилдере.
Ты троллишь или взаправду? :???
Цитата: RawonaM от марта 23, 2011, 14:46
STL какбы не есть часть языка таки.
:o
Ну как бы да я юзаю Рэд, но не для этих ваших гуев...
Просто это стандарт некий такой.
Цитата: RawonaM от марта 23, 2011, 14:48
У Джавы нет нужных инструментов (гуи не построишь так просто) и она слишком сурова.
Да ладно.
Цитата: RawonaM от марта 23, 2011, 14:48
Кроме того, машину нужно везде устанавливать.
Особенно на Ондроиде. :green:
Цитата: RawonaM от марта 23, 2011, 14:48
Дотнет стоит везде, остальных в топку.
Врёшь же.
Цитата: myst от марта 23, 2011, 14:50
ЦитироватьДотнет стоит везде, остальных в топку.
Врёшь же.
А конкретнее?
Цитата: Искандер от марта 23, 2011, 14:50
Ну как бы да я юзаю Рэд, но для этих ваших гуев...
Просто это стандарт некий такой.
Вижуал Студио перенял от делфи (и буилдера) все хорошее.
Цитата: RawonaM от марта 23, 2011, 14:52
А конкретнее?
Где дотнет в Mac OS, например?
Цитата: myst от марта 23, 2011, 14:54
ЦитироватьА конкретнее?
Где дотнет в Mac OS, например?
Это второй вариант.
Может Искандер в глаза никогда мака или маковеда не видел вообще.
Цитата: myst от марта 23, 2011, 08:19
Цитата: Python от марта 23, 2011, 01:31
Если речь идет о замене виндовой среды для консольников своим велосипедом, то у меня самого подобные идеи возникают.
Так есть же уже несколько, мало?
Давайте ссылки — оценим.
Ну скажем так. не фанат мака. Только кулинарный если.
Пользую винду и не возбухаю. Плюсплюмные проги при наличии исходника не доставляют особых проблем и под линухой.
Всё остальное втопку паравоза.
Есть еще mono в принципе.
Я говорю, у жавы нет удобной среды с возможностью за секунду сделать гуй. И она очень аскетична. Шарп балует наличием всяких удобных рюшечек.
Цитата: RawonaM от марта 23, 2011, 14:48
У Джавы нет нужных инструментов (гуи не построишь так просто) и она слишком сурова.
Кроме того, машину нужно везде устанавливать. Дотнет стоит везде, остальных в топку.
Дотнет меня в свое время удивил странностями обратной совместимости между разными версиями. А в чем сложность создания gui под джавой?
Цитата: RawonaMШарп балует наличием всяких удобных рюшечек.
А статью-то прочитал... :???
Цитата: Python от марта 23, 2011, 15:17А в чем сложность создания gui под джавой?
В какой среде?
Цитата: Python от марта 23, 2011, 15:07
Давайте ссылки — оценим.
PowerShell
http://www.powercmd.com/
http://sourceforge.net/projects/console/
И это не всё.
Цитата: RawonaM от марта 23, 2011, 15:24
В какой среде?
Так в какой сложность же. :eat:
Цитата: myst от марта 23, 2011, 15:25
ЦитироватьВ какой среде?
Так в какой сложность же. :eat:
У жабы вообще есть стандартная среда? Есть среда типа RAD?
Цитата: Искандер от марта 23, 2011, 15:12
Ну скажем так. не фанат мака. Только кулинарный если.
Пользую винду и не возбухаю. Плюсплюмные проги при наличии исходника не доставляют особых проблем и под линухой.
Всё остальное втопку паравоза.
Ничего, когда петух клюнет, поздно будет. Либо всё переписывать утирая слёзки придётся, либо смириться.
Они не доставляют, когда пишутся должным образом. Билдеровские говноподелки доставят массу острых ощущений, я гарантирую это.
Цитата: RawonaM от марта 23, 2011, 15:26
У жабы вообще есть стандартная среда?
А у кого есть стандартная среда? Что это за зверь такой вообще?
Цитата: RawonaM от марта 23, 2011, 15:17
Есть еще mono в принципе.
Я говорю, у жавы нет удобной среды с возможностью за секунду сделать гуй. И она очень аскетична. Шарп балует наличием всяких удобных рюшечек.
Почему же, кое-что есть. (Google) java gui builders (http://www.google.com/search?hl=uk&client=opera&hs=BXj&rls=en&q=java+gui+builders&btnG=%D0%9F%D0%BE%D1%88%D1%83%D0%BA)
Впрочем, с моей точки зрения, делать gui собственными руками (что в джаве вполне реально) — лучший путь, чем полагаться на инструмент, делающий за тебя что-то непонятное.
Цитата: myst от марта 23, 2011, 15:31
ЦитироватьУ жабы вообще есть стандартная среда?
А у кого есть стандартная среда? Что это за зверь такой вообще?
Это значит, что овер 90% пользуются этой средой для разработки на этом языке. Можешь поместить в словарь :)
Цитата: Python от марта 23, 2011, 15:32
Почему же, кое-что есть. (Google) java gui builders
Ну кое что и для питона есть. Это несравнимо. Хотя кто его знает, может что-нибудь стоящее да есть, только об этом мало кто знает.
Цитата: Python от марта 23, 2011, 15:32
Впрочем, с моей точки зрения, делать gui собственными руками (что в джаве вполне реально) — лучший путь, чем полагаться на инструмент, делающий за тебя что-то непонятное.
Особенно по времени лучше.
Еще лучше забыть джаву и писать сразу на байткоде. Зачем компилятор, делающий за тебя что-то непонятное, если можно собственными руками?
Жаба более развита, у неё несколько зрелых инструментов. Распределения пользователей не знаю, но суммарное покрытие приближается к 100 %.
Более развита чем кто? Я для жабы Eclipse использую. Впрочем, для питона, пхп и С тоже.
Цитата: RawonaM от марта 23, 2011, 15:39
Более развита чем кто?
Чем дотнет. Ты же о нём говоришь?
Цитата: myst от марта 23, 2011, 15:41
ЦитироватьБолее развита чем кто?
Чем дотнет. Ты же о нём говоришь?
Я говорю в целом о совокупности рабочей среды. То есть айдии, язык и что из этого выходит.
Да, кое в чем джава имеет преимущества. Но во многом и проигрывает. По совокупности для целей прикладных программ я советую дотнет. Вижуал студио таки рулит, плюс вкусности шарпа.
ЦитироватьЕще лучше забыть джаву и писать сразу на байткоде. Зачем компилятор, делающий за тебя что-то непонятное, если можно собственными руками?
Почему нет (не в байткоде, конечно, а на джаваассемблере)? Если овер 90% джава-функций состоят из вызовов других функций, разница не кажется столь огромной.
Ну вот и договорились. Джава не нужна, шарп не нужен, среда разработки не нужна. Будем писать на ассемблере в Блокноте. Не, блокнот тоже не нужен, будем писать через cat > unnamed.asm.
Мы это оставим как задание Искандеру. Отчет тебе даст ответы :)
*Испытывает воистину ангельскую радость от упоминания столь дорогих сердцу консольных инструментов*
Ну а если серьезно, при достаточно простой и удобной библиотеке для работы с GUI, среда разработки — излишество и дополнительный способ запутаться в собственном изделии. Для чего-то мало-мальски выходящего за пределы возможностей среды, задача разобраться в автоматически созданном коде вполне сравнима с раскопками в коде, написанном другим человеком.
Конечно, нафига нам расцветка синстаксиса, код комплишн и прочие бяки.
В соседней теме аналогично вон сказали, что медицина, пропитание, продолжительность жизни — все это не нужно.
Зачем вообще экран нужен? Флэхи? Даешь перфокарты вообще.
Цитата: Python от марта 23, 2011, 16:12
Ну а если серьезно, при достаточно простой и удобной библиотеке для работы с GUI, среда разработки — излишество и дополнительный способ запутаться в собственном изделии.
Не-не, когда файлов много, лазить по исходникам в одном редакторе не айс, не говоря уже о рефакторинге (которого, кстати, для C++ в микрософтостудии нет).
Расцветка синтаксиса — да, удобно. Подсказки с нужными ключевыми словами —да, удобно, если не мешает выполнять другие действия. А вот если среда для клепания окошек становится принципиально необходимой, это признак не хорошей среды, а плохого языка. В идеале, язык для оформления gui должен быть прост, как html. Джава, конечно, посложнее будет, но для ручного написания она приспособлена лучше, чем Delphi или Visual C.
Цитата: Python от марта 23, 2011, 16:35
В идеале, язык для оформления gui должен быть прост, как html.
Именно! Это должен быть дескриптивный язык. GUI должен быть полностью отделён от логики. Кстати, не только GUI, но и TUI и любой другой. Тогда можно будет цеплять любые морды, пользователь сможет перекраивать интерфейс, как ему удобно. Эпоха прибитых гвоздями интерфейсов должна быть предана забвению.
Цитата: myst от марта 23, 2011, 16:33
А вот если среда для клепания окошек становится принципиально необходимой, это признак не хорошей среды, а плохого языка. В идеале, язык для оформления gui должен быть прост, как html.
Ага, так еще и надо создать специальный для гуи язык?! Как же быть с тем, что языки вообще не нужны, даешь ассебмлер каждому?
Это может хорошая идея, но почему-то никто этого не делает.
Цитата: Python от марта 23, 2011, 16:35
Visual C
Вы так используете эти буквы в таком контексте, как будто это язык какой-то. И вообще как будто это существует.
А в чем преимущество Java для ручного написания гуи?
Цитата: myst от марта 23, 2011, 16:39
ЦитироватьВ идеале, язык для оформления gui должен быть прост, как html.
Именно! Это должен быть дескриптивный язык. GUI должен быть полностью отделён от логики. Кстати, не только GUI, но и TUI и любой другой. Тогда можно будет цеплять любые морды, пользователь сможет перекраивать интерфейс, как ему удобно. Эпоха прибитых гвоздями интерфейсов должна быть предана забвению.
Визуальная студия приближается к этому идеалу.
Хотя, конечно, язык для гуи еще не придумали.
У веба все проще и красивее. Оконный гуй задалбывает порой. Что в хтмл как два байта переслать делается, в оконном иногда много телодвижений.
Цитата: RawonaMА где ее взять, статью эту?
В мой блог загляни, я наизусть ссылки не помню...
Цитироватьно и TUI и любой другой
TUI еще нужен в наше время?
Не! Стоп! стоп! стоп!
Представьте на минутку, что я маленькая девочка и делаю окошечки перетаскиванием мышечкой компоненьтиков на формочку. И только так.
Представили?
А теперь скажите: какой, нахрен, язык для ГУИ?
Обработчики на кнопочки тоже мышечкой рисуте? :)
В любом случае, формочку нужно как-то сохранить на диске. Если так, то формат, в котором сейвится сабж, должен представлять собой язык, пригодный для редактирования ручками. Можно, конечно, сейвить какой-то запутанный бинарник вместо текста, но зачем?
Цитата: RawonaM от марта 23, 2011, 16:43
Визуальная студия приближается к этому идеалу.
Хотя, конечно, язык для гуи еще не придумали.
XAML отправлен в топку? Студия позволяет делать многомордовые приложения?
Цитата: myst от марта 23, 2011, 17:38
Студия позволяет делать многомордовые приложения?
Нан дес?
Цитата: Искандер от марта 23, 2011, 17:18
Представьте на минутку, что я маленькая девочка и делаю окошечки перетаскиванием мышечкой компоненьтиков на формочку. И только так.
Представили?
А теперь скажите: какой, нахрен, язык для ГУИ?
Девочка, иди поиграй, не мешай дядям.
Цитата: myst от марта 23, 2011, 17:38
XAML отправлен в топку?
Не знаком.
Цитата: myst от марта 23, 2011, 17:38
Студия позволяет делать многомордовые приложения?
Не очень понимаю в чем задача, но интуитивно могу сказать, что наверное таки да.
Цитата: Искандер от марта 23, 2011, 17:18
Не! Стоп! стоп! стоп!
Представьте на минутку, что я маленькая девочка и делаю окошечки перетаскиванием мышечкой компоненьтиков на формочку. И только так.
Представили?
А теперь скажите: какой, нахрен, язык для ГУИ?
Этой девочке совершенно пофиг, каким языком запишутся результаты ее перетаскиваний. Мы же тут о высоком, о том, что за этим всем стоит.
Цитата: RawonaM от марта 23, 2011, 17:46
Не очень понимаю в чем задача
Я же нарисовал. :(
Цитата: Искандер от марта 23, 2011, 14:42
Так что же лучше -- шарп или џава-џава?
Да начнётся холивор!
Цитата: myst от марта 23, 2011, 14:47
(Пока Гринь не видит.) Я бы жабу таки взял. Завтра может понадобиться юзать программу не в Windows и вообще не на PC. У жабы с этим попроще.
:+1:
Цитата: myst от марта 23, 2011, 14:42
Цитата: amdf от марта 23, 2011, 14:27
Под мои задачи подходит идеально (я беру некий код, написанный в виде консольного приложения на C/C++ и делаю из него ГУЙовую утилиту).
И как оно работает не в Windows, нормально? :eat:
Вы так говорите, как будто поделки на C# работают не под Windows. Как показывает практика, скомплированные хеллоуворлды из учебника работают под моно отлично (хотя вертикальный хэлоуворлд на на монгольском уже не заработал), а реальные программы не запускаются.
Про обратную сторону знаю ещё меньше, но Banshee вот до сих пор для Windows недоадаптировали.
Кстати, пользуясь случаем:
Тайльнемер, адаптируйте Символьную палитру под Mono!
Цитата: myst от марта 23, 2011, 17:45
Девочка, иди поиграй, не мешай дядям.
Надо было в блоге тему открыть. да?
Цитата: RawonaM от марта 23, 2011, 17:47
Этой девочке совершенно пофиг, каким языком запишутся результаты ее перетаскиваний. Мы же тут о высоком, о том, что за этим всем стоит.
просто мне так показалось - перетаскивания мышкой предлагают искоренить и заменить на забивание кода.
мне это не понравилось.
Цитата: RawonaM от марта 23, 2011, 16:41
А в чем преимущество Java для ручного написания гуи?
Много в чем. Например, можно обойтись без ручного подбора координат для каждой кнопки — это делает за нас лэйаутменеджер. Инициализация графических объектов производится проще. В отл. от делфей, джава изначально создавалась для написания апплетов от руки.
Цитата: RawonaM от марта 22, 2011, 21:12
Какую еще командную строку?
уже писал же: типа как в автокаде.
Цитата: Python от марта 23, 2011, 18:05
ЦитироватьА в чем преимущество Java для ручного написания гуи?
Много в чем. Например, можно обойтись без ручного подбора координат для каждой кнопки — это делает за нас лэйаутменеджер. Инициализация графических объектов производится проще. В отл. от делфей, джава изначально создавалась для написания апплетов от руки.
Вроде для шарпа тоже есть всякие лэйаутменеджеры.
Еще в чем преимущество?
Цитироватьпросто мне так показалось - перетаскивания мышкой предлагают искоренить и заменить на забивание кода.
мне это не понравилось.
Идеал — возможность работать с формочками и как в делфях, и непосредственно в виде кода. Представим себе дримвивер или фронпейдж, но только не для веб, а для гуи. Правда, языки алголоподобной структуры для этого не очень удобны. Нужен либо лисп какой-нибудь, либо суржик из xml и паскаля/си/джавы.
Цитата: RawonaM от марта 23, 2011, 18:11
Вроде для шарпа тоже есть всякие лэйаутменеджеры.
Вроде-мавроди... А у жабы в стандартной библиотеке. :P
Цитата: Python от марта 23, 2011, 18:15
Идеал — возможность работать с формочками и как в делфях, и непосредственно в виде кода. Представим себе дримвивер или фронпейдж, но только не для веб, а для гуи. Правда, языки алголоподобной структуры для этого не очень удобны. Нужен либо лисп какой-нибудь, либо суржик из xml и паскаля/си/джавы.
Для клея JavaScript вполне себе.
Цитата: myst от марта 23, 2011, 18:20
Вроде-мавроди... А у жабы в стандартной библиотеке. :P
У шарпа тоже AFAIK.
Цитата: myst от марта 23, 2011, 18:20
ЦитироватьВроде для шарпа тоже есть всякие лэйаутменеджеры.
Вроде-мавроди... А у жабы в стандартной библиотеке. :P
Это хорошо. Я правда не понимаю стремления делать гуи вручную. По-моему проще кликнуть, отсайзить и все дела.
Цитата: RawonaM от марта 23, 2011, 18:25
По-моему проще кликнуть, отсайзить и все дела.
Displays vary in size, bro.
Цитата: myst от марта 23, 2011, 18:28
ЦитироватьПо-моему проще кликнуть, отсайзить и все дела.
Displays vary in size, bro.
Для этого придумали шкалы.
В общем, знаменатель всё тот же: примерно одно и тоже по функционалу, но жаба побеждает своей кроссплатформенностью.
http://msdn.microsoft.com/en-us/library/ms229605.aspx
Цитата: myst от марта 23, 2011, 18:30
В общем, знаменатель всё тот же: примерно одно и тоже по функционалу, но жаба побеждает своей кроссплатформенностью.
Нет, шарп и студия побеждает своим удобством и лепотой кода.
Вы так про преимущество кросплаты говорите, какбудто не овер 90% в окнах сидят.
ПС Я на линуксе работаю, если шо.
Цитата: RawonaM от марта 23, 2011, 18:33
Нет, шарп и студия побеждает своим удобством и лепотой кода.
Ну и чем студия удобнее того же Эклипса?
Цитата: RawonaM от марта 23, 2011, 18:33
Вы так про преимущество кросплаты говорите, какбудто не овер 90% в окнах сидят.
В мире мобильных устройств окна влачат жалкое существование на помойке.
А есть ещё мир ынтырпрайз-софта, там дотнетом тоже не пахнет.
Цитата: myst от марта 23, 2011, 18:41
ЦитироватьНет, шарп и студия побеждает своим удобством и лепотой кода.
Ну и чем студия удобнее того же Эклипса?
Чуть меньше чем всем.
Цитата: RawonaM от марта 23, 2011, 18:43
Чуть меньше чем всем.
Ты сегодня очень подробный. :)
Я, вот, осенью плевался на студию и хотел сделать что-то плохое с её создателями.
Цитата: myst от марта 23, 2011, 18:44
Я, вот, осенью плевался на студию и хотел сделать что-то плохое с её создателями.
Если на нее плеваться, то она так же будет отвечать :)
Цитата: RawonaM от марта 23, 2011, 18:43
Цитата: myst от марта 23, 2011, 18:41
ЦитироватьНет, шарп и студия побеждает своим удобством и лепотой кода.
Ну и чем студия удобнее того же Эклипса?
Чуть меньше чем всем.
:+1:
Эклипс мне показался невкусным, несмотря на myst'а. Хотя, наверное, это потому, что он у меня адски тормозит. На адмену ад студыі.
Цитата: RawonaM от марта 23, 2011, 18:48
Если на нее плеваться, то она так же будет отвечать :)
Она первая начала. :(
Эклипс тормозной, это да. И глючный.
Вооот.
Вам просили передать, чтоб отстали от меня со всякими шарпеями :)
Видите как бывает.
А про вектор сказали, что да, было бы неплохо, будь я посообразительней.
Цитата: RawonaM от марта 23, 2011, 19:04
Эклипс тормозной, это да. И глючный.
Ты его на нетбуке запускал, штоле?
Эклипс тормозной. Но, ІМНО, для большинства случаев вполне хватает и чего-то типа блокнота с подсветкой синтаксиса (notepad2 и под.).
Вот микрософтоподелие действительно тормозное, да ещё и падает на обработке исходников. Позор.
NetBeans кто-нить пробовал?
Что еще для жабы есть?
Цитата: RawonaM от марта 23, 2011, 19:52
Что еще для жабы есть?
А что ещё для дотнета есть?
Для дотнета есть студия и больше ниче не надо. Я спрашиваю, есть ли среда разработки потолковее?
Цитата: RawonaM от марта 23, 2011, 20:00
Для дотнета есть студия и больше ниче не надо.
Так и запишем, ничего, кроме это поделия, нету. Кстати, оно работает в Линуксе, например? :eat:
Цитата: RawonaM от марта 23, 2011, 20:00
Я спрашиваю, есть ли среда разработки потолковее?
То не надо, то потолковее... Я тебя понимаю, студио-кактус несладок, но под бесперспективные платформы делать толковые среды разработки дураков нет.
Цитата: RawonaM от марта 23, 2011, 20:00
ЦитироватьЯ спрашиваю, есть ли среда разработки потолковее?
То не надо, то потолковее... Я тебя понимаю, студио-кактус несладок, но под бесперспективные платформы делать толковые среды разработки дураков нет.
Вопрос относился к Джаве. Для дотнета есть дэс.
Цитата: RawonaM от марта 23, 2011, 21:16
Для дотнета есть дэс.
Для дотнета, как мы выяснили, кроме микрософтовского поделия, ничего и нет. Что какбэ намекает на ненужность дотнета в целом.
Ты можешь по теме говорить?
Цитата: RawonaM от марта 23, 2011, 19:52
NetBeans кто-нить пробовал?
Использовал для очень маленькой програмки для телефона. Работало.
Цитата: RawonaM от марта 23, 2011, 21:27
Ты можешь по теме говорить?
Нет, потому что C++ Builder — мертвяк, а я не некрофил. :smoke:
Цитата: myst от марта 23, 2011, 19:48
Вот микрософтоподелие действительно тормозное, да ещё и падает на обработке исходников. Позор.
Что за обработка? Компиляция, рефакторинг или что-то ещё?
Нет в этом поделии никакого рефакторинга для C++. Оно для банальной навигации по коду долго парсит исходники и загоняет их базу, которая тормозит и насилует диск.
Цитата: myst от марта 23, 2011, 14:42
Цитата: amdf от марта 23, 2011, 14:27
Под мои задачи подходит идеально (я беру некий код, написанный в виде консольного приложения на C/C++ и делаю из него ГУЙовую утилиту).
И как оно работает не в Windows, нормально? :eat:
Не входит в мои задачи.
Цитата: myst от марта 23, 2011, 19:48
Вот микрософтоподелие действительно тормозное, да ещё и падает на обработке исходников. Позор.
Эклипс тормознутее же.
Цитата: myst от марта 23, 2011, 19:53
А что ещё для дотнета есть?
Цитата: myst от марта 23, 2011, 21:13
Так и запишем, ничего, кроме это поделия, нету. Кстати, оно работает в Линуксе, например? :eat:
#develop (http://www.sharpdevelop.net/) для Windows, MonoDevelop (http://monodevelop.com/) для Mono. Кстати, необходимость форка как бы намекает на переносимость дотнета...
Кстати, недолгое знакомство с MonoDevelop у меня оставило достаточно приятные впечатления.
Цитата: amdf от марта 23, 2011, 23:25
Цитата: myst от марта 23, 2011, 14:42
И как оно работает не в Windows, нормально? :eat:
Не входит в мои задачи.
Мне практика показывает, что код на WinAPI работает под Wine лучше, чем код на .NET под Mono. >(
Цитата: Искандер от марта 23, 2011, 19:19
Вооот.
Вам просили передать, чтоб отстали от меня со всякими шарпеями :)
Видите как бывает.
:+1:
Если учить, то лучше что-то одно, таки да.
А с шарпеем вообще лучше быть осторожнее. Его делало мелкое программное обеспечение, что уже повод задуматься. А ещё и с его переносимостью...
Цитата: RawonaM от марта 23, 2011, 19:52
NetBeans кто-нить пробовал?
Что еще для жабы есть?
Пару лет назад увлекся явой. Естественно, перво-наперво встал вопрос по IDE. Потыкался в Нетбинсе и в Эклипсе, после чего Эклипс безжалостно снес. Правда, в основном, я использую Нетбинс как редактор и компилятор, потому что привык писать "ручками". Но к неоспоримым преимуществам Нетбинса надо отнести отличный интерфейс для работы с базами данных. А поскольку я пишу словарь, то мне как раз это и надо. Эта часть Нетбинса очень динамично развивается.
Цитата: Rachtyrgin от марта 24, 2011, 07:01
Но к неоспоримым преимуществам Нетбинса надо отнести отличный интерфейс для работы с базами данных. А поскольку я пишу словарь, то мне как раз это и надо. Эта часть Нетбинса очень динамично развивается.
Что за интерфейс?
Ну, грубо говоря, еще где-то год назад, для того, чтобы создать базу, надо было запускать специальную консольную прогу. Для того, чтобы создать таблицу - надо было готовить специальный скрипт на сэквеле (ну, его еще называют скулом). Удалить таблицу - снова сэквел. И т.д. Сейчас это все делается командами из меню самого Нетбинса одним нажатием кнопки. Что ни говори, а удобно. Оговорюсь: я работаю с базой JavaDB, она же Derby.
Цитата: Rachtyrgin от марта 24, 2011, 07:01
Правда, в основном, я использую Нетбинс как редактор и компилятор
А как еще можно использовать Нетбинс и Эклпипс?
Цитата: Demetrius от марта 24, 2011, 01:21
Цитировать
Вам просили передать, чтоб отстали от меня со всякими шарпеями :)
Видите как бывает.
:+1:
Если учить, то лучше что-то одно, таки да.
Таки одно, но Java или С#. Ну не хочет как хочет, пусть учит язык 20-ти летней давности.
Цитата: Demetrius от марта 23, 2011, 17:53
Кстати, пользуясь случаем:
Тайльнемер, адаптируйте Символьную палитру под Mono!
Я бы рад, но не знаю, как. «Символьная палитра» в двух местах использует WinAPI:
1) Предотвращение активизации окна при клике на символ.
2) Собственно отсылка символов API-функцией SendInput.
Если вы подскажете адекватное кроссплатформенное решение, я сделаю.
Цитата: RawonaM от марта 24, 2011, 08:31
А как еще можно использовать Нетбинс и Эклпипс?
Для создания приложения, основанного на платформе Нетбинс или Эклипс. Получается, конечно, быстрее, но код будет раза в полтора длиннее. Кроме того, некоторые куски кода будут не доступны для вашего редактирования, а некоторые - даже для прочтения. Этакая "вещь в себе".
Цитата: Тайльнемер от марта 24, 2011, 08:35
Я бы рад, но не знаю, как. «Символьная палитра» в двух местах использует WinAPI:
1) Предотвращение активизации окна при клике на символ.
2) Собственно отсылка символов API-функцией SendInput.
Если вы подскажете адекватное кроссплатформенное решение, я сделаю.
Для начала можно эти функции просто исключить из кроссплатформенного решения и копировать символы через буфер.
Я правда прогой не пользуюсь, может она без этого неузабельная :)
Цитата: Тайльнемер от марта 24, 2011, 08:35
Если вы подскажете адекватное кроссплатформенное решение, я сделаю.
Я не подскажу, ибо не знаю. :'(
Цитата: RawonaM от марта 24, 2011, 08:31
А как еще можно использовать Нетбинс и Эклпипс?
Там хотя бы есть рефакторинг. :green:
а как сделать этакое нешто, штобы решалось в реальном времени уравнение вида dv/dt = f(x, v), где интересуют координата и скорость в каждый момент времени (в данный момент времени)....
:???
Уточните. Если вам нужно это:
struct Vector {
// ...
};
// ...
const double dt = ...;
Vector x(...), v(...);
// ...
void tick() {
v += f(x, v) * dt;
x += v * dt;
}
то вы должны знать, что это вообще вещь элементарнее некуда. Всё легко вытекает из исходной математики.
У-ху-ху... тут-то и начинается принципиальное блджаа-ааа-ааа-ааад!
Я не совсем понял, что именно вы предложили :(
Цитата: arseniiv от мая 1, 2011, 18:41
v += f(x, v) * dt;
типа вэ равно предыдущее вэ плюс ускорение на некоторое дельта-тэ?
ну впринципе покатит, но сколько этот массив весить будет...
для часа работы...
Цитата: Искандер от мая 1, 2011, 18:52
ну впринципе покатит, но сколько этот массив весить будет...
Какой массив? Если вам нужно построить функции v(t) и x(t), разве он не нужен будет и так?
В общем, опишите задачу точно и конкретно.
Цитата: arseniiv от мая 1, 2011, 18:57
Какой массив? Если вам нужно построить функции v(t) и x(t), разве он не нужен будет и так?
ну впринципе да, я пришёл к идее, что вы правильно предлагаете
Цитата: arseniiv от мая 1, 2011, 18:57
В общем, опишите задачу точно и конкретно.
едет поезд. точка.
Что за векторный велосипед опять?!11
Этот ваш дотнет и эта ваша жаба у меня на компе вообще не стоят. И не стояли никогда. Зато у меня, как и у всех, стоит эмулятор Спектрума. Так что у нас там переносимее?
Цитата: Alone Coder от мая 1, 2011, 19:12
Этот ваш дотнет и эта ваша жаба у меня на компе вообще не стоят. И не стояли никогда.
Название темы Спектрум не показывает, штоле? :???
Цитата: Alone Coder от мая 1, 2011, 19:12
Зато у меня, как и у всех в моей секте, стоит эмулятор Спектрума в мозге.
Очевидоправка.
Цитата: Alone Coder от мая 1, 2011, 19:12
Так что у нас там переносимее?
Нам отсюда здесь не видно, что у вас там. :eat:
Цитата: myst от мая 1, 2011, 19:05
Что за векторный велосипед опять?!11
ну так зато мне приблизительно понятно что это и как его сделать, а не...
Кстати та первая часть задачи у меня заработала, осталось только редактирование залудить
Цитата: myst от мая 1, 2011, 19:05
Что за векторный велосипед опять?!11
Сегодня у меня, похоже, день непонимания намёков.
И чем плохо? Уравнение векторное; по-моему, вплоне естественно использовать что-то в виде. Вы желаете всё на отдельные компоненты развернуть?
Цитата: arseniiv от мая 1, 2011, 19:44
И чем плохо?
Тем, что векторов уже ну просто завались.
Цитата: myst от мая 1, 2011, 19:53
Тем, что векторов уже ну просто завались.
так и как этого избежать-то
Так что же, мне Искандеру объяснять STL? Я пока временно не улучшаю знания C++ [и потому не могу объяснять то, что не очень пока знаю, а именно как STL поможет здесь, если поможет; и почему бы это не сделать вам, ведь недовольны именно вы] — время ещё есть. Хотя, мне кажется, для математических векторов в STL iаблонов не было. А Boost — хорошо, но не слишком ли тяжело? Думаю, сторонники малофункциональных классов на одну конкретную программу найдутся.
Цитата: arseniiv от мая 1, 2011, 19:59
Так что же, мне Искандеру объяснять STL?
STL объяснять надо, а велоподелку внезапно не надо. Забавная волна мозга.
Векторы пространственные, что ли?
хм, я теряю нить...
векторы бывают ТОЛЬКО пространственные
определение у их такое.
myst, вы подумали что ли, что я собираюсь заменить std::vector? :D
Зря, зря они как попало брали некоторые слова из математики. Вектор — особенное неуместное слово. Векторы обычно понимаются не как списки координат, а как элементы некоторого пространства с определёнными свойствами. Чем не угодили список, массив, чтонибудьещё. Да, список зарезервировали за односвязным динамическим, но я тут ни при чём.
Цитата: arseniiv от мая 1, 2011, 20:44
Векторы обычно понимаются не как списки координат, а как элементы некоторого пространства с определёнными свойствами.
это общепрогерское, возможно даже шире у америкосов - называть вектором матрицу 1хДО***
Так я и не пойму, чем не угодил список тогда давно. Да, щас уже принято. Связные списки могли назвать, например, цепочками или гирляндами.
Цитата: Искандер от мая 1, 2011, 20:28
векторы бывают ТОЛЬКО пространственные
определение у их такое.
Шозабред?
а вы как хотели?
есть вектор, но нет пространства, в котором вы его определяете?
О
ЛО
ЛО!
У нас на вышке были вектора именно описанного вида. Только я позабыл - строчкой матрицы или столбцом.
а это как не транспонируй... мы ж не в америке
Цитата: Alone Coder от мая 1, 2011, 22:12
У нас на вышке были вектора именно описанного вида. Только я позабыл - строчкой матрицы или столбцом.
Столбцом же. Квас надрессирует, если что.
Цитата: Искандер от мая 1, 2011, 22:05
есть вектор, но нет пространства, в котором вы его определяете?
О
ЛО
ЛО!
Вектор — это элемент прямого произведения множеств.
Цитата: myst от мая 1, 2011, 22:33
Вектор — это элемент прямого произведения множеств.
эти множества — подмножества множества, гордо именуемого пространством.
Цитата: Искандер от мая 1, 2011, 22:38
эти множества — подмножества множества, гордо именуемого пространством.
Правда, штоле? Определение пространства — в студию. Прозреваю зело ололо.
Цитата: myst от мая 1, 2011, 22:33
Вектор — это элемент прямого произведения множеств.
В математике это определение неверно.
«Кортеж — это элемент прямого произведения множеств» сойдёт. Есть синонимы, но только не
вектор.
Цитата: myst от мая 1, 2011, 22:56
Определение пространства — в студию.
(wiki/ru) Векторное_пространство (http://ru.wikipedia.org/wiki/%D0%92%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D1%81%D1%82%D1%80%D0%B0%D0%BD%D1%81%D1%82%D0%B2%D0%BE)
http://ru.math.wikia.com/wiki/Линейное_пространство (http://ru.math.wikia.com/wiki/%D0%9B%D0%B8%D0%BD%D0%B5%D0%B9%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D1%81%D1%82%D1%80%D0%B0%D0%BD%D1%81%D1%82%D0%B2%D0%BE)
Цитата: myst от мая 1, 2011, 22:56
Прозреваю зело ололо.
Глупо.
Линейное, или векторное пространство L \left( P \right) над полем P — это непустое множество L, на котором введены операции сложения и умножения на скаляр десу.
Цитата: arseniiv от мая 1, 2011, 23:02
В математике это определение неверно.
ну если помнить про тот вектор, который одномерный массив...
Цитата: arseniiv от мая 1, 2011, 23:02
Цитата: myst от мая 1, 2011, 22:33
Вектор — это элемент прямого произведения множеств.
В математике это определение неверно.
Да неужели?
Цитата: Искандер от мая 1, 2011, 23:03
Линейное, или векторное пространство L \left( P \right) над полем P — это непустое множество L, на котором введены операции сложения и умножения на скаляр десу.
Круто. Теперь осталось доказать, что
Цитата: Искандер от мая 1, 2011, 22:38
эти множества — подмножества множества, гордо именуемого пространством.
:green:
Цитата: Искандер от мая 1, 2011, 23:04
смотря шо за маимаика.
Ну вот, а как же:
Цитата: Искандер от мая 1, 2011, 22:05
есть вектор, но нет пространства, в котором вы его определяете?
О
ЛО
ЛО!
? :eat:
Цитата: Искандер от мая 1, 2011, 23:04
смотря шо за маимаика.
Цитата: Искандер от мая 1, 2011, 23:04
несмотря на то шо за маимаика.
Fixed.
Цитата: myst от мая 1, 2011, 23:05
Цитата: Искандер от мая 1, 2011, 23:03
Линейное, или векторное пространство L \left( P \right) над полем P — это непустое множество L, на котором введены операции сложения и умножения на скаляр десу.
Круто. Теперь осталось доказать, что
Цитата: Искандер от мая 1, 2011, 22:38
эти множества — подмножества множества, гордо именуемого пространством.
:green:
На спор дилетантов посмотреть интересно, да спать хочется. :eat:
Цитата: myst от мая 1, 2011, 23:05
Ну вот, а как же:
Цитата: myst от мая 1, 2011, 23:05
векторное пространство
ни о чём не говорит?
Но даже и не суть, то с чего началось, где вектор есть массив — тоже происходит в пространстве, но не векторном, а динамическом пространстве состояний.
Цитата: arseniiv от мая 1, 2011, 23:09
Fixed.
ну вообще может и так, но каждый же волен издать книгу "Моя математика"...
Цитата: Искандер от мая 1, 2011, 23:10
ну вообще может и так, но каждый же волен издать книгу "Моя математика"...
Мы сейчас говорим об общепринятых терминах. Да, вольны переопределять, но не здесь бы.
Цитата: Искандер от мая 1, 2011, 23:09
Но даже и не суть, то с чего началось, где вектор есть массив — тоже происходит в пространстве, но не векторном, а динамическом пространстве состояний.
Нету. Кортежи берутся из прямого произведения чего-нибудь, всё.
Цитата: arseniiv от мая 1, 2011, 23:12
Нету. Кортежи берутся из прямого произведения чего-нибудь, всё.
и смысл, если не было пространства?
Цитата: Искандер от мая 1, 2011, 23:09
ни о чём не говорит?
Говорит, о линейной алгебре. :green:
Цитата: Искандер от мая 1, 2011, 23:09
Но даже и не суть, то с чего началось, где вектор есть массив — тоже происходит в пространстве, но не векторном, а динамическом пространстве состояний.
Фантазёры такие фантазёры.
Цитата: arseniiv от мая 1, 2011, 23:12
Мы сейчас говорим об общепринятых терминах.
Цитата: arseniiv от мая 1, 2011, 23:12
Кортежи берутся из прямого произведения чего-нибудь, всё.
То, что Вам препод по дискретке в первом семестре этот объект кортежем назвал, ещё не значит, что это название единственно верное. :green:
И недилетанту это должно быть хорошо известно. :eat:
И смысл в этой фразе?
Перечитал.
Смысл не найден.
Цитата: myst от мая 2, 2011, 10:45
Смысл не найден.
смысл вектора, если он не находится ни в каком пространстве, где мы могли бы его определить.
?
Цитата: myst от мая 2, 2011, 08:35
И недилетанту это должно быть хорошо известно. :eat:
Я выше писал, что есть синонимы. Но вектор — не синоним
в математике.
Цитата: Искандер от мая 1, 2011, 23:15
и смысл, если не было пространства?
Векторы берутся из линейного пространства, кортежи из прямого произведения, и почти всегда мы по элементу можем построить какое-нибудь множество, которому он принадлежит (хотя можем перепутать), исходя из обозначений.
Цитата: Искандер от мая 2, 2011, 10:57
смысл вектора, если он не находится ни в каком пространстве, где мы могли бы его определить.
Если у нас есть вектор, заведомо у нас есть и пространство. Неявно подразумеваемое.
Цитата: Искандер от мая 2, 2011, 10:57
смысл вектора, если он не находится ни в каком пространстве, где мы могли бы его определить.
?
А кто Вам сказал, что это обязательно элемент какого-то там пространства?
Цитата: arseniiv от мая 2, 2011, 11:35
Я выше писал, что есть синонимы. Но вектор — не синоним в математике.
С каких пор дискретная математика перестала быть математикой?
Цитата: myst от мая 2, 2011, 11:41
С каких пор дискретная математика перестала быть математикой?
Я вам повторяю, что вектор в математике —
только элемент векторного пространства. Неумелое употребление терминов, конечно, бывает даже у математиков, но что тут сделать.
Цитата: ВикипедияВектор — понятие, определяемое в разных разделах математики различно.
Цитата: arseniiv от мая 2, 2011, 12:25
Я вам повторяю, что вектор в математике — только элемент векторного пространства. Неумелое употребление терминов, конечно, бывает даже у математиков, но что тут сделать.
Мне дискретку читал доктор наук. А Вы на каком курсе учитесь, я забыл, на втором?
Цитата: Alone Coder от мая 2, 2011, 12:33
Цитата: ВикипедияВектор — понятие, определяемое в разных разделах математики различно.
Так в этом-то и прикол, здесь собака и зарыта.
Цитата: Alone Coder от мая 2, 2011, 12:33
Цитата: ВикипедияВектор — понятие, определяемое в разных разделах математики различно.
Давайте устроим опрос среди математиков, только чтобы они объясняли свою точку зрения.
Цитата: arseniiv от мая 2, 2011, 12:37
Давайте устроим опрос среди математиков, только чтобы они объясняли свою точку зрения.
Опросы — это очень математичненько. :eat:
У математики нет подхода к правильности терминологии. Математически нельзя узнать, что верно в этом случае. Вы же понимаете.
Норма тоже невыводима из языкознания.
Лучше объясните, почему
Цитироватьelse if(Cmd=5&&PC<=LokP)
{
LOK[PC].VM= Edit2->Text.ToDouble();
Edit2->Text="";
Cmd=6;
Memo2->Lines->Insert(0, "Задайте силу тяги") ;
Edit3->Text= Cmd;
}
else if(Cmd=6&&PC<=LokP)
{
LOK[PC].Fk= Edit2->Text.ToDouble();
Edit2->Text="";
Cmd=5;
PC++;
Memo2->Lines->Insert(0, "Задайте скорость переключения") ;
}
else if (Cmd=5)
{
Cmd=0;
CmdC=0;
PC=0;
Memo2->Lines->Insert(0, "Сделано") ;
}
Залипает в ифе с условием кмд=5, хотя кмд==6.
Цитата: arseniiv от мая 2, 2011, 12:48
У математики нет подхода к правильности терминологии. Математически нельзя узнать, что верно в этом случае. Вы же понимаете.
Норма тоже невыводима из языкознания.
Поэтому Ваши лозунги в этой теме *censored*.
Цитата: Искандер от мая 2, 2011, 12:50
Залипает в ифе с условием кмд=5, хотя кмд==6.
Потому что нехрен путать присваивание со сравнением.
И да, цифирь в сырцах тётто.
Цитата: myst от мая 2, 2011, 12:53
Поэтому Ваши лозунги в этой теме *censored*.
Нет, поэтому я устроил на dxdy опрос. Посмотрим, что он покажет через неделю. Я готов принять свою неправоту, если такими будут его результаты.
Искандер, советую вам пробелы поставить недостающие:
else if(Cmd == 5 && PC <= LokP)
{
LOK[PC].VM = Edit2->Text.ToDouble();
Edit2->Text = "";
Cmd = 6;
Memo2->Lines->Insert(0, "Задайте силу тяги") ;
Edit3->Text = Cmd;
}
else if(Cmd == 6 && PC <= LokP)
{
LOK[PC].Fk = Edit2->Text.ToDouble();
Edit2->Text = "";
Cmd = 5;
PC++;
Memo2->Lines->Insert(0, "Задайте скорость переключения") ;
}
else if (Cmd == 5)
{
Cmd = 0;
CmdC = 0;
PC = 0;
Memo2->Lines->Insert(0, "Сделано") ;
}И с отступами явно что-то не то, и да, вместо чисел 5, 6 нужно перечисление (
enum).
Цитата: myst от мая 2, 2011, 12:56
Потому что нехрен путать присваивание со сравнением.
***, сэнкс.
Цитата: myst от мая 2, 2011, 12:56
И да, цифирь в сырцах тётто.
это всё щщётчики.
Цитата: Искандер от мая 2, 2011, 13:00
это всё щщётчики.
Лучше завести константы с названиями щётчиков: читать тяжко, да и в случае чего менять цифру потребуется только в одном месте.
Цитата: myst от мая 2, 2011, 13:03
Лучше завести константы с названиями щётчиков
типа вместо инта стринг и далее по логике?
Нет, типа enum.
Вы хотя бы [часть C++, которой он обязан] C до конца освоили?
Цитата: arseniiv от мая 2, 2011, 13:05
Вы хотя бы [часть C++, которой он обязан] C до конца освоили?
а то, нет конешно.
Цитата: Искандер от мая 2, 2011, 13:04
Цитата: myst от мая 2, 2011, 13:03
Лучше завести константы с названиями щётчиков
типа вместо инта стринг и далее по логике?
Нет, конечно.
const int COUNTER1 = 1;
const int COUNTER2 = 2;
...
const int COUNTER2 = N;
или
enum counter_t{COUNTER1, COUNTER2, ..., COUNTERN};
Первый способ разве не нужно писать только в C? Он же не очень нравится пишущим на C++, вроде?
Цитата: arseniiv от мая 2, 2011, 14:23
Первый способ разве не нужно писать только в C?
В C нет констант, есть только неизменяемые переменные. Поэтому в C для этой цели юзают макроопределения.
Цитата: arseniiv от мая 2, 2011, 14:23
Он же не очень нравится пишущим на C++, вроде?
Чозабред?
Цитата: myst от мая 2, 2011, 14:10
Нет, конечно.
не знаю как это применить, у меня там просто рваный case
Цитата: Искандер от мая 2, 2011, 14:30
не знаю как это применить, у меня там просто рваный case
Не понял, при чём тут case?
Цитата: myst от мая 2, 2011, 14:33
Не понял, при чём тут case?
там наворочено таких соплей, шо я уже сам путаюсь.
Цитата: Искандер от мая 2, 2011, 14:34
там наворочено таких соплей, шо я уже сам путаюсь.
Так тем более надо от цифири избавляться. В ней же чёрт ногу сломит.
Кстати, чтобы не нарываться на перепутывание операторов присваивания и сравнения, можно писать переменную писать справа от оператора. Тогда в случае перепутывания компилятор будет выдавать ошибку, что, мол, не lvalue в левой части.
Цитата: myst от мая 2, 2011, 14:27
В C нет констант, есть только неизменяемые переменные. Поэтому в C для этой цели юзают макроопределения.
Тфу, забыл, что там const написали. А чем просто список констант может быть лучше enum'а? Какие-нибудь особенные числовые значения всегда можно подписать и в нём!
Цитата: myst от мая 2, 2011, 14:40
Тогда в случае перепутывания компилятор будет выдавать ошибку, что, мол, не lvalue в левой части.
Почти всегда, но иногда (
a = b) не спасёт.
Цитата: myst от мая 2, 2011, 14:40
Кстати, чтобы не нарываться на перепутывание операторов присваивания и сравнения, можно писать переменную писать справа от оператора. Тогда в случае перепутывания компилятор будет выдавать ошибку, что, мол, не lvalue в левой части.
Правильный компилятор и так предупреждает.
Компилятор не обязан предупреждать обо всём. Он должен побыстрее и покачественнее компилировать!
Цитата: arseniiv от мая 2, 2011, 14:44
Тфу, забыл, что там const написали. А чем просто список констант может быть лучше enum'а? Какие-нибудь особенные числовые значения всегда можно подписать и в нём!
enum — это только целые числа.
Цитата: RawonaM от мая 2, 2011, 14:46
Правильный компилятор и так предупреждает.
Не у всех включены предупреждения; не все знают, куда надо смотреть; не все понимают предупреждения. :)
Цитата: arseniiv от мая 2, 2011, 14:48
Компилятор не обязан предупреждать обо всём. Он должен побыстрее и покачественнее компилировать!
Заблуждение, оплаченное реками крови.
Цитата: myst от мая 2, 2011, 15:08
enum — это только целые числа.
Так здесь только целые числа. И вообще, в C++ case только на целые числа. Или на плавающих тоже работает?
Цитата: myst от мая 2, 2011, 15:10
Заблуждение, оплаченное реками крови.
А я не писал «не должен ни в коем случае». И код писать сразу правильно тоже надо.
Цитата: arseniiv от мая 2, 2011, 15:33
Так здесь только целые числа.
C++ не только для здесь.
Цитата: arseniiv от мая 2, 2011, 15:33
И вообще, в C++ case только на целые числа. Или на плавающих тоже работает?
При чём тут case?
Цитата: arseniiv от мая 2, 2011, 15:33
И код писать сразу правильно тоже надо.
Это умеют только сферические программисты в вакууме. Доказано C.
Цитата: myst от мая 2, 2011, 15:40
При чём тут case?
При том, что очень часто (и здесь) константы из enum используются в альтернативах case.
Цитата: arseniiv от мая 2, 2011, 17:10
При том, что очень часто (и здесь) константы из enum используются в альтернативах case.
Очень часто по утрам чистят зубы, ичо?
Цитата: Искандер от мая 1, 2011, 18:16
а как сделать этакое нешто, штобы решалось в реальном времени уравнение вида dv/dt = f(x, v), где интересуют координата и скорость в каждый момент времени (в данный момент времени)....
:???
arseniiv предложил использовать (wiki/ru) Метод_Эйлера (http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%AD%D0%B9%D0%BB%D0%B5%D1%80%D0%B0) . Это самый простой метод численного решения ОДУ, но он обладает рядом серьёзных ограничений.
Лучше использовать, например, (wiki/ru) Метод_Рунге_—_Кутта (http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%A0%D1%83%D0%BD%D0%B3%D0%B5_%E2%80%94_%D0%9A%D1%83%D1%82%D1%82%D0%B0) (в статье есть и реализация на C++)
Поднимаю тему в целях показывания предварительных итогов голосования о векторах.
Глядите, myst: http://dxdy.ru/topic45008-45.html
(Разумеется, надо смотреть не на результаты опроса, а на сообщения в теме. ;D)
Так голосование подтверждает моё мнение.
А вы почитайте сообщения. Почему-то большинство голосовавших не написали. Может, они сомневались. Я сделал голосование без смены ответа. Надо было сделать со сменой.
А чо я в них не видел?
Ну последнее ещё почитайте. Вы увидите, что почти все пишущие согласны, что если на прямом произведении не введена структура линейного пространства, нельзя/незамечательно называть его элементы векторами.
Меня мнение праздных интернетных анонимусов не интересует в принципе.
Так бы и сказали: мне и опрос по барабану, не то что сообщения. Нет же,
Цитата: myst от мая 5, 2011, 17:26
Так голосование подтверждает моё мнение.
Так вы хотите связываться с «мнением праздных интернетных анонимусов» или нет? Выберите одно что-нибудь, а то выбираете результаты опроса, а сообщения овтергаете.
Цитата: arseniiv от мая 6, 2011, 14:18
Так бы и сказали: мне и опрос по барабану, не то что сообщения. Нет же,
Ичо? Мне он действительно по барабану. Просто, я ожидал других результатов по ссылке.
Цитата: arseniiv от мая 6, 2011, 14:18
Так вы хотите связываться с «мнением праздных интернетных анонимусов» или нет? Выберите одно что-нибудь, а то выбираете результаты опроса, а сообщения овтергаете.
Я уже всё сказал по этому поводу. Мне математику читал доктор, не школота и не студентота. Если он назвал этот объект вектором, значит его можно называть вектором. Точка.
::)
Кстати, что вы так экспрессивно-то?
Доктора тоже не идеальны. Это я так, в сторону.
Цитата: Alone Coder от мая 1, 2011, 19:12
Этот ваш дотнет и эта ваша жаба у меня на компе вообще не стоят. И не стояли никогда. Зато у меня, как и у всех, стоит эмулятор Спектрума. Так что у нас там переносимее?
Цитата: myst от мая 1, 2011, 19:35
Цитата: Alone Coder от мая 1, 2011, 19:12
Зато у меня, как и у всех в моей секте, стоит эмулятор Спектрума в мозге.
Ради интереса поставил эмулятор сабжа поиграться. Это иноплатнетная штуковина, инфа 100%. Ни одному человеку не пришло бы в голову команду для перехода по адресу (или что оно там делает) назвать «randomise usr addr». :uzhos:
Цитата: Demetrius от мая 18, 2011, 11:48
Ради интереса поставил эмулятор сабжа
Эмулятор C++ билдера? (http://lingvowiki.info/wiki/images/7/7e/Sm_wink.svg)
Цитата: Demetrius от мая 18, 2011, 11:48
Ни одному человеку не пришло бы в голову команду для перехода по адресу (или что оно там делает) назвать «randomise usr addr».
(http://lingvowiki.info/wiki/images/2/2c/Sm_laugh.svg)
Цитата: Тайльнемер от мая 18, 2011, 14:46
Цитата: Demetrius от мая 18, 2011, 11:48
Ради интереса поставил эмулятор сабжа
Эмулятор C++ билдера?
Сабжа цитаты. ;D Кстати, Ваши смайлики мне не видны. Mozilla/5.0 (X11; U; Linux i686; sl; rv:1.9.2.12) Gecko/20101027 Ubuntu/10.04 (lucid) Firefox/3.6.12
Жырнолис отсталый, да.
Цитата: Demetrius от мая 18, 2011, 11:48
Ради интереса поставил эмулятор сабжа поиграться. Это иноплатнетная штуковина, инфа 100%. Ни одному человеку не пришло бы в голову команду для перехода по адресу (или что оно там делает) назвать «randomise usr addr».
USR - это не команда, а функция. Возвращает содержимое регистровой пары BC. Надо же её приткнуть в какой-нибудь оператор. RANDOMIZE - самый подходящий, практически ничего не делает.
Цитата: Alone Coder от мая 18, 2011, 20:33
USR - это не команда, а функция. Возвращает содержимое регистровой пары BC. Надо же её приткнуть в какой-нибудь оператор. RANDOMIZE - самый подходящий, практически ничего не делает.
Гм. То есть
PRINT USR addr и
LET X = USR addr тоже сработает?
Получается, что на
USR навешано два совсем разных действия: а) принимает строку с символом, возвращает адрес битмапа в таблице; б) принимает целочисленный адрес, выполняет команду, возвращает регистр
BC. Правильно?
Цитата: Demetrius от мая 19, 2011, 08:53
То есть PRINT USR addr и LET X = USR addr тоже сработает?
Да.
И, например, в программе на бэйсике, использующей функцию RND, уже не получится безнаказанно использовать RANDOMIZE USR, и придётся выдумывать другую команду :)
Цитата: Demetrius от мая 19, 2011, 08:53
Получается, что на USR навешано два совсем разных действия: а) принимает строку с символом, возвращает адрес битмапа в таблице; б) принимает целочисленный адрес, выполняет команду, возвращает регистр BC. Правильно?
Именно так. Это две разные функции, только с одинаковым именем.
А прога то заработала.
(http://img-fotki.yandex.ru/get/4515/worldpost.2/0_4f709_c01de794_L)
Выглядит конешно, как говно. Мало защщит от имбицила, но, *****, она работает!
Чо это? Полукруглый вагон на пяти колесах?
Цитата: RawonaM от мая 20, 2011, 21:00
Чо это? Полукруглый вагон на пяти колесах?
вы же матэматик?!?
Цитата: Искандер от мая 20, 2011, 21:03
вы же матэматик?!?
Я такой же математик, как вы программист.
Цитата: RawonaM от мая 20, 2011, 21:08
Я такой же математик, как вы программист.
вы правда не видите графика v=v(x) :???
Нет, но подозревал, что это график. Видимо покошенное готическое окно — это и есть график, непонятно только чего к чему, а что все остальное, квадраты и пронумерованные колеса, хрен его знает.
Сетка логарифмическая штоле?
Цитата: RawonaM от мая 20, 2011, 21:13
непонятно только чего к чему
ҧан не фапчет на ракевет
Цитата: Bhudh от мая 20, 2011, 21:27
Сетка логарифмическая штоле?
не. 35км/ч - ограничение по ЖЖ, 55 км/ч - ограничение по ЖЖ* и грузовых, 100км/ч - ограничение Д1, 120 - местное ограничение пассажирских.
Колёсики - символизируют пикетажные знаки (километры)
ещё есть линейка профиля и плана.
въобщем кому надо тот поймёт.