Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.10.2015, 21:15   #1
AB96
Пользователь
 
Регистрация: 20.10.2015
Сообщений: 22
По умолчанию Реализовать защиту от ввода символов и букв

Доброго времени суток! Пожалуйста, помогите мне, начинающему программисту, сделать защиту от ввода символов и букв в моей программе (на языке "Си"):

Код:
#include <conio.h>
#include <stdio.h>
#include <locale.h>
 
void main()
{
    float Rsum, R1,R2,R3;
    setlocale(LC_ALL, "rus");
    do 
   {  
    fflush(stdin);
    printf("Введите R1, R2 и R3 для параллельного соединения: ");
    scanf("%f",&R1);
    scanf("%f",&R2);
    scanf("%f",&R3);
    if((R1<0)||(R2<0)||(R3<0))
    printf("\n\a ОШИБКА: отрицательных значений быть не должно! \n");
    }while ((R1<0)||(R2<0)||(R3<0));
                    Rsum=1/(1/R1+1/R2+1/R3);
                    printf("Сопротивление параллельного соединения равно: %.4f", Rsum);
    do 
   {  
    fflush(stdin); 
    printf("\n Введите R1, R2 и R3 для последовательного соединения: ");
    scanf("%f",&R1); 
    scanf("%f",&R2); 
    scanf("%f",&R3);
    if((R1<0)||(R2<0)||(R3<0))
    printf("\n\a ОШИБКА: отрицательных значений быть не должно! \n");
    }while ((R1<0)||(R2<0)||(R3<0));
                    Rsum=R1+R2+R3;
                    printf("Сопротивление последовательного соединения равно: %.f", Rsum);
    getch();
}
Заранее спасибо!

Последний раз редактировалось AB96; 20.10.2015 в 21:22.
AB96 вне форума Ответить с цитированием
Старый 20.10.2015, 21:55   #2
Croessmah
Вредный кошак
Участник клуба
 
Аватар для Croessmah
 
Регистрация: 14.10.2012
Сообщений: 1,159
По умолчанию

Ну так проверяйте результат scanf, удалось ли считать что нужно или произошла ошибка.
Croessmah вне форума Ответить с цитированием
Старый 21.10.2015, 02:29   #3
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

читай строку и проверяй, что каждый ее символ валиден
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 22.10.2015, 19:48   #4
AB96
Пользователь
 
Регистрация: 20.10.2015
Сообщений: 22
По умолчанию

Если честно, то я не знаю, как это реализовать... Ещё не настолько знаю язык С... Весь запутался с этими строками. Может кто-нибудь помочь? Заранее спасибо!

Последний раз редактировалось AB96; 22.10.2015 в 20:42.
AB96 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вводится последовательность символов, конец ввода -ESC(код#27). Определить количество букв "b". помогите сделать через string. kolbaskin Паскаль, Turbo Pascal, PascalABC.NET 2 30.12.2013 09:12
Запрет ввода букв Евгений Уральский Microsoft Office Excel 19 19.09.2012 12:06
Необходимо реализовать защиту! VintProg Свободное общение 7 14.09.2011 16:22
Как сделать запрет ввода букв в поле для ввода input zvezda_t PHP 1 27.12.2009 22:02
функция ввода цифр и букв SFL Общие вопросы Delphi 6 12.03.2009 20:37