Welcome Guest ( Log In | Register )

Help | Search | Members | Calendar

Pages: (3) 1 [2] 3   ( Go to first unread post )
C++ Puzlle, А может кто нить в этом духе выкладыва
« Next Oldest | Next Newest » Track this topic | Email this topic | Print this topic
nop
Posted: Dec 14 2009, 16:59

Wise Dreamer

Group: Elite Member
Member No.: 3143

Joined: July 2, 2008

Напечатает ":)\n", потому что (5>=a)==true то есть 1, а (1>=3)==false smile.gif
п.с. все же проверю :Д

edit: проверил smile.gif

--------------------
- Но это же противоречит здравому смыслу
- А что такое здравый смысл? - спросил
Путешественник во Времени.
 
     Top
Dream_InspectoR
Posted: Dec 14 2009, 17:19

Eye of the Vision

Group: Moderator
Member No.: 614

Joined: February 10, 2004

Это типа вопрос знаете ли вы как стандарт определяет порядок evaluation-а в if-е.

--------------------
Kill'em!!! Kill'em ALL!!!
 
        Top
Master of Puppets
Posted: Dec 14 2009, 17:25

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

QUOTE (In the immortal words of nop, since Dec 14 2009, 16:59)
Напечатает ":)\n", потому что (5>=a)==true то есть 1, а (1>=3)==false smile.gif
п.с. все же проверю :Д

edit: проверил smile.gif

Пральна smile.gif

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
Master of Puppets
Posted: Dec 15 2009, 16:14

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

Еще задачка. Рассмотрим фрагмент кода:

CODE

int n = 20;
for (int i = 0; i < n; i--) cout << "*";


Добавить, убрать либо изменить ОДИН символ в этом коде так, чтобы он печатал 20 звездочек.

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
knightmare
Posted: Dec 15 2009, 16:22

Wise Dreamer

Group: Elite Member
Member No.: 1572

Joined: October 31, 2005

вместо i-- n--

--------------------
армия - эта крута, армейский спецназ - эта ваще крута


Хочу трахнуть Nissan Skyline R34, и ездить на Alessandra Ambrosio
 
    Top
Master of Puppets
Posted: Dec 15 2009, 16:28

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

QUOTE (In the immortal words of knightmare, since Dec 15 2009, 16:22)
вместо i-- n--

Правильно, но я забыл сказать что у задачи 3 способа решения smile.gif найдите остальные 2

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
knightmare
Posted: Dec 15 2009, 16:36

Wise Dreamer

Group: Elite Member
Member No.: 1572

Joined: October 31, 2005

-i < n

--------------------
армия - эта крута, армейский спецназ - эта ваще крута


Хочу трахнуть Nissan Skyline R34, и ездить на Alessandra Ambrosio
 
    Top
knightmare
Posted: Dec 15 2009, 16:41

Wise Dreamer

Group: Elite Member
Member No.: 1572

Joined: October 31, 2005

вместо i < n
i + n

--------------------
армия - эта крута, армейский спецназ - эта ваще крута


Хочу трахнуть Nissan Skyline R34, и ездить на Alessandra Ambrosio
 
    Top
nop
Posted: Dec 15 2009, 17:02

Wise Dreamer

Group: Elite Member
Member No.: 3143

Joined: July 2, 2008

На ходу получилась другая задачка smile.gif (а может и бред :Д) :

#include <iostream.h>

int main(){
int n = 20;
for (int i = -1; i < n; i*=n)cout<<"*";
return 0;
}

сколько раз напечатает "*"? smile.gif

--------------------
- Но это же противоречит здравому смыслу
- А что такое здравый смысл? - спросил
Путешественник во Времени.
 
     Top
Master of Puppets
Posted: Dec 15 2009, 17:36

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

QUOTE (In the immortal words of knightmare, since Dec 15 2009, 16:41)
вместо i < n
i + n

Верно! кстати последний вариант почему-то при решении пришел мне в голову первым smile.gif

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
nop
Posted: Dec 17 2009, 22:02

Wise Dreamer

Group: Elite Member
Member No.: 3143

Joined: July 2, 2008

ну? пазлы закончились ? sad.gif

--------------------
- Но это же противоречит здравому смыслу
- А что такое здравый смысл? - спросил
Путешественник во Времени.
 
     Top
Master of Puppets
Posted: Dec 17 2009, 23:16

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

НетЪ smile.gif вот еще. скомпилируется или нет следующий код? ответ обосновать
CODE

template <typename T>
class spam
{
        typedef typename  T::cheese footype;
};

