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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.06.2011, 17:00   #1
NoAngel
Новичок
Джуниор
 
Регистрация: 13.06.2011
Сообщений: 1
Сообщение C++ Игра для угадывания чисел

Прошу помочь с написанием кода, мне всеголиш нужно что б программа писала "неверный ввод! повторите сначала" когда писали что то кроме цифр! Прошу модернизировать код и хоть немного обяснить что вы сделали.
По желанию можете подсказать как сделать что б диапазон чисел менялся а не как у меня.
Заранее благодарю!


#include <stdafx.h>
#include <iostream>
#include <conio.h>
#include <Windows.h>
using namespace std;


int main()
{
int number, mnumber, x, j;
x = 8; //Вот диапазон
j = 11; //Вот диапазон
cout << "Player 1 enter the number and prest ENTER: ";
cin >> number;

system("cls");
cout << "Player 2 the number in the range: " << (number + x) << " to ";
cout << (number - j) << endl;
Number:
cout << "Guess the number: ";
cin >> mnumber;
while (mnumber != number)
{
if (mnumber > number){
cout << "you wrong! Number is less\n";
break;
}

else
{
cout << "you wrong! Number is greater\n";
break;
}

}
if (number == mnumber){
cout << "You win Number is: " << number;
}
else
{
cout << "Try again!\n";
goto Number;


}
getch();
return 0;


}

Последний раз редактировалось NoAngel; 13.06.2011 в 17:06.
NoAngel вне форума Ответить с цитированием
Старый 13.06.2011, 18:22   #2
[CODER]
Форумчанин
 
Аватар для [CODER]
 
Регистрация: 02.02.2010
Сообщений: 305
По умолчанию

Цитата:
что б программа писала "неверный ввод! повторите сначала" когда писали что то кроме цифр!
нужно отлавливать исключения для этого используй try{}catch{}
а с кодом, пока не отформатируешь, разбирайся сам(а)
Skype: CODERua
[CODER] вне форума Ответить с цитированием
Старый 13.06.2011, 18:24   #3
Scaevola
Пользователь
 
Аватар для Scaevola
 
Регистрация: 08.06.2011
Сообщений: 25
По умолчанию

Неохота писать самому.Посмотри здесь http://programmersforum.ru/showthrea...F7%E8%F1%EB%EE или здесь http://www.cyberforum.ru/cpp-beginners/thread32433.html

Если все это не то,тогда поищи по интернету там много примеров угадай число.

Последний раз редактировалось Scaevola; 13.06.2011 в 18:26.
Scaevola вне форума Ответить с цитированием
Старый 13.06.2011, 19:58   #4
Алексей Емеля
Пользователь
 
Аватар для Алексей Емеля
 
Регистрация: 13.06.2011
Сообщений: 23
По умолчанию

Сам когда то писал такое. Я действовал вот по такому алгоритму:
я для считывания нужной цифры создавал две переменные - одна типа char, другая int. Командой cin считывал перемененную с клавиатуры, и проверял её по диапазону от 48 до 58 в цикле. В этом диапазоне в таблице ascii находятся цифры. Если код введенного символа не попадал в этот диапазон, то выводится команда ошибки, и ты вводишь его заново. После, когда символ есть цифра, то он преобразуется в тип int командой atoi. Скомпилировать твой иходник нет возможности, поэтому я просто напишу программу, которая выводит Error, если введенный символ не число:

int main()
{
char n;
cin >> n;
while( n < 48 && n > 58 )
{
cout << "Error" << endl;
cin >> n;
}
return 0;
}

ну а после этого останется только преобразовать веденный символ в цифру функцией atoi;
int number = atoi(n);

так вроде
Дорога в тысячу миль начинается с одного шага.
Алексей Емеля вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ИгРА для курсовой!!! михаил12 Общие вопросы C/C++ 6 12.01.2011 15:00
Занимательная игра для новичков Ev1L Общие вопросы C/C++ 0 25.11.2010 13:57
Программа для... Бот-игра. Teodor Общие вопросы C/C++ 8 18.11.2010 10:12
Игра для курсовой Барс Паскаль, Turbo Pascal, PascalABC.NET 2 04.07.2010 21:02
Игра "Расстановка девяти чисел"(ПАСКАЛЬ) Таня.Ку Помощь студентам 1 29.03.2010 13:29