Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Artyom13112421
0 / 0 / 2
Регистрация: 03.12.2015
Сообщений: 9
#1

Запрет на ввод букв/цифр - C++

28.05.2016, 14:01. Просмотров 301. Ответов 1
Метки нет (Все метки)

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
#include <stdafx.h>
#include <iostream>
#include <string>
#include <conio.h>
#include <fstream>
#include <iomanip>
#include <stdlib.h>
#include <windows.h>
#include <iomanip>
using namespace std;
 
 
 
 
void add(int numVoc){
ofstream filE;
string yesNo, a;
cout << "Таких слов нет. Хотите добавить?(y/n)" << endl;
cin >> yesNo;
if (yesNo == "y"){
switch (numVoc){
case 1: filE.open("furniture.txt", ios_base::app); break;
case 2: filE.open("food.txt", ios_base::app); break;
case 3: filE.open("musical instrument.txt", ios_base::app); break;
case 4: filE.open("plant.txt", ios_base::app); break;
case 5: filE.open("cities.txt", ios_base::app); break;
case 6: filE.open("cityUK.txt", ios_base::app); break;
case 7: filE.open("cityGerm.txt", ios_base::app); break;
}
cout << "Введите слово, которого нехватает:\n";
cin >> a;
filE << a << endl;
filE.close();
}
if (yesNo == "n") {
cout << "Thanks";
}
}
 
 
 
int main(){
setlocale(LC_ALL, "RUS");
string a = "", yesNo = "", bucva, itwas, oneMore;
int colBucv, numVoc, wordis = 0, position;
 
 
 
{//файлы-словари расположены на диске D в папке voc.
ifstream file;
cout << "Выберете тематику словаря(введите цифру)"
<< "\n1.мебель"
<< "\n2.еда"
<< "\n3.музыкальные инструменты"
<< "\n4.растения"
<< "\n5.города \n"
<< "\n6.города Украины \n"
<< "\n7.города Германии \n";
 
cin >> numVoc;
 
switch (numVoc){
case 1: file.open("furniture.txt"); break;
case 2: file.open("food.txt"); break;
case 3: file.open("musical instrument.txt"); break;
case 4: file.open("plant.txt"); break;
case 5: file.open("cities.txt"); break;
case 6: file.open("cityUK.txt"); break;
case 7: file.open("cityGerm.txt"); break;
}
 
cout << "Введите количество букв:" << endl;(Запрет на ввод букв,если вводится ноль - повторить запрос о количестве )
cin >> colBucv;
cout << "Известны какие-нибудь буквы?(y/n)" << endl;(Запрет на ввод цифр)
cin >> yesNo;
if (yesNo == "y"){
cout << "bucva - ";
cin >> bucva;
cout << "position - ";
cin >> position;
}
if (yesNo == "n")
{
bucva = "";
position = 0;
}
 
if (file){
while (getline(file, a)) {
if (a.length() == colBucv)
{
if (bucva == "" && position <= 0){
cout << a << endl;
wordis++;
}
 
else{
if (a.find(bucva) == (position - 1)){
if (a != itwas){
cout << a << endl;
wordis++;
}
}
}
}
}
file.close();
if (wordis == 0){
add(numVoc);
}
cout << "Если нашли нужное слово, вбейте(y/n)\n";
cin >> yesNo;
if (yesNo == "y")
{
cout << "вбейте нужное слово \n";
cin >> itwas;
}
if (yesNo == "n")
{
itwas = "";
cout << "Хотите добавить слово?(y/n)\n";
cin >> yesNo;
if (yesNo == "y")
{
add(numVoc);
}
 
}
cout << "Нужно еще раз пройтись по словарям?(y/n)\n";
cin >> oneMore;
}
else{
cout << "Файл не существует" << endl;
}
} while (oneMore == "y");
 
 
 
cout << endl
<< endl
<< "Спасибо, что воспользовались нашей программой!\nБудем рады Вам помочь!";
system("pause");
return 0;
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2016, 14:01
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Запрет на ввод букв/цифр (C++):

Запрет на ввод букв
Помогите пожалуйста сделать запрет на ввод букв: #include &quot;stdafx.h&quot; ...

Запрет на ввод букв в консоли на C++
Здравствуйте, сижу за С++ не много, так что не очень в нем разбираюсь....

Запрет на ввод русских букв, написанных на клавишах нижнего ряда
Составить программу, не позволяющую вводить русские буквы, написанные на...

ввод букв вместо цифр
Привет. Я новичок. Подскажите как сделать так чтобы, в консольной программе при...

Ввод букв и цифр в одну переменную и вывод их на экран
Короче, не могу разобраться с одним делом.. Читал на форуме как это проделать,...

Как осуществить ввод букв и цифр вручную в окне написанной программы
Здраствуйте уважаемые коллеги) Редактировала программу под себя, вернее скрипт...

1
nmcf
6245 / 5557 / 2527
Регистрация: 14.04.2014
Сообщений: 23,361
28.05.2016, 14:17 #2
C++
1
2
3
4
5
6
7
8
9
10
for (;;)
{
    cout << "Введите количество букв:" << endl;
    if (!(cin >> colBucv))
    {
        cin.clear();
        cin.ignore(numeric_limits<streamsize>::max(), '\n');
    }
    else break;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.05.2016, 14:17
Привет! Вот еще темы с решениями:

Дан текст из букв и цифр. Определить чего больше букв или цифр. В С++
Помогите пожалуйста, очень нужно.

Последовательность из цифр, букв и знаков. Подсчитать чего больше и составить строки только из цифр, букв и знаков
Дана последовательность состоящая из цифр, букв и знаков пунктуации в...

Ограничение на ввод символов (разрешить ввод только цифр)
Всем доброго времени суток! Я начал изучать С++ и у меня возник такой...

ЗАПРЕТ на ввод Б У К В Ы ... ... ...
Господа Уважаемые Программисты, если я объявляю переменную х как...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru