Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
TecktoTrance
0 / 0 / 0
Регистрация: 18.02.2013
Сообщений: 13
#1

Защита от дурака - C++

06.03.2013, 19:29. Просмотров 1065. Ответов 3
Метки нет (Все метки)

Здравствуйте уважаемые форумчане! я к вам, и вот по какому делу)
Вот есть у меня задача:
Даны два целых числа А и В. Вывести в порядке убывания все целые числа, расположенные между А и В,
не включая сами эти числа, а также количество N этих чисел. А и В вводит пользователь, А < В.
Предусмотреть возможность повторения действия пользователя несколько раз.

А вот и код:
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
#include <iostream>
using namespace std;
void main(){
    setlocale(LC_ALL,"rus");
    int a,b;
    int sum=0;
    int answer;
    do{
    cout<<"Выберите действие: "<<endl;
    cout<<"1.Запуск программы"<<endl;
    cout<<"2.Выход из программы"<<endl;
    cout<<"Ваше действие: ";cin>>answer;
 
    switch(answer){
    case 1:
    cout<<"Введите числа, при условии что А<B"<<endl;
    cout<<"Введите число А: ";cin>>a;
    cout<<"Введите число В: ";cin>>b;
    if(a>b){
        cout<<"Вы ввели числа(символы) не по условию задания!"<<endl;
    }
    for(int i=b-1;i>a;i--){
        cout<<i<<" ";
        sum++;
        }
    
    cout<<endl<<"Количество выведенных чисел: "<<sum<<endl<<endl;
    sum=0; //сбрасывает счетчик выведенных чисел
    break;
    case 2:
        cout<<"Выход из программы!"<<endl;
        break;
    default:
        cout<<"Вы ввели числа(символы) не по условию задания!"<<endl;
    }}while(answer!=2);
    cout<<"Пока, Пока! ;D"<<endl;
 
}
Все вроде хорошо, только вот не могу сделать чтоб была защита от введенных пользователем символов, то есть, если он вводит в меню не верный число то его сразу возвращает с предупреждением в начало, а я хотел бы еще дополнить тем что бы если пользователь начинает по клавиатура бить как по пианино, вводя символы, его тоже возвращало к конкретному месту.
Спасибо =)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2013, 19:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Защита от дурака (C++):

Защита от дурака - C++
Как в этот код добавить защиту от ввода символов? #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;Windows.h&gt; #include &lt;cmath&gt; ...

защита от дурака - C++
Знаю что таких тем уже было много, но в них я ничего полезного не нашел. Так вот задания: пользователь вводит элементы в массив, но нужно...

Защита от дурака - C++
Помогите, пожалуйста. Программа должна печатать только цифры (а не буквы и прочие символы, знак минус может стоять в самом начале) и при...

Защита от дурака - C++
нужна защита от дурака пытался реализовать с помощью 2 разных способов не вышло. #include &lt;iostream&gt; #include &lt;string&gt; #include...

Защита от дурака - C++
Вот кусок кода: do { cout &lt;&lt; &quot;Выберите вариант решения:&quot; &lt;&lt; endl; cout &lt;&lt; &quot; - первй вариант.&quot; &lt;&lt; endl; cout &lt;&lt; &quot; -...

Защита от дурака - C++
Вот только начал изучать С++ помогите составить защиту от дурака пожалуйста, вот код: #include &lt;iostream&gt; using namespace std; ...

3
instagib
122 / 85 / 3
Регистрация: 14.02.2011
Сообщений: 340
06.03.2013, 20:03 #2
TecktoTrance,
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
#include <iostream>
#include <ctype.h>
#include <stdlib.h>
#include <string>
using namespace std;
 
bool isnumber(std::string str)
{
    int len = str.length();
    for (int i=0;i<len;i++)
            if (isalpha(str[i])) return false;
 return true;
}
 
int main(){
    setlocale(LC_ALL,"rus");
    int a,b;
    int sum=0;
    int answer;
    string str;
    do{
    cout<<"Выберите действие: "<<endl;
    cout<<"1.Запуск программы"<<endl;
    cout<<"2.Выход из программы"<<endl;
    cout<<"Ваше действие: ";cin>>str;
    if(isnumber(str)) answer = atoi(str.c_str());
    else {
            cout << "ошибка ввода!" << endl;
            continue;
        }
 
    switch(answer){
    case 1:
    cout<<"Введите числа, при условии что А<B"<<endl;
    cout<<"Введите число А: ";cin>>a;
    cout<<"Введите число В: ";cin>>b;
    if(a>b){
        cout<<"Вы ввели числа(символы) не по условию задания!"<<endl;
    }
    for(int i=b-1;i>a;i--){
        cout<<i<<" ";
        sum++;
        }
 
    cout<<endl<<"Количество выведенных чисел: "<<sum<<endl<<endl;
    sum=0; //сбрасывает счетчик выведенных чисел
    break;
    case 2:
        cout<<"Выход из программы!"<<endl;
        break;
    default:
        cout<<"Вы ввели числа(символы) не по условию задания!"<<endl;
    }}while(answer!=2);
    cout<<"Пока, Пока! ;D"<<endl;
 
    return 0;
 
}
1
egor2116
342 / 373 / 42
Регистрация: 20.01.2013
Сообщений: 1,132
06.03.2013, 20:08 #3
Может это поможет
C++
1
2
3
4
5
6
7
8
9
    char b;
 
    while(cin.get(b))
    {
        if(b='a')
       cout<<"Что то делаем"<<endl;
        else
            cout<<"Делаем что то другое"<<endl;
    }
0
vyachesmine
7 / 7 / 1
Регистрация: 19.02.2013
Сообщений: 22
07.03.2013, 00:48 #4
TecktoTrance, попробуй, где требуется защита от дурака использовать while или do while (как нравится), а условием выхода из цикла пропиши ввод верных параметров.
0
07.03.2013, 00:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.03.2013, 00:48
Привет! Вот еще темы с ответами:

защита от дурака как сделать? - C++
void DobvZapis() { int i; int j; char komanda; j = kol; do { system(&quot;cls&quot;); cout &lt;&lt; &quot;Введите книгу&quot; &lt;&lt;...

Защита от дурака. Разбор кода - C++
всем здравствуйте. Прошу помощи. такова ситуация, есть код защиты от ввода букв и отбрасывания пробелов, но не могу разобраться, он не мой....

Защита от дурака (пустое значение в названии) - C++
Доброго вечера) Я пытаюсь сделать защиту от дурака, если конкретно - проверку при на ввод названия пустого значение, т.е. пробела или...

Защита от дурака. Ввод данных типа int с клавиатуры. - C++
Данные типа int вводятся с клавиатуры. нужно поставить защиту от дурака. Полазил на форуме нашёл программу: по аналогии пытался...


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

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

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