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

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

Войти
Регистрация
Восстановить пароль
 
Mutlu
11 / 11 / 1
Регистрация: 26.09.2011
Сообщений: 185
#1

Проверка на цифры - C++

08.05.2012, 20:48. Просмотров 384. Ответов 6
Метки нет (Все метки)

Всем привет,

вот столкнулся с проблемой, мне нужно нарисовать график, данные берутся из текст боксов.
Хотел сделать проверку на цифры, если данные из текст бокса равны цифре, то рисовать, если нет, то выдать ошибку, вот не получается у меня код, не поможете пожалуйста?
Большое спасибо за помошь!

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
                 float min = float::Parse(Textbox_min->Text);
                 float max = float::Parse(Textbox_max->Text);
                 float step = float::Parse(Textbox_Step->Text); 
                  if (min>max || step<0)
                 {
                 MessageBox::Show("Wrong numbers");
                 }
                 else 
                 {
                 float x0 = PictureBox->Width/2;
                 float y0 = PictureBox->Height/2;
                 float step1=(max-min)/(2*x0);
                 for (float x=min; x<=max; x=x+step1)
                 {
                    
                    if(abs(x+step1+2)>0.01 && abs(x+step1)>0.01)
                    {
                    float y1 = sin(x)*x;
                    float y2 = sin(x+step1)*(x+step1);
                    gr->DrawLine(Graph,(x/step1+x0), -y1+y0,((x+step1)/step1)+x0,-y2+y0);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2012, 20:48     Проверка на цифры
Посмотрите здесь:

Проверка в числе на три повторяющиеся цифры - C++
Дано четырехзначное целое число. Определить содержит, ли число ровно три одинаковые цифры. Пример входных данных 1234 1114 1211 ...

Дано 4 цифры, напечатать цифры в порядке возрастания - C++
в программе ввел 4 числа,она должна распологать цифры в порядке возрастания,без всяких массивов и циклов void lowtohigh(int a, int...

Ввести с клавиатуры трехзначное число и найти произведение первой и второй цифры. А также определить четность третей цифры - C++
Ввести с клавиатуры трехзначное число и найти произведение первой и второй цифры. А также определить четность третей цефры. как мне это...

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

Проверка на цифры - JavaScript
Нужна помощь. Требуется проверить поле на ввод только цифр. То есть только цифры, количество не играет роли. Хотелось бы получить и...

Проверка на цифры - JavaScript
ребята, задачу сделал на подсчёт двух чисел, но вот теперь надо сделать проверку на число, это тоже сделал, но вот загвоздка, как вернуться...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
Эксперт С++
7122 / 5299 / 273
Регистрация: 10.12.2010
Сообщений: 23,452
Записей в блоге: 17
09.05.2012, 00:39     Проверка на цифры #2
isdigit()
http://www.cplusplus.com/reference/c...ctype/isdigit/
yur4ik9408
6 / 6 / 1
Регистрация: 07.05.2012
Сообщений: 26
09.05.2012, 00:48     Проверка на цифры #3
попробуй использовать try/catch:

C++
1
2
3
4
5
6
try
{x=StrToFloat(...); //пробует переделать из стринг в флот величину 
}
catch(EConvertError &)
{ShowMessage("It's not a digit");// если попытка провалилась - выводим сообщение 
}
Avazart
Эксперт С++
7122 / 5299 / 273
Регистрация: 10.12.2010
Сообщений: 23,452
Записей в блоге: 17
09.05.2012, 00:54     Проверка на цифры #4
Если Builder
C++
1
2
TryStrToFloat()
TryStrToInt()
yur4ik9408
6 / 6 / 1
Регистрация: 07.05.2012
Сообщений: 26
09.05.2012, 01:00     Проверка на цифры #5
и ещё:
если будешь компилировать и запускать из под билдера - работать не будет.
билдер сам перехватывает эту ошибку.
только если чистый экзэшник запускать - работать будет нормально
Mutlu
11 / 11 / 1
Регистрация: 26.09.2011
Сообщений: 185
09.05.2012, 09:49  [ТС]     Проверка на цифры #6
Цитата Сообщение от yur4ik9408 Посмотреть сообщение
попробуй использовать try/catch:

C++
1
2
3
4
5
6
try
{x=StrToFloat(...); //пробует переделать из стринг в флот величину 
}
catch(EConvertError &)
{ShowMessage("It's not a digit");// если попытка провалилась - выводим сообщение 
}
Спасибо за код, но что-то не получатся у меня его подставить, у меня это Windows Form Visual Studio
Как мне в мой код вставить, постоянно вылетают ошибки?
C++
1
2
3
4
5
6
try
{x=StrToFloat(...); //пробует переделать из стринг в флот величину 
}
catch(EConvertError &)
{ShowMessage("It's not a digit");// если попытка провалилась - выводим сообщение 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.05.2012, 10:27     Проверка на цифры
Еще ссылки по теме:

Проверка на цифры поля - PHP
Что добавить чтобы в условие кроме цифр проходил и + if (!preg_match(&quot;/^()+$/&quot;, $email))

Проверка на цифры в char - C (СИ)
Нужно написать программу , которая будет считывать введённое пятизначное число. После чего, каждую цифру этого числа необходимо вывести в...

Проверка наличия цифры в числе - Assembler
Всем доброго времени суток. TASM Как проверить, содержит ли число данную десятичную цифру? Как вообще можно число разбить на...

Проверка строки что в ней были только цифры, запятая или точка - PHP
Есть строки $s_1 = 11; //1 стр $s_2 = 11.22; //2 стр $s_3 = '11,12'; //3 стр


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

Или воспользуйтесь поиском по форуму:
yur4ik9408
6 / 6 / 1
Регистрация: 07.05.2012
Сообщений: 26
09.05.2012, 10:27     Проверка на цифры #7
Цитата Сообщение от Mutlu Посмотреть сообщение
Спасибо за код, но что-то не получатся у меня его подставить, у меня это Windows Form Visual Studio
Как мне в мой код вставить, постоянно вылетают ошибки?
C++
1
2
3
4
5
6
try
{x=StrToFloat(...); //пробует переделать из стринг в флот величину 
}
catch(EConvertError &)
{ShowMessage("It's not a digit");// если попытка провалилась - выводим сообщение 
}
я в вижуал студио не работал,но попробуй так:

заводишь переменные х,y,z типа флоат.
потом
C++
1
2
3
4
5
6
7
8
9
10
try
{
x = float::Parse(Textbox_min->Text);
y = float::Parse(Textbox_max->Text);
z = float::Parse(Textbox_Step->Text);
} 
catch(EConvertError &)
{
MessageBox::Show("Wrong numbers");
}

http://support.microsoft.com/kb/815662
Yandex
Объявления
09.05.2012, 10:27     Проверка на цифры
Ответ Создать тему
Опции темы

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