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

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

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

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

08.05.2012, 20:48. Просмотров 393. Ответов 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);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.05.2012, 20:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проверка на цифры (C++):

Проверка в числе на повторяющиеся цифры - C++
Дано пятизначное число. Узнать, есть ли в записи числа одинаковые цифры. Пример входных данных 12345 11345 12145 Пример выходных...

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

Даны цифры двух двузначных чисел. Получить цифры суммы - C++
Даны цифры двух двузначных чисел, записываемых в виде а2а1 и b2 b1, где а1 и b1— число единиц, а2 и b2 — число десятков Получить цифры...

Замена последней цифры на значение наименьшей цифры в записи числа N - C++
Ошибка в задании Условие:Дано натуральное число N. Получить новое число М, которое образуется из числа N путем замены последней цифры на...

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

Циклы: найти произведение последней цифры и минимальной цифры числа с произведением всех остальных - C++
Помогите, я даже не знаю о чем речь(((( Дано натуральное число n. Найти произведение последней цифры и минимальной цифры этого числа...

6
Avazart
Нарушитель
Эксперт С++
7232 / 5404 / 293
Регистрация: 10.12.2010
Сообщений: 23,948
Записей в блоге: 17
09.05.2012, 00:39 #2
isdigit()
http://www.cplusplus.com/reference/clibrary/cctype/isdigit/
0
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");// если попытка провалилась - выводим сообщение 
}
1
Avazart
Нарушитель
Эксперт С++
7232 / 5404 / 293
Регистрация: 10.12.2010
Сообщений: 23,948
Записей в блоге: 17
09.05.2012, 00:54 #4
Если Builder
C++
1
2
TryStrToFloat()
TryStrToInt()
0
yur4ik9408
6 / 6 / 1
Регистрация: 07.05.2012
Сообщений: 26
09.05.2012, 01:00 #5
и ещё:
если будешь компилировать и запускать из под билдера - работать не будет.
билдер сам перехватывает эту ошибку.
только если чистый экзэшник запускать - работать будет нормально
0
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");// если попытка провалилась - выводим сообщение 
}
0
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
1
09.05.2012, 10:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.05.2012, 10:27
Привет! Вот еще темы с ответами:

Получить число М, которое образуется из числа N путем замены последней цифры на значение наибольшей цифры - C++
Помогите составить программу, пожалуйста! Вот условие: Дано натуральное число N. Получить новое число М, которое образуется из числа...

Массив строк в с++. Вывести строки, в которых есть цифры. В каждой строке удалить все цифры - C++
Помогите пожалуйста с задачей ! срочно!! Необходимо написать программу, в которой с клавиатуры вводится до 10 символьных строк. Вывести...

Вывести сумму первой и третьей цифры и произведение второй и четвертой цифры числа, заданного пользователем - C++
Пользователь вводит 4-значное число - программа выводит сумму первой и третьей цифры и произведение второй и четвертой цифры.

В десятичной записи числа 42*4* пропущены 2 цифры. Определите эти цифры, если известно, что число кратно 72. - C++
Помогите,пожалуйста! С++


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

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

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