|
Модераторы: Alx, Fixin |
|
JAnty |
|
|||
Опытный Профиль Группа: Участник Сообщений: 366 Регистрация: 6.12.2004 Где: Москва Репутация: нет Всего: 2 |
Это обычный тест на знание С++
Постановка задачи: убрать с кода знаки "=". (Желательно, что бы оно ещё потом компилилось ). Это сообщение отредактировал(а) JAnty - 7.12.2006, 12:40 -------------------- |
|||
|
||||
Earnest |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: нет Всего: 183 |
Глупый тест.
int a(0); и так далее. -------------------- ... |
|||
|
||||
comp |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 61 Регистрация: 15.11.2006 Репутация: нет Всего: 1 |
#define a 0
#define b 1 #define c a + b |
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
comp, неверно.
В этом случае не создастся ни одной переменной, а их создавалось 3. Правильное решение написала Earnest. |
|||
|
||||
Rockie |
|
||||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: 2 Всего: 31 |
-------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
||||
|
|||||
Dov |
|
|||
аСинизатор Профиль Группа: Завсегдатай Сообщений: 1721 Регистрация: 10.5.2003 Где: Эрец-Исраэль Репутация: нет Всего: 88 |
Гы-гы.
Rockie, зачот. -------------------- Тут вечности запах томительный, И свежие фрукты дешевые, А климат у нас – изумительный, И только соседи – #уевые. Игорь Губерман. |
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
Rockie, Присоединяюсь к Dov...
|
|||
|
||||
Xenon |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: нет Всего: 50 |
А там вообще в задании просят ТОЛЬКО УБРАТЬ - прибавлять низя
|
|||
|
||||
Dray |
|
|||
Материалист Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: нет Всего: 6 |
УЖОС и при этом чтоб компилилось!
|
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
||||
|
||||
En_t_end |
|
||||
Эксперт Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
JackYF,
JackYF - комментирует ЗЫ ты прям как маджик гуди блин Добавлено @ 14:20 кстати вот ещё решение(раз вы скобки добавили, значит можно не просто стирать '=' но и стирать другие интересные символы (то есть все)) :
имеется ввиду контекст:
Добавлено @ 14:22 но суть одна... суть примера Rockie |
||||
|
|||||
Voldemar2004 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: нет Всего: 23 |
JAnty, в С++ переменные можно инициализировать не только знаком =, но и скобками:
-------------------- i_i (';') (V) |
|||
|
||||
Xenon |
|
|||
Эксперт Профиль Группа: Участник Клуба Сообщений: 1529 Регистрация: 12.4.2006 Репутация: нет Всего: 50 |
Voldemar2004, Ну это, как бы, уже озвучили
|
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
Voldemar2004,
Это еще что? И как ты при этом будешь итераторы стандартные использовать, мне интересно? |
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
Есть ещё маленькая загадка - вопрос. Многие конечно скажут что-то типа "баян", но те кто ни разу не наталкивался на неё пускай поробуют, подумают:
переменной а присвоить значение переменной b, b присвоить значение переменной а без использования третьей переменной.
|
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
UniBomb, для всех типов переменных ? Или только для int'ов?
|
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
JackYF,
Начнём с int'ов... А там глядиш и будет универсальное решение для всех типов данных. |
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
||||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
JackYF,
Как фишка ляжет. Хотя в принципе минимальный набор (плюс, минус, умножить, разделить, и, или) операций поддерживает каждый тип. Это если я тебя правильно понял... |
|||
|
||||
skyboy |
|
|||
неОпытный Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 1 Всего: 260 |
|
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
Я же и спрашивал Пользовательский тип может и не поддерживать данные операции. Если же поддерживает -- skyboy ответил. Можно тоже же самое, только место -,+ -- xor. Хотя не думаю, что этот вопрос он слышал в первый раз. |
|||
|
||||
skyboy |
|
|||
неОпытный Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 1 Всего: 260 |
|
|||
|
||||
Fazil6 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: нет Всего: 60 |
|
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
skyboy,
врое прально.... Fazil6, боюсь мои познания а си не настолько велики, что бы я смог понять твой код.... Есть ещё способ с использованием логичесих операций (если его не изобразил Fazil6).... Это сообщение отредактировал(а) UniBomb - 14.12.2006, 21:24 |
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
||||
|
||||
Dray |
|
|||
Материалист Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: нет Всего: 6 |
А теперь устроим свистопляску!
К а присвоить b, к b присвоить c, к c присвоить а. Без добавления переменных. |
|||
|
||||
Fazil6 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: нет Всего: 60 |
и в чем задача?
а меняем с b и потом с меняем с b |
|||
|
||||
Dray |
|
|||
Материалист Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: нет Всего: 6 |
And the winner is...
... Fazil6 !!! |
|||
|
||||
nikitao |
|
|||
Кот-программист Профиль Группа: Завсегдатай Сообщений: 1206 Регистрация: 30.8.2005 Где: Спб Репутация: нет Всего: 26 |
Напомниет топик , где надо было Hello world написать как можно КРУЧЕ
-------------------- Жизнь - печальная штука. |
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
Что ж, превратим этот топик в сборник интересных задач, вот следующая - написать программу, которая выводила бы на экран саму себя. Самое короткое решенеие (жаль его не помню) уместилось в одной строке...
|
|||
|
||||
JackYF |
|
|||
полуавантюрист Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 1 Всего: 162 |
Все программы могут уместиться в одной строке. Строка, правда, длинная получится. |
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
JackYF,
ну хорошо - в одной строке с приемлимой длинной. да и вообще, много разговариваеш! |
|||
|
||||
Rockie |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: 2 Всего: 31 |
угу, жаль.. Зато ты - много, лови минус. -------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
Rockie,
Это было бы хамством, если бы там стоял такой смайл - . А в данном случае это больше панибратсво. |
|||
|
||||
Любитель |
|
|||
Программист-романтик Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
А задача печати самой себя очень старая.
Здесь рулят языки без всяких main-функций. Тогда такой пролграмой будет пустая програма. Условие только надо уточнить - не использовать внешних источников информации (а то из исходника прогу напечатаем, да и всё). |
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
Любитель,
Хех, с внешними источниками данных всё равно придётся повыпендриваться, ведь получается что одним оператором всю прогу на экран не вывести... С добавлением нового оператора возникнет необходимость вывода этого оператора на экран, на следовательно ввод в программу нового оператора, для вывода того... В общём всё бесконечно запутано... |
|||
|
||||
Любитель |
|
|||
Программист-романтик Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
В смысле с внешними как раз всё тривиально. Мы читаем из файла main.cpp текст и пишем его на экран. Компилируем, ложим экзешку в папку с main.cpp, запускаем.
|
|||
|
||||
UniBomb |
|
|||
Новичок Награды: 1 Профиль Группа: Участник Клуба Сообщений: 1754 Регистрация: 24.10.2006 Где: Санкт-Петербург Репутация: 0 Всего: 97 |
Любитель,
не, так не пойдёт... давай без внешних источников... |
|||
|
||||
Rockie |
|
||||||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1143 Регистрация: 23.4.2006 Репутация: 2 Всего: 31 |
На википедии лежит пример на Си.
Зато улыбнул пример на Brainfuck:
а в особенности это:
-------------------- Чтобы иметь большой гардероб - надо иметь большой гардероб. |
||||||
|
|||||||
Dov |
|
|||
аСинизатор Профиль Группа: Завсегдатай Сообщений: 1721 Регистрация: 10.5.2003 Где: Эрец-Исраэль Репутация: нет Всего: 88 |
-------------------- Тут вечности запах томительный, И свежие фрукты дешевые, А климат у нас – изумительный, И только соседи – #уевые. Игорь Губерман. |
|||
|
||||
Любитель |
|
|||
Программист-романтик Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
Rockie, да замечание весёлое.
|
|||
|
||||
ressac |
|
||||
Опытный Профиль Группа: Участник Сообщений: 345 Регистрация: 25.11.2006 Репутация: нет Всего: 1 |
под Си это не пашет, под Си++ да. Добавлено @ 20:39
если ты про то что она показывает свой исходник, то помойму легче всего впихнуть рид файл и всё. |
||||
|
|||||
Voldemar2004 |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1650 Регистрация: 25.12.2004 Репутация: нет Всего: 23 |
Чтобы написать прогу, которая выводит саму себя - достаточно написать в ф-цию, считывающую файл - в качестве аргумента указать имя исходника.
-------------------- i_i (';') (V) |
|||
|
||||
Любитель |
|
|||
Программист-романтик Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
Млин, я сказал - не использовать внешних источников данных.
|
|||
|
||||
ressac |
|
|||
Опытный Профиль Группа: Участник Сообщений: 345 Регистрация: 25.11.2006 Репутация: нет Всего: 1 |
Любитель, ну тогда printf("...");
|
|||
|
||||
Любитель |
|
|||
Программист-романтик Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
Плохо говорить, когда ответ уже был. Если пытаться делать тривиально то тебе нужен бесконечный printf.
|
|||
|
||||
DeMoNN |
|
|||
Бывалый Профиль Группа: Участник Сообщений: 179 Регистрация: 21.3.2008 Репутация: нет Всего: 2 |
можно его в ресурсы запхать это уже не ВНЕШНИЙ а ВНУТРЕННИЙ источник бует))))
|
|||
|
||||
Goliaf777 |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 70 Регистрация: 19.11.2008 Репутация: нет Всего: нет |
Вот очень легкая задачка: зачем нужно перегружать стандартный оператор присваивания и конструктор копирования, при динамическом распределении памяти в классе?
|
|||
|
||||
GoldFinch |
|
|||
Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
чтоб члены класса - указатели не копировались в другой объект %)
|
|||
|
||||
Rififi |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: нет Всего: 36 |
что выведет программа? |
|||
|
||||
azesmcar |
|
|||
uploading... Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: нет Всего: 211 |
не вызван конструктор для std::string. хрень какую нибудь или access violation. |
|||
|
||||
azesmcar |
|
|||
uploading... Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: нет Всего: 211 |
и задача, может многие знают, встретил на брейнбенче, довольно интересная
Это сообщение отредактировал(а) azesmcar - 1.6.2009, 08:47 |
|||
|
||||
GoldFinch |
|
|||
Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: нет Всего: 26 |
azesmcar, видимо total == 10
хотя непонятно зачем там int j; и зачем такие кривые идентификаторы |
|||
|
||||
azesmcar |
|
|||
uploading... Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: нет Всего: 211 |
нет, 10 было бы слишком просто
я бы сказал, но тогда другим будет неинтересно, попробуй скомпилировать и запустить. Думаю станет понятно. А если под дебагером посмотришь память - думаю вопросов не останется. Если что пиши в личку обясню. |
|||
|
||||
Любитель |
|
|||
Программист-романтик Профиль Группа: Комодератор Сообщений: 3645 Регистрация: 21.5.2005 Где: Воронеж Репутация: нет Всего: 92 |
Инкрементится указатель на A, он не знает о фактическом размере элементов массива, т. е. сдвиг будет на sizeof(A). А фактически - будут пройдены 5 элементов, сумма 15. Так?
PS Блин, печально другое - вначале хотел сказать, что программа вывалится, так как выделили память только под массив, а не под сами объекты. Год работы с шарпом даёт о себе знать.. Это сообщение отредактировал(а) Любитель - 4.6.2009, 20:37 |
|||
|
||||
azesmcar |
|
|||
uploading... Профиль Группа: Участник Клуба Сообщений: 6291 Регистрация: 12.11.2004 Где: Армения Репутация: нет Всего: 211 |
Да, только будет пройдено на 5 а 10. Просто 5 из них будет прибавлено 1, для остальных 5-и будет прибавлена 2. Или мы о разном. В итоге - 15, все абсолютно верно.
бывает...именно так и бывает Это сообщение отредактировал(а) azesmcar - 4.6.2009, 20:46 |
|||
|
||||
newsl |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 1.11.2009 Репутация: нет Всего: нет |
#include<iostream>
using namespace std; int main () { int a(3); int b(9); a+=b; b-=a; a+=b; b*=~0; cout<<a<<endl; cout<<b<<endl; system ("pause"); return 0; } |
|||
|
||||
Belirafor |
|
|||
Новичок Профиль Группа: Участник Сообщений: 29 Регистрация: 15.8.2009 Репутация: нет Всего: нет |
сорри не туда!
Это сообщение отредактировал(а) Belirafor - 4.11.2009, 00:23 |
|||
|
||||
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Интересные и занимательные задачи по программированию | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |