Простая задача
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.42] |
|
|
Правила раздела:
| Страницы: (5) 1 [2] 3 4 ... Последняя » все ( Перейти к последнему сообщению ) |
Простая задача
|
Сообщ.
#16
,
|
|
|
|
Сиравно - комменты рулят!
Добавлено Скрытый текст По поводу языка D - прямо щяз бы убежал и предал бы всех вас - одна засада, кроме как x32 - "D" ни где толком не работает. Не говоря уж о ARM. Он и интеловскую x64 тенет с багами. |
|
Сообщ.
#17
,
|
|
|
|
Интересный подход. Но, если ввести например число 100, то на экран выдаст 100. Хотя на сколько я понял из задания нужна именно сумма чисел. А как на счет еще проще задачи? Мне задача из первого поста, навеяла другую, более простую: Есть строка: "мама мыла раму" Необходимо перевернуть задом на перед, чтобы получилось: "раму мыла мама" Если использовать вектора и какие нибудь потоки, то задача решается в 4-5 строчек(возможно кто то придумает и того меньше). Это не интересно. Интересно другое, во сколько минимум строчек кода можно оформить эту задачу стандартными средствами языка(С/С++) безо всяких STL контейнеров и Сишных функций типа strtok, strstr, strcmp, strlen ит.п. |
|
Сообщ.
#18
,
|
|
|
|
Цитата KILLER @ во сколько минимум строчек кода можно оформить эту задачу стандартными средствами языка(С/С++) безо всяких STL контейнеров и Сишных функций типа strtok, strstr, strcmp, strlen ит.п. Очевидно, в одну. Как-то так:![]() ![]() char s[]="маман мыла краму"; // интереса и дебага ради for(int t=-1,l=0;t>-2;l++)if(s[l]==' '&&t<0)t=l;else if(!s[l]){for(--t,--l;t>=0;t--,l--)s[l]^=s[t],s[t]^=s[l],s[l]^=s[t];t--;} |
|
Сообщ.
#19
,
|
|
|
|
Это не в одну. Ты и программы так пишешь? Оформи пожалуйста нормально. Я ничего не понял. ';' - означает конец строки, условие - означает - конец строки, цикл - означает конец строки. Не мне тебя учить, надеюсь. Оформи нормально. Цель не написать все в одну строчку, цель - добиться минимального количества кода.
|
|
Сообщ.
#20
,
|
|
|
|
Цитата KILLER @ Не,лучше сдаться.Считайте,что я слил,если хочется. Оформи пожалуйста нормально. |
|
Сообщ.
#21
,
|
|
|
|
Цитата Славян @ Не,лучше сдаться.Считайте,что я слил,если хочется. ![]() Почему? Твое решение по сути правильное, но так как ты его оформил - никуда не годится. Выводы на экран или объявления переменных - к алгоритму не имеют никакого отношения. Поэтому оформи все нормально плз. |
|
Сообщ.
#22
,
|
|
|
|
Цитата KILLER @ Поэтому оформи все нормально плз. Не обижайтесь, KILLER, но я всё же пасану. Задачка скучная, а потому вся прелесть и могла бы быть коли в одну строку написать. А наводить марафет - выход за эту глупую 1-строчную белиберду - неинтересно. Да вы и сами можете нужных TAB'ов да ENTER'ов с пробелами куда хочется натыкать. |
|
Сообщ.
#23
,
|
|
|
|
Цитата Славян @ Не обижайтесь, KILLER, но я всё же пасану. Задачка скучная, а потому вся прелесть и могла бы быть коли в одну строку написать. А наводить марафет - выход за эту глупую 1-строчную белиберду - неинтересно. Да вы и сами можете нужных TAB'ов да ENTER'ов с пробелами куда хочется натыкать. ![]() Просто вся фишка в том, чтобы прийти к наименьшему количеству буков в решении этой задачи. То что ты написал в одну строку - несколько строк, потому что так разрешает компилятор - никуда не годится. Добавлено Цитата Славян @ а потому вся прелесть и могла бы быть коли в одну строку написать. Так если бы в одну строку было бы написано, никаких притензий и не было бы. А у Вас написано не в одну строку, а в псевдо-одну строку, которая одной строкой никак не может быть. Вы написали все в одну строку потому, что компилятор - дает вам такую возможность, не более. Добавлено Хотя с другой стороны, зачем кого то уламывать? Пусть все так и остается. Темболее у меня нет времени кого то уламывать или с кем то спорить. Как хотите так и оформляйте хоть в бинарном коде, хоть в брейнфаке... |
|
Сообщ.
#24
,
|
|
|
|
Я такого не писал. Добавлено Цитата JoeUser @ Твои данные устарели. Под линупсом я давно и успешно кодю под x64. Под виндой с линкером MSVC тоже отлично компиляет под x64. C ARM не так хорошо, но таки работает http://wiki.dlang.org/LDC#ARM. По поводу языка D - прямо щяз бы убежал и предал бы всех вас - одна засада, кроме как x32 - "D" ни где толком не работает. Не говоря уж о ARM. Он и интеловскую x64 тенет с багами.Добавлено Цитата KILLER @ Так пойдет? Опять на D.Просто вся фишка в том, чтобы прийти к наименьшему количеству буков в решении этой задачи. То что ты написал в одну строку - несколько строк, потому что так разрешает компилятор - никуда не годится. ![]() ![]() import std.stdio; void main() { "мама мыла раму".dup.reverse.writeln; } |
|
Сообщ.
#25
,
|
|
|
|
Цитата applegame @ Так пойдет? Опять на D. Читер |
|
Сообщ.
#26
,
|
|
|
|
На питоне
![]() ![]() print("мама мыла раму"[::-1]) |
|
Сообщ.
#27
,
|
|
|
|
Цитата applegame @ Твои данные устарели. Под линупсом я давно и успешно кодю под x64 Возможно. Тогда еще вопросик. Какие либы используешь для GUI? Нашел подборочку, интересуют естественно нативные и работающие. Добавлено Что скажешь по поводу dlangui? |
|
Сообщ.
#28
,
|
|
|
|
Цитата applegame @ Так пойдет? Опять на D. Добавлю немножко Перла ![]() ![]() map {print "$_ "} reverse split " ", "мама мыла раму"; Добавлено или вот так: ![]() ![]() print join " ", reverse split " ", "мама мыла раму"; |
|
Сообщ.
#29
,
|
|
|
|
Цитата JoeUser @ Я не использую либы для GUI. Я в основном пишу серверы/клиенты (в основном web/rest-серверы и клиенты) и скрипты (вместо bash-скриптов). Но я пробовал пару недель назад любопытства ради DlanGUI и оно завелось под Win7 из коробки (использовал dub для сборки). Остальные я не пробовал. Но судя по датам обновлений большинство еще не заброшены. Возможно. Тогда еще вопросик. Какие либы используешь для GUI? Нашел подборочку, интересуют естественно нативные и работающие. Добавлено Сегодня, 07:28 Что скажешь по поводу dlangui? |
|
Сообщ.
#30
,
|
|
|
|
Вобщем, я в теме
, нароешь чего путного по "GUI + D" - маякни плс. Очень понравился язык! Почитал доки бегло - то, что доктор прописал! |