0 / 0 / 0
Регистрация: 29.04.2011
Сообщений: 8
1

Игра "Угадай число"

29.04.2011, 23:40. Показов 9369. Ответов 31
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите написать программу!!!Вот задание: Игра «Угадай число»: составьте программу определения компьютером задуманного человеком числа от 1 до 1000 с помощью 10 вопросов. Ответы человека – да, нет.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.04.2011, 23:40
Ответы с готовыми решениями:

Игра в угадай число
Вот код. #include <iostream> #include <cstdlib> #include <ctime> using namespace std; ...

Игра «Угадай число»
Игра «Угадай число». Программа отгадывание целого числа, которое «загадал» компьютер в определенном...

Игра «Угадай число»
4. Игра «Угадай число». Компьютер загадывает число, человек отгадывает. Всего 5 попыток. (random)

игра казино (угадай число)
Задали задание сделать вот такое казино чисел, сделал, показал ему, сказал сделать чтобы баланс...

Игра угадай число, необходимо сделать ввод n в string a
Необходимо сделать, чтобы вводили "Мало, прибавь и (здесь любое число)", как это сделать, вот код ...

31
3 / 3 / 2
Регистрация: 21.01.2011
Сообщений: 29
30.04.2011, 17:20 21
Author24 — интернет-сервис помощи студентам
сори с тупил, но заметил чуть другую ошибку, вы спрашиваете это то число или нет, а на ответ да оно ищет больше чем вы указали...
поэтому надо добавить еще else if на ответ yes что бы программа прерывалась и показывала загаданое число, а в место старых yes и no поставить bigger or smaller и можно сократить до b и s
тоесть примерно вот так:
C++
1
2
3
4
5
6
7
8
9
cout<<"Number bigger or smaller or this (b or s or y) > "<<middle<<" ?"<<endl;
if (ans == "b")
                        left = middle + 1;
                else
                        if (ans == "s")
                                right = middle;
                else
                        if (ans == "y")
                                { left = middle; break;}
Добавлено через 10 минут
а также можно добавить библиотеку <conio.h> и после вывода числа добавить строчку getch();
0
Программист
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
30.04.2011, 17:27 22
Цитата Сообщение от SK01736 Посмотреть сообщение
а также можно добавить библиотеку <conio.h> и после вывода числа добавить строчку getch();
А можно никаких библиотек не добавлять
C++
1
system("pause");
0
114 / 114 / 13
Регистрация: 29.04.2010
Сообщений: 240
30.04.2011, 17:40 23
Цитата Сообщение от SK01736 Посмотреть сообщение
программа хр***вая, например загадал число 25, оно его не проверяло и под конец сказало что мое число это 1...
Number > 500 ?
no
Number > 250 ?
no
Number > 125 ?
no
Number > 63 ?
no
Number > 32 ?
no
Number > 16 ?
yes
Number > 24 ?
yes
Number > 28 ?
no
Number > 26 ?
no
Number > 25 ?
no
Your number is 25!
Для продолжения нажмите любую клавишу . . .
Есть понятие "больше", а есть понятие "больше или равно", учитесь их различать. Почему я не добавил возможность ответить "равно"? Потому что ТС еще в начале темы сказал, что ответ может быть только "да" или "нет".
0
3 / 3 / 2
Регистрация: 21.01.2011
Сообщений: 29
30.04.2011, 18:40 24
а если число 750 как он узнает?
или надо 10 раз клацать чтобы он в конце концов его почти угадал?
0
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
30.04.2011, 18:41 25
SK01736, вам про двоичный поиск в интернете не прочитать, в чем проблема? Тем более линки вам уже дали. Подобные вопросы сразу отпадут.
Сначала - интернет, потом - форум, не наоборот, запомните.
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
30.04.2011, 18:46 26
Цитата Сообщение от prZzZ Посмотреть сообщение
А можно никаких библиотек не добавлять
Вообще-то system() определена в cstdlib.
0
0 / 0 / 0
Регистрация: 29.04.2011
Сообщений: 8
30.04.2011, 18:54  [ТС] 27
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <iostream>
using namespace std;
 
int BinSearch(int *M, int n, int k);
 
int main()
{
    const int n=5;
    int A[n];
    int x;
    
    for (size_t i=0; i<n; i++)
    {
        cout << "Please, input A[" << i+1 << "] = ";
        cin >> A[i];
    }
    
    cout << "find this -> ";
    cin >> x;
    
    cout << BinSearch(A, n, x);
    
    return 0;
}
 
int BinSearch(int *M, int n, int k)
{
    int L = 0;
    int R = n;
 
    int m;
    int z = 0;
 
    while (L<R)
    {
        z++;
        m = (L+R)/2;
        if (k > M[m]) L = m;
        if (k < M[m]) R = m;
        if (k == M[m]) break;
    }
 
    return m;
}
Нашел на форуме. Только как сделать ее без ручного ввода в массив чисел и подогнать под Borland C++??!!
0
Программист
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
30.04.2011, 19:02 28
asics,
Цитата Сообщение от asics Посмотреть сообщение
Вообще-то system() определена в cstdlib.
Вообще-то она в cstdlib реализована, а определена она в stdlib.h, который iostream грузит автоматом...
0
Freelance
Эксперт С++
2891 / 1826 / 356
Регистрация: 09.09.2010
Сообщений: 3,841
30.04.2011, 19:10 29
prZzZ, Может не будем говорить глупости ?
cstdlib(mingw 4.6.0)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
// -*- C++ -*- forwarding header.
 
// Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
// 2006, 2007, 2008, 2009, 2010
// Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library.  This library is free
// software; you can redistribute it and/or modify it under the
// terms of the GNU General Public License as published by the
// Free Software Foundation; either version 3, or (at your option)
// any later version.
 
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
 
// Under Section 7 of GPL version 3, you are granted additional
// permissions described in the GCC Runtime Library Exception, version
// 3.1, as published by the Free Software Foundation.
 
// You should have received a copy of the GNU General Public License and
// a copy of the GCC Runtime Library Exception along with this program;
// see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
// <http://www.gnu.org/licenses/>.
 
/** @file include/cstdlib
 *  This is a Standard C++ Library file.  You should @c \#include this file
 *  in your programs, rather than any of the @a *.h implementation files.
 *
 *  This is the C++ version of the Standard C Library header @c stdlib.h,
 *  and its contents are (mostly) the same as that header, but are all
 *  contained in the namespace @c std (except for names which are defined
 *  as macros in C).
 */
 
//
// ISO C++ 14882: 20.4.6  C library
//
 
#pragma GCC system_header
 
#include <bits/c++config.h>
 
#ifndef _GLIBCXX_CSTDLIB
#define _GLIBCXX_CSTDLIB 1
 
#if !_GLIBCXX_HOSTED
// The C standard does not require a freestanding implementation to
// provide <stdlib.h>.  However, the C++ standard does still require
// <cstdlib> -- but only the functionality mentioned in
// [lib.support.start.term].
 
#define EXIT_SUCCESS 0
#define EXIT_FAILURE 1
 
namespace std
{
  extern "C" void abort(void) throw () _GLIBCXX_NORETURN;
  extern "C" int atexit(void (*)()) throw ();
  extern "C" void exit(int) throw () _GLIBCXX_NORETURN;
} // namespace std
 
#else
 
#include <stdlib.h>
 
// Get rid of those macros defined in <stdlib.h> in lieu of real functions.
#undef abort
#undef abs
#undef atexit
#undef atof
#undef atoi
#undef atol
#undef bsearch
#undef calloc
#undef div
#undef exit
#undef free
#undef getenv
#undef labs
#undef ldiv
#undef malloc
#undef mblen
#undef mbstowcs
#undef mbtowc
#undef qsort
#undef rand
#undef realloc
#undef srand
#undef strtod
#undef strtol
#undef strtoul
#undef system
#undef wcstombs
#undef wctomb
 
namespace std _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
  using ::div_t;
  using ::ldiv_t;
 
  using ::abort;
  using ::abs;
  using ::atexit;
  using ::atof;
  using ::atoi;
  using ::atol;
  using ::bsearch;
  using ::calloc;
  using ::div;
  using ::exit;
  using ::free;
  using ::getenv;
  using ::labs;
  using ::ldiv;
  using ::malloc;
#ifdef _GLIBCXX_HAVE_MBSTATE_T
  using ::mblen;
  using ::mbstowcs;
  using ::mbtowc;
#endif // _GLIBCXX_HAVE_MBSTATE_T
  using ::qsort;
  using ::rand;
  using ::realloc;
  using ::srand;
  using ::strtod;
  using ::strtol;
  using ::strtoul;
  using ::system;
#ifdef _GLIBCXX_USE_WCHAR_T
  using ::wcstombs;
  using ::wctomb;
#endif // _GLIBCXX_USE_WCHAR_T
 
  inline long
  abs(long __i) { return labs(__i); }
 
  inline ldiv_t
  div(long __i, long __j) { return ldiv(__i, __j); }
 
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace
 
#if _GLIBCXX_USE_C99
 
#undef _Exit
#undef llabs
#undef lldiv
#undef atoll
#undef strtoll
#undef strtoull
#undef strtof
#undef strtold
 
namespace __gnu_cxx _GLIBCXX_VISIBILITY(default)
{
_GLIBCXX_BEGIN_NAMESPACE_VERSION
 
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  using ::lldiv_t;
#endif
#if _GLIBCXX_USE_C99_CHECK || _GLIBCXX_USE_C99_DYNAMIC
  extern "C" void (_Exit)(int) throw () _GLIBCXX_NORETURN;
#endif
#if !_GLIBCXX_USE_C99_DYNAMIC
  using ::_Exit;
#endif
 
  inline long long
  abs(long long __x) { return __x >= 0 ? __x : -__x; }
 
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  using ::llabs;
 
  inline lldiv_t
  div(long long __n, long long __d)
  { lldiv_t __q; __q.quot = __n / __d; __q.rem = __n % __d; return __q; }
 
  using ::lldiv;
#endif
 
#if _GLIBCXX_USE_C99_LONG_LONG_CHECK || _GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  extern "C" long long int (atoll)(const char *) throw ();
  extern "C" long long int
    (strtoll)(const char * __restrict, char ** __restrict, int) throw ();
  extern "C" unsigned long long int
    (strtoull)(const char * __restrict, char ** __restrict, int) throw ();
#endif
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  using ::atoll;
  using ::strtoll;
  using ::strtoull;
#endif
  using ::strtof;
  using ::strtold;
 
_GLIBCXX_END_NAMESPACE_VERSION
} // namespace __gnu_cxx
 
namespace std
{
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  using ::__gnu_cxx::lldiv_t;
#endif
  using ::__gnu_cxx::_Exit;
  using ::__gnu_cxx::abs;
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  using ::__gnu_cxx::llabs;
  using ::__gnu_cxx::div;
  using ::__gnu_cxx::lldiv;
#endif
  using ::__gnu_cxx::atoll;
  using ::__gnu_cxx::strtof;
  using ::__gnu_cxx::strtoll;
  using ::__gnu_cxx::strtoull;
  using ::__gnu_cxx::strtold;
} // namespace std
 
#ifdef __GXX_EXPERIMENTAL_CXX0X__
 
namespace std
{
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  // types
  using std::lldiv_t;
 
  // functions
  using std::llabs;
  using std::lldiv;
#endif
 
  using std::atoll;
  using std::strtoll;
  using std::strtoull;
 
  using std::strtof;
  using std::strtold;
 
  // overloads
  using std::abs;
#if !_GLIBCXX_USE_C99_LONG_LONG_DYNAMIC
  using std::div;
#endif
} // namespace std
 
#endif // __GXX_EXPERIMENTAL_CXX0X__
 
#endif // _GLIBCXX_USE_C99
 
#endif // !_GLIBCXX_HOSTED
 
#endif

Где Вы здесь видите реализацию ?Да и вообще, компилирую код
C++
1
2
3
4
5
6
7
//#include <cstdlib>
#include <iostream>
 
int main(){
  system("pause");
  return 0;
}
ошибка:
Bash
1
error: 'system' was not declared in this scope
так что, не будьте так громки в своих заявлениях.
0
1 / 1 / 1
Регистрация: 30.04.2011
Сообщений: 5
30.04.2011, 19:11 30
m:array [1..1000] of real;
0
Программист
119 / 97 / 11
Регистрация: 22.03.2011
Сообщений: 244
30.04.2011, 19:15 31
asics, Извините... У меня на VC 6.0 компилируется всё без ошибок...
0
36 / 24 / 3
Регистрация: 05.01.2010
Сообщений: 37
01.05.2011, 01:20 32
все правильно. в vs stdlib.h грузится автоматом при подключении iostream. и не только этот хэдер.
попробуй через std нэймспейс вызвать метод.
0
01.05.2011, 01:20
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.05.2011, 01:20
Помогаю со студенческими работами здесь

Игра "Угадай число", не работает условие угадать число за 5 попыток
#include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std; int main() { int...

Игра "Угадай число" на Turbo C++
помогите пожалуйста.Нужно создать игру угадай число на turbo c ++. Один из играющих задумывает...

Готовая игра "угадай число"
#include &lt;iostream.h&gt; int main () { int x=rnd%256; int d; int masks={0x80, 0x40, 0x20,...

Игра "Угадай число"
2)Написать программу, которая &quot;задумывает&quot; число в диапазоне от 1 до 10 и предлагает пользователю...

Игра "Угадай число"
#include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std; int main() {...

Игра "Угадай число"
Здравствуйте,помогите у кого есть время и возможность вообщем задание такое: нужно написать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
32
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru