Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/26: Рейтинг темы: голосов - 26, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 16.08.2013
Сообщений: 106
1

Проверки. Введено число или нет

15.10.2013, 23:27. Показов 4662. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите проверить введено ли число.
На пример. Я ввожу в textbox любой текст = gusg3ghsgy32ysg1ug3hag2211
И мне в другом текстбокс пишет
Ваши цифры: 3 , 32, 3,211
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2013, 23:27
Ответы с готовыми решениями:

Как проверить, что было введено - число или текст
Здравствуйте. Помогите пожалуйста, не знаю какое условие поставить, если можно вводить все числа. ...

Стандартные функции Си для проверки какое число введено (целое или десятичное)
Помогите пожалуйста. Какие в Си есть стандартные функции, чтобы проверить какое введено число (...

Проверить,число введено или нет.
Ребята а как проверить ввел я число в массиве или символ???

Проверить, введено число/число с точкой или 'мусор'
привет всем, делаю сайт, с JS знаком помимо, напишите как проверить с помощью регулярных выражений,...

6
Футболист
532 / 434 / 142
Регистрация: 31.10.2011
Сообщений: 1,010
15.10.2013, 23:36 2
консольный вариант
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication14
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Введите значения через пробел: \n");
 
            double[] array = GetDoubleValues(Console.ReadLine().Replace('.',','));
 
            Console.WriteLine("\nРезультат: ");
            foreach (var item in array)
            {
                Console.WriteLine(item);
            }
            Console.ReadLine();
        }
 
        static double[] GetDoubleValues(string _str)
        {
            List<double> valuesList = new List<double>();
            bool digitFound = false;
            int startIndex = 0;
            bool comFind = false;
 
            for (int i = 0; i < _str.Length; i++)
            {
                if (!digitFound)
                {
                    if (char.IsDigit(_str[i]))
                    {
                        startIndex = i;
                        digitFound = true;
                    }
                }
                else
                {
                    if (!((int)_str[i] == 44))
                    {
                        if (char.IsDigit(_str[i]) && i == _str.Length - 1)
                        {
                            valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex + 1)));
                            digitFound = false;
                        }
                        if (!char.IsDigit(_str[i]))
                        {
                            valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex)));
                            digitFound = false;
                        }
                    }
                    else//если в конце стоит запятая
                    {
                        if (i == _str.Length - 1)
                        {
                            valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex)));
                        }
                        else
                        {
                            if (comFind)
                            {
                                valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex-1)));
                            }
                        }
                    }
                }
            }
 
 
            return valuesList.ToArray();
        }
    }
}
Миниатюры
Проверки. Введено число или нет  
1
0 / 0 / 0
Регистрация: 16.08.2013
Сообщений: 106
15.10.2013, 23:40  [ТС] 3
Это круто, а как через форму сделать
0
Футболист
532 / 434 / 142
Регистрация: 31.10.2011
Сообщений: 1,010
15.10.2013, 23:45 4
секунду, сейчас напишу
0
Футболист
532 / 434 / 142
Регистрация: 31.10.2011
Сообщений: 1,010
15.10.2013, 23:53 5
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace WindowsFormsApplication4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            double[] arr = GetDoubleValues(textBox1.Text);
            richTextBox1.Clear();
            foreach (var item in arr)
            {
                richTextBox1.Text += item.ToString()+"\n";
            }
        }
 
        private double[] GetDoubleValues(string _str)
        {
            List<double> valuesList = new List<double>();
            bool digitFound = false;
            int startIndex = 0;
            bool comFind = false;
 
            for (int i = 0; i < _str.Length; i++)
            {
                if (!digitFound)
                {
                    if (char.IsDigit(_str[i]))
                    {
                        startIndex = i;
                        digitFound = true;
                    }
                }
                else
                {
                    if (!((int)_str[i] == 44))
                    {
                        if (char.IsDigit(_str[i]) && i == _str.Length - 1)
                        {
                            valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex + 1)));
                            digitFound = false;
                        }
                        if (!char.IsDigit(_str[i]))
                        {
                            valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex)));
                            digitFound = false;
                        }
                    }
                    else//если в конце стоит запятая
                    {
                        if (i == _str.Length - 1)
                        {
                            valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex)));
                        }
                        else
                        {
                            if (comFind)
                            {
                                valuesList.Add(double.Parse(_str.Substring(startIndex, i - startIndex - 1)));
                            }
                        }
                    }
                }
            }
 
 
            return valuesList.ToArray();
        }
    }
}
Миниатюры
Проверки. Введено число или нет  
Вложения
Тип файла: zip WindowsFormsApplication4.zip (54.0 Кб, 4 просмотров)
1
0 / 0 / 0
Регистрация: 16.08.2013
Сообщений: 106
16.10.2013, 00:37  [ТС] 6
жесть.. спасибо

Добавлено через 29 минут
Помоги еще плиз.. Как посчитать такое 28/95*95-85 когда это введено в текстовое поле
0
6280 / 3565 / 898
Регистрация: 28.10.2010
Сообщений: 5,926
16.10.2013, 08:36 7
C#
1
double d = (double)(new System.Data.DataTable().Compute("28/95*95-85", null));
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using System;
 
namespace Ghost
{
    class ReportPrinter : Mono.CSharp.ReportPrinter
    {
    }
 
    class Program
    {
        static void Main(string[] args)
        {
            Mono.CSharp.Evaluator ev = new Mono.CSharp.Evaluator(
                new Mono.CSharp.CompilerContext(
                    new Mono.CSharp.CompilerSettings(),
                    new ReportPrinter()));
            
            double d2 = Convert.ToDouble(ev.Evaluate("28.0/95.0*95.0-85.0"));
            Console.WriteLine(d2);
            Console.ReadLine();
        }
    }
}
2
16.10.2013, 08:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2013, 08:36
Помогаю со студенческими работами здесь

Программа запрашивает число 1 или 2. Если введено 1, то
Программа запрашивает число 1 или 2. Если введено 1, то программа запрашивает угол в градусах и...

Определить, какое число введено - положительное или отрицательное
1)Пользователь вводит действительное число. Требуется определить: 1. положительное это число или...

Определить, какое число введено пользователем: положительное, отрицательное или равное 0
Помогите пожалуйста написать программу (на языке Си), которое определяет какое введенное число...

Если введено равное 0 или кратное 2 число, ввод и печать прекратить
Ввести с клавиатуры и напечатать N чисел, если введено равное 0 или кратное 2 число, ввод и печать...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru