Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2011, 00:08   #1
Alexander1205
Пользователь
 
Аватар для Alexander1205
 
Регистрация: 22.01.2011
Сообщений: 78
По умолчанию random number<<is the code true?

# include <iostream>
using namespace std;
void main ()
{
//Выбрать случайным образом пример на умножение от 2 до 9
//Запросить ответ у пользователя
//Проинформировать о результате
//Вывести оценку.
setlocale (LC_ALL,"rus");
int a,b,c,d,count;
a = rand()%8+2;
b = rand()%8+2;
c = 1;
count = 0;
while(c<=10)
{
cout<<a<<"*"<<b<<"=";
cin>>d;
if(d==(a*b))
{
cout<<" True\n";
c++;
}
else
{
cout<<" False\n";
}
}
cout<<"\n";
if (c=10){cout<<" Your mark is excellent!\n";
}
}
Alexander1205 вне форума Ответить с цитированием
Старый 26.01.2011, 00:11   #2
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

не true, а right. и ваще, если не знаешь английского, пиши по-русски .
Замеченные косяки:
1) void main() запрещено стандартом. Там должно быть int main().
2) 3я строка снизу. if (c=10). Ошибку видишь?
3) Для rand надо подключать <cstdlib>.
4) rand генерирует псевдо-случайные числа, а значит нужно seed. Типа того: srand(time(0)). Иначе числа всегда будут одинаковые. Но тогда ещё ctime надо подключить.
6) Ты числа генерируешь только 1 раз. В начале. То есть пользователь должен 10 раз посчитать одно и то же.
7) count не используется
8) a, b и d нужны только внутри цикла, незачем объявлять их снаружи.
9) существует endl.
10) True заменить на Right, False на Wrong.

Вот:
Код:
#include <iostream>
#include <cstdlib>
using namespace std;

int main()
{
    //Выбрать случайным образом пример на умножение от 2 до 9
    //Запросить ответ у пользователя
    //Проинформировать о результате
    //Вывести оценку.
    int c;
    c = 1;
    srand(time(0))
    while(c <= 10) {
        int a = rand() % 8 + 2;
        int b = rand() % 8 + 2;
        cout << a << "*" << b << "=";
        int d;
        cin >> d;
        if(d == (a * b)) {
            cout << " Right" << endl;
            c++;
        } else {
            cout << " Wrong" << endl;
        }
    }
    cout << endl;
    if(c == 10) {
        cout << " Your mark is excellent!\n";
    }
}
11) то есть в твоей программе двойку или тройку никак не получить?
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su

Последний раз редактировалось Obey-Kun; 26.01.2011 в 00:28.
Obey-Kun вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
create a number Alexander1205 Общие вопросы C/C++ 1 22.01.2011 00:58
Number of elements differ from declaration Alex Cones Общие вопросы Delphi 4 28.01.2010 20:49
WinApiEx - стандарт Number 1 Izhic Win Api 2 27.04.2009 16:40
Номера строк. [Code][/code] AngelOfDeath О форуме и сайтах клуба 4 11.12.2008 11:57
Page Number DarksideNv Microsoft Office Excel 6 15.10.2008 07:05