Форум программистов, компьютерный форум CyberForum.ru

Отследить ввод с клавиатуры... - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Аналог модуля Делфи в С++ http://www.cyberforum.ru/cpp-beginners/thread336079.html
Соббсно, в теме и есть вопрос. Есть модуль в делфях, а что есть аналогичное в С++??? . У нас преподают паскаль и тут задача поступила небольшая - написать программку(неважно какую) , используя модули. Я так чуток посмотрел, показалось, что это аналог классам. Но уж лучше спросить. Спасиб. Добавлено через 1 час 9 минут Неужели никто не знает???. Развейте, пожалуйста, мои сомнения!!!))
C++ массив string void func(string *mas) { //здесь } int main() { string s = { "one", http://www.cyberforum.ru/cpp-beginners/thread336072.html
C++ Дана квадратная матрица
прога на Си помогите решить дана квадратная матрица порядка N (элементы не отрицательны) Получить вторую матрицу. Элемент второй матрицы=1 i+j если сумма индексов равна элементу =-1 если модуль разности |i-j| равен элементу =0 в противном случае за ранее спасибо
даны натуральные числа N C++
прога на Си помогите решить Даны натуральные числа N b1,...,bn. Вычислить f(b0)+f(b1)+....f(bn) f(x)= x^2; x кратно 3 f(x)= x; если х при делении на 3 дает остаток 1 f(x)= x/3; в остальных случаях
C++ перегрузка классов http://www.cyberforum.ru/cpp-beginners/thread336055.html
Народ, всем привет:D!!! 2 дня тому назад писал код в которм необходимо было добавить в базовый и производный классы констуктор с дополнительными параметрами, сделал, компилятор показывает что нет ошибок, что все работает, нажимаю на исполнение и тормоз, вылазит сообщение и виснет, показывает, что там загруз все =-O. Народ, пожалуйста подправьте, где ошибка: #include<iostream.h>...
C++ задания из книги Плаугера из "Standard C Library" Exercise 1.4. Write a version of assert.h and xassert.c that prints all assertions. Why would you want to use this version? Exercise 1.5. Write a handler for the signal SIGABRT that writes the prompt: Continue (y/n)? to the standard error stream and reads the response from the standard input stream. If the response is yes (in either uppercase or lowercase), the handler... подробнее

Показать сообщение отдельно
popoff17
10 / 10 / 2
Регистрация: 13.07.2010
Сообщений: 206
25.07.2011, 20:28     Отследить ввод с клавиатуры...
Доброго времени суток!

Господа прошу помочь решить такую задачу: в консольном приложении нужно запретить ввод символов и цыфр, только буквы... Посоветовали мне "юзать getch()" но как его использовать ни примеров, ни объяснений я не смог найти. т.е. я смог после ввода прочитать коды введенных символов, но хотелось бы прямо во время нажатия на клавишу блокировать ненужные символы (знаки и цифры). подскажите пожалуйста как можно реализовать? может каким другим путем пойти?

пока что сделал проверку введенных данных функцией isalpha(), но так бы не желательно для меня...

в данный момент имею вот что:

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
void main() {
char imya[255], familya[255], otch[255];
    int act, year;
    menu:
    std::setlocale(LC_ALL, "Russian_Russia.1251");
 
std::cout << "Добро пожаловать в управление конференциями!"<<std::endl;
std::cout << "Выберете действие!"<<std::endl;
std::cout << ""<<std::endl;
std::cout << "1 -Ввод данных участника конференции."<<std::endl;
std::cin>>act;
 
if(!std::cin.good()){
std::cout<<"Некорректные данные"<<std::endl;
std::cin.clear();
std::cin.ignore(255, '\n').get();
}
 
 
switch (act){
                case 1:
familya:
std::cout << "Введите фамилию!"<<std::endl;
std::cin>>familya;
int i, len = std::strlen(familya);              //ОРГАНИЗУЕМ ПОСИМВОЛЬНОЕ ЧТЕНИЕ СТРОКИ
for(i=0; i<len; ++i){
    std::cout<<std::isalpha (familya[i])<<std::endl;
    if (isalpha (familya[i]) == 0){             //ПРОВЕРКА СИМВОЛОВ, ЕСЛИ НЕ БУКВА ТО ОШИБКА!!!
    std::cout<<"\nerror, try again!\n\n";
    goto familya;                                   //ПЕРЕХОД К НАЧАЛУ ВВОДА
    }}
 
 
std::cout << "Введите имя!"<<std::endl;
std::cin>>imya;
std::cout <<imya<<std::endl;
 
 
std::cout << "Введите отчество!"<<std::endl;
std::cin>>otch;
std::cout <<otch<<std::endl;
 
 
std::cout << "Введите год рождения!"<<std::endl;
std::cin>>year;
std::cout <<year<<std::endl;
 
file.open("anket.txt", std::ios::out | std::ios::app); // открытие файла
 
if (file.is_open()){
    std::cout << "file is open" <<std::endl; //проверка
    file<<familya<<";"<<imya<<";"<<otch<<";"<<year<<";";///запись в файл
    file.close(); //закрытиe файла
    system ("pause");}
break;
 
}
std::cin.ignore(255, '\n').get();
system ("pause");
}
если дописать case 2 ...... default: то происходит ошибка.

В общем кто чем поможет заранее спасибо!

З.Ы. если вопрос показался глупым - прошу тапками не кидать, только начал разбираться с сишкой.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 14:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru