Страница 1 из 1

пара вопросов по C++

Добавлено: Чт мар 16, 2006 05:36
rageX
#include <iostream.h>
#include <stdlib.h>
#include <time.h>


int rollDice(void);

int rollDice(void)
{
int die1, die2, workSum;

die1 = 1 + rand() % 6;
die2 = 1 + rand() % 6;
workSum = die1 + die2;

cout << "players shot: " << die1 << " + " << die2 << " = " << workSum << endl;


return workSum;
}

main()
{
enum status {CONTINUE, WON, LOST};
int sum, myPoint;
status gameStatus;

srand (time (NULL));
sum = rollDice();

switch (sum)
{
case 7: case 11:
gameStatus = WON;
break;
case 2: case 3: case 12:
gameStatus = LOST;
break;
default:
gameStatus = CONTINUE;
myPoint = sum;

cout << "score: " << myPoint << endl;
break;
}
while (gameStatus == CONTINUE)
{
rollDice();

if (sum == myPoint)
gameStatus = WON;
else if (sum == 7)
gameStatus = LOST;
}
if (gameStatus == WON)
cout << "you won" << endl;
else
cout << "you lost" << endl;

return 0;
}


Вобщем ето код игры в кости .

1) Обьясните пжлста как действует знак "%" ,в программе он устанавливает границу значений кубика (6)
die1 = 1 + rand() % 6;
. Код с книги ,и я не могу понять как действует етот знак в общем :(


2)
enum status {CONTINUE, WON, LOST};
разьясните пжлста ету строку.


3)
enum status {CONTINUE, WON, LOST};
int sum, myPoint;
status gameStatus;
3 строку не могу понять ,ето типо обьявляется что status, ето gameStatus :? ??? Зачем ето делать ??? либо я неправльно понял ,либо ето просто тупо и невтемно. :ermm:

Добавлено: Чт мар 16, 2006 08:02
Unknown
хотя я дуб-дубом в Си:

1) ето оператор модуло, в Паскале "мод"
12 % 5 = 2
12 % 7 = 5
7 % 5 =2

2)3)статус - тип данных, ну скажем как инт но тока он может принимать значения {CONTINUE, WON, LOST};, а гамеСтатус ето переменная типа статус :kettle: :kettle:

Добавлено: Чт мар 16, 2006 09:49
jsmax
enum status {CONTINUE, WON, LOST} это перечисление где CONTINUE=0, WON=1 и LOST=2 ...

Добавлено: Чт мар 16, 2006 14:50
Iulik D
rageX,

RTFM

Добавлено: Чт мар 16, 2006 16:24
rageX
Iulik D,
RTFM
Код с книги
смени мозги .

Unknown,
1) ето оператор модуло, в Паскале "мод"
12 % 5 = 2
12 % 7 = 5
7 % 5 =2
thx , догнал ,в книге примеров не было ,поетому я понять не мог :)

jsmax,
enum status {CONTINUE, WON, LOST} это перечисление где CONTINUE=0, WON=1 и LOST=2 ...
вкурил :)

thx pple :)

Добавлено: Сб мар 18, 2006 12:02
Iulik D
rageX,

Если с книги (человек с "мозгами")... То в каждой книжке есть есть обьяснения что такое масив и их виды, операторы, и т.д. и т.п. Но если ты считаеш себя таким умным и берёш сразы более сложные примеры то не нужно обвинять других в отсутсвие мозгов...

http://www.enel.ucalgary.ca/People/Norm ... num_types/

Добавлено: Сб мар 18, 2006 23:50
rageX
Iulik D,
вот видиш как получается : сначала ты мне пишешь read the fucking manual ,а потом, после того оставляешь ссылку :ermm: . Ты даже пост мой наверняка не дочитал и сразу принялся за грубость ,мог бы и промолчать раз так не лиубишь помогать.
если ты считаеш себя таким умным
я об етом даже не упомянул вобщето.
не нужно обвинять других в отсутсвие мозгов...
разве я кого-то обвинял :? , я попросил помочь разобраться ,т.к. даже в самых хороших книгах автор допускает ошибку ,в етой книге про enum ничего не говорили ,а просто записали его в етом примере.
Но если ты считаеш себя таким умным и берёш сразы более сложные примеры
если б я вобще ничего не знал ,мне пришлось бы просить перевести каждуиу строку , я далеко не первый день как начал изучать C++

Добавлено: Пн мар 20, 2006 15:39
Iulik D
rageX,
если б я вобще ничего не знал ,мне пришлось бы просить перевести каждуиу строку , я далеко не первый день как начал изучать C++
ну тогда очень страно почему те не знаеш enum и %

[off]добавлено спустя 1 час 38 минут:[/off]

и RTFM ето к читению мануалов про с/с++ а не тот что ты читаеш

Добавлено: Вт мар 21, 2006 03:25
rageX
Iulik D,
и RTFM ето к читению мануалов про с/с++ а не тот что ты читаеш
я как раз ето и читаиу ;)
:)