class eggs : public spam<eggs>
{
public:
       typedef int cheese;
};


--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
nop
Posted: Dec 18 2009, 18:31

Wise Dreamer

Group: Elite Member
Member No.: 3143

Joined: July 2, 2008

Думаю не скомпилится, потому что не ясен (по крайней мере мне biggrin.gif) смысл вырожения "T::cheese"...Может и ошибаюсь, не силен в классах sad.gif

--------------------
- Но это же противоречит здравому смыслу
- А что такое здравый смысл? - спросил
Путешественник во Времени.
 
     Top
Master of Puppets
Posted: Dec 18 2009, 18:33

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

QUOTE (In the immortal words of nop, since Dec 18 2009, 18:31)
Думаю не скомпилится, потому что не ясен (по крайней мере мне biggrin.gif) смысл вырожения "T::cheese"...Может и ошибаюсь, не силен в классах sad.gif

То, что не скомпилится верно, но твое объяснение несколько туманно smile.gif поэтому ответ не засчитан smile.gif кто еще попробует?

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
1nsidE
Posted: Dec 18 2009, 20:50

Word Thrower

Group: Member
Member No.: 3409

Joined: June 30, 2009

мда,в гробу я видел ооп...wink.gif

как ни крути все завязяно на T::cheese footype.

в голове крутится мысль что возникает неопределенность.....
 
     Top
Master of Puppets
Posted: Dec 18 2009, 23:00

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

QUOTE (In the immortal words of 1nsidE, since Dec 18 2009, 20:50)
мда,в гробу я видел ооп...wink.gif

чую ассемблерщика wink.gif

объектно-ориентированное программирование тут абсолютно ни при чем, весь секрет в темплейтах.
Если до завтра никто не отгадает, то напишу ответ cool.gif

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
knightmare
Posted: Dec 19 2009, 02:23

Wise Dreamer

Group: Elite Member
Member No.: 1572

Joined: October 31, 2005

Ох блин... Не скомпилируется, может потому, что для "определения" класса eggs компилятору необходимо знать, что такое spam<eggs>, но это невозможно потому, что там, в spam, говорится о eggs::cheese, а до cheese в eggs не мог дойти, и непонятно, есть оно там или нет.

Хотя теоретически, можно профорсить компиляцию наверно.

хз..

--------------------
армия - эта крута, армейский спецназ - эта ваще крута


Хочу трахнуть Nissan Skyline R34, и ездить на Alessandra Ambrosio
 
    Top
1nsidE
Posted: Dec 19 2009, 13:23

Word Thrower

Group: Member
Member No.: 3409

Joined: June 30, 2009

knightamre
+1000
уверен что проблема в видимости,это как использовать функцию до обьявления.
 
     Top
Master of Puppets
Posted: Dec 19 2009, 13:59

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

QUOTE (In the immortal words of knightmare, since Dec 19 2009, 02:23...)
Ох блин... Не скомпилируется, может потому, что для "определения" класса eggs компилятору необходимо знать, что такое spam<eggs>, но это невозможно потому, что там, в spam, говорится о eggs::cheese, а до cheese в eggs не мог дойти, и непонятно, есть оно там или нет.

Хотя теоретически, можно профорсить компиляцию наверно.

хз..

Правильно!
В строчке
CODE

class eggs : public spam<eggs>

происходит инстанциация шаблона spam, а ему в качестве параметра передается недоопредееленный тип (incomplete type) eggs, что и вызывает ошибку когда компилятор доходит до строчки
CODE

typedef typename  T::cheese footype;

Заметьте, что не зря использован именно typedef - если мы обратились к членам параметра из какого-нибудь метода spam, то ошибки бы не произошло (догадайтесь, почему).
Кстати, nop близко подошел к решению, но не очень детально объяснил проблему smile.gif
Но этот пример вовсе не означает, что подобные трюки (наследование от темплейта с передачей себя в качестве параметра) нельзя делать. Рекомендую ознакомится, интересная штука smile.gif

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
knightmare
Posted: Dec 19 2009, 15:05

Wise Dreamer

Group: Elite Member
Member No.: 1572

Joined: October 31, 2005

Да здравствует C++, простой и элегантный. smile.gif

--------------------
армия - эта крута, армейский спецназ - эта ваще крута


Хочу трахнуть Nissan Skyline R34, и ездить на Alessandra Ambrosio
 
    Top
40 replies since Nov 9 2007, 00:57 Track this topic | Email this topic | Print this topic
Pages: (3) 1 [2] 3 
<< Back to Programming languages

 




Arminco Global Telecommunications