Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 15

как поставить защиту от дураков?

14.09.2013, 17:52. Показов 965. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include "stdafx.h"
#include <math.h>
#include <clocale>
#include <iostream>
using namespace std;
 
 
int main ()
{
    setlocale(LC_ALL, "Russian");
     double grad=0,rez=0, rad=0;
     const double PI = 3.1415;
           cout << "Введите значение в градусах: \n";
           cin >> grad; 
           rad=(grad*PI)/180; //Программа переводит значение записаное в градсах в радианы
         rez=pow(cos(rad),2); //Возведение в квадрат
         cout <<  rez << endl; 
   system ("pause");
 return 0;
}
Нужно сделать защиту от "дураков", не знаю как реализовать,
когда пользователь вводит букву или что то еще кроме цифр, надо чтоб прога выдавала ошибку
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.09.2013, 17:52
Ответы с готовыми решениями:

Как сделать защиту от дураков
Здравствуйте, подскажите как сделать защиту от дураков? Есть DBGrid в нем есть поле номер. Номер повторятся не должен, если при добавлении...

Как поставить защиту на папки?
Всем привет! В общем например когда заходишь на www.site.ru/content/ у меня отображаюстя все файлы и папки... Так вот, как сделать, чтобы...

Как поставить защиту на админку?
Привет. у последний учебный год и стал вопроса диплома и я выбрал тему Создать сайт на собственном движке но это как нит можно реализовать...

7
 Аватар для SummerRain
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
14.09.2013, 17:58
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
#include <math.h>
#include <clocale>
#include <iostream>
using namespace std;
 
 
int main ()
{
    setlocale(LC_ALL, "Russian");
    double grad=0,rez=0, rad=0;
    const double PI = 3.1415;
    cout << "Введите значение в градусах: \n";
    while (true) {
        cin >> grad; 
        if (!cin) {
            cout << "Введите число!" << endl;
            cin.sync();
            cin.clear();
        }
        else break;
    }
    rad=(grad*PI)/180; //Программа переводит значение записаное в градсах в радианы
    rez=pow(cos(rad),2); //Возведение в квадрат
    cout <<  rez << endl; 
    system ("pause");
    return 0;
}
1
138 / 130 / 59
Регистрация: 13.12.2012
Сообщений: 293
14.09.2013, 17:58
C++
1
2
3
4
5
6
if (!(cin >> grad))
    {
        cout<<"Error";
        fflush(stdin);
        cin.clear();
    }
0
0 / 0 / 0
Регистрация: 14.09.2013
Сообщений: 15
14.09.2013, 18:07  [ТС]
Спасибо
А если пользователь введет так: 54рпкгрпш,
или так: 5,,4

Добавлено через 3 минуты
Спасибо
А если пользователь введет так: 54рпкгрпш,
или так: 5,,4
0
138 / 130 / 59
Регистрация: 13.12.2012
Сообщений: 293
14.09.2013, 18:09
Тогда так
C++
1
2
3
4
5
6
if (!(cin >> grad))
    {
        cout<<"Error";
        cin.clear();
    }
    fflush(stdin);
И в результате получится число, которое до первой буквы
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
14.09.2013, 18:36
Праздник, всё давным давно воплощено
Безопасный ввод через функцию-шаблон
0
2 / 2 / 0
Регистрация: 16.08.2013
Сообщений: 86
15.09.2013, 01:06
Праздник
Писал давненько такую штуку для себя:
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
int vvodsogr(int dl=6, int ot=0, int do_=-1);
int CharToInt(char* mas);
 
int main()
{
    vvodsogr();
    return 0;
}
 
int CharToInt(char* mas)
{
    int x=0;
    for(; *mas!=0; )
    {   x*=10;
        x+=(*mas-48);
        mas++;
    }
    return x;
}
 
int vvodsogr(int dl, int ot, int do_)
{
    int i;
    char vv0d[80]="\0";
    fflush(stdin);
    fgets(vv0d, sizeof(vv0d), stdin);
    for(i=0; (unsigned)i<strlen(vv0d); i++) {if(vv0d[i]=='\n') vv0d[i]=0;}
    
    if(vv0d[0]==0) return -1;
    for(i=0; vv0d[i]!=0; i++)
    {
        if(int(vv0d[i]-48)<0 || int(vv0d[i]-48)>9 || i==dl) return -1;
    }
    if( (CharToInt(vv0d)<ot && ot!=0) ||
        (CharToInt(vv0d)>do_ && do_!=-1) ) return -1;
    else return CharToInt(vv0d);
}

Функция vvodsogr() возвращает введённое число либо -1, если это не число. Первый параметр - максимальная длина числа, остальные два - не помню
Да, и работает только с положительными числами.
0
What a waste!
 Аватар для gray_fox
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
15.09.2013, 02:21
Цитата Сообщение от ViktorKozlov Посмотреть сообщение
fflush(stdin);
Нельзя так с потоками ввода, вызывает неопределённое поведение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.09.2013, 02:21
Помогаю со студенческими работами здесь

Как поставить ключ на программу и установить защиту от копирования?
Приветствую Всех Друзья! Не особо силен в программирование, ищу программу который установит ключ и защиту от копирование ПО. Помогите...

Как поставить защиту на диск,чтобы нельзя было его скинуть
Скажите пожалуйста как сделать так,чтобы скинуть на диск прогу,а затем установить защиту

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

Помогите поставить защиту на программу
Мне на программу нужно поставить &quot;защиту от дурака&quot;. То есть, пользователю нужно ввести число, а если он вводит не число, а, к примеру...

Поставить защиту на файл через htaccess
Здравствуйте! ситуация такая. хочу поставить защиту на файл с помощью .htaccess и .htpasswd. Сделал всё, как написано, создал файл...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru