![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Izzy |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 19.9.2002 Репутация: нет Всего: нет |
Это под досом, давно не пользовался и забыл
![]() Есть массив, в него юзеру надо ввести некоторое кол-во символом, но не больше определённого и не меньше. Вообщем сам вопрос, как сделать так, что бы нельзя было просто ввести больше? |
|||
|
||||
neutrino |
|
|||
![]() Gothic soul ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3041 Регистрация: 25.3.2002 Где: Верхняя Галилея, Кармиэль Репутация: 1 Всего: 62 |
В какой массив? Строку? Используй функцию gets(). А если у тебя массив целых или других чисел, то сам проверяй в цикле.
-------------------- The truth comes from within ... Покойся с миром, Vit |
|||
|
||||
Lobsang |
|
|||
Unregistered |
В любом случае раз числа значит проверяй в цикле.
Коли целые, так дели на цело на 10, смотри осталось ли что в целой части, увеличиваешь счетчик на 1. и так пока в целой части не окажется 0 Прокрутил весь цикл, проверил счетчик. Если его значение совпадает с заданным тобой - ввод разрешаешь, нет - выводишь собщение о нарушении. |
|||
|
||||
suborg |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 190 Регистрация: 29.4.2002 Где: Москва Репутация: нет Всего: нет |
Кстати, насчет цифр в целом числе - у меня тут идея родилась только что не совсем в тему, но всё же:
число цифр можно определить одной строчкой, код будет более тормозной, но если это не сильно важно, получится красиво ![]() n=int(log(i))+1; где i - целое число, а n - количество цифр в этом числе. |
|||
|
||||
DrMasik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 13.12.2002 Репутация: нет Всего: нет |
![]() |
|||
|
||||
Dagger |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 377 Регистрация: 4.9.2002 Где: Киев Репутация: нет Всего: 8 |
2Max
![]() ![]() |
|||
|
||||
Izzy |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 19.9.2002 Репутация: нет Всего: нет |
Вообщем вот что я спрашивал
![]() Например массив символов char buff [10]; cout << "Вопрос"; cin >> buff; // и вот тут запретить юзеру ввести больше 9 символов ![]() |
|||
|
||||
DrMasik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 13.12.2002 Репутация: нет Всего: нет |
![]() Считываем не более 20 символов: scanf("%20s@); |
|||
|
||||
DrMasik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 13.12.2002 Репутация: нет Всего: нет |
И еще, Иззи, не мучайся с массивами типа char. ни к чему хорошему не приведет - а пользуйся стандартой прибомбамой - тип string.
![]() |
|||
|
||||
Dagger |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 377 Регистрация: 4.9.2002 Где: Киев Репутация: нет Всего: 8 |
Оффтопик: А над ним можно выеживать то же, что и с char (функц., типа strstr, strchr,strcmp)? |
|||
|
||||
DrMasik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 13.12.2002 Репутация: нет Всего: нет |
Даггер, дело в том, что тип string, во-первых коннектится с помощью
#include <string> и желательно использовать, после инклудников, using namespace std; Хотя можно и без этого... А по поводу там длин строк и т.д. - это делается так. Допустим есть переменная VAR данного типа, тогда: VAR.length(); Вот те и длина. Вобщем прибамбасов там уйма (почти), так что открывай MSDN и учи английский ![]() |
|||
|
||||
Dagger |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 377 Регистрация: 4.9.2002 Где: Киев Репутация: нет Всего: 8 |
А этот тип работает в UNIX-системах. Если нет, то его использовать нет никакого смысла
![]() |
|||
|
||||
DrMasik |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 35 Регистрация: 13.12.2002 Репутация: нет Всего: нет |
Работает. еще и как работает!
![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |