Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 3
Регистрация: 31.01.2016
Сообщений: 77
.NET 4.x

Textbox. Поиск, выделение и подсчёт одинаковых чисел

31.01.2016, 16:45. Показов 2096. Ответов 7

Студворк — интернет-сервис помощи студентам
Я только начал заниматься C# и есть такой вопрос. Допустим, есть несколько textbox-ов на форме. 1). Как сделать, чтобы можно было вводить только цифры(через пробел и с возможностью удалять их через Backspace)? 2). Далее нужно по нажатию кнопки на форме сравнить textbox-ы и определить минимальное количество одинаковых чисел(не цифр). Затем выделить два таких бокса с самым меньшим совпадением между собой(можно цветом, либо checkBox-ом). Затем их нужно сравнить с остальными боксами. Как это сделать? Приведу пример для понятности. Есть 4 textbox-а с такими числами - 1 2 7 - 1 5 8 - 1 5 6 - 1 7 8(кстати, боксов может быть и 50, а чисел в них ещё больше). Здесь видно, что наименьшее совпадение есть у двух последних боксов - 1 5 6 и 1 7 8, одинаковое число только 1. Если сравнить их с остальными, то по наименьшему совпадению будет подходить первый 1 2 7. Пожалуйста, помогите с написанием кода, очень нужно. И просьба не давать ссылки, а лучше подсказать на примерах. Заранее благодарен.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.01.2016, 16:45
Ответы с готовыми решениями:

Подсчёт одинаковых чисел
Я недавно только начал изучать C#. Как подсчитать количество одинаковых чисел, введённых пользователем, в нескольких текст боксах и вывести...

Подсчёт одинаковых чисел в текстбоксах
Я пишу код для подсчёта одинаковых чисел. На форме есть несколько чекбоксов и текстбоксов, между собой они связаны, т.е. если checkbox1...

Ввод массивов через множество textBox, подсчёт суммы, и вывод через listBox. Ошибка при вводе через textBox
Создал я кучу текст боксов, там происходит ввод каждого элемента массива. И вывод через листбокс По идее должен...

7
0 / 0 / 3
Регистрация: 31.01.2016
Сообщений: 77
04.02.2016, 17:41  [ТС]
Что, никто не может помочь? Или слишком сложно?
0
13 / 13 / 7
Регистрация: 24.04.2015
Сообщений: 51
05.02.2016, 10:26
Так на примерах подсказать или код написать?
1 - Ввод только цифр - смотри на событие TextBoxa KeyPress, на данном форуме есть пример, в проверку клавиши нужно добавить пробел и будет то что нужно.
2 - Для того что бы сравнить числа нужно введенную строку разбить на числа TextBox.Text.Split(' '); эта функция вернет тебе строковый массив чисел, преобразуешь его в Int и получаешь то что нужно.
3 - Сравнение. Не понял что тебе конкретно нужно, в твоем примере у 1 и 3, так же как и у 3 и 4 по 1 совпадению, зачем вторая проверка нужна не понятно. Могу точно сказать что для хранения результатов совпадений нужен двумерный массив размером количество боксов на кол-во боксов где в координатах будет находиться результат (кол-во совпавших чисел) по поводу алгоритма поиска с ходу не напишу, если актуально можно посмотреть, только нужно конкретнее описать задачу
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
05.02.2016, 11:03
Цитата Сообщение от Sniper Посмотреть сообщение
Что, никто не может помочь? Или слишком сложно?
Вы сами в каком месте застряли? Что конкретно не получается?
0
0 / 0 / 3
Регистрация: 31.01.2016
Сообщений: 77
06.02.2016, 11:51  [ТС]
Спасибо за объяснение. Я конечно рассчитывал на лучший ответ(на примере). Я постарался объяснить, но видно это сложная задачка. ) В итоге, пока нет лучшего ответа. Надеюсь, кто-нибудь мне поможет.
0
 Аватар для Евгений В
912 / 672 / 134
Регистрация: 01.03.2010
Сообщений: 1,279
06.02.2016, 12:29
Соглашусь с предыдущим вопросом
Цитата Сообщение от Sanya_sa Посмотреть сообщение
Вы сами в каком месте застряли? Что конкретно не получается?

С вводом чисел помогу
C#
1
2
3
4
5
        private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        { 
            if (!Char.IsDigit(e.KeyChar) && e.KeyChar!=' ' && e.KeyChar!= (char)Keys.Back ) 
                e.Handled = true;
        }
0
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
06.02.2016, 13:03
Цитата Сообщение от Sniper Посмотреть сообщение
Спасибо за объяснение. Я конечно рассчитывал на лучший ответ(на примере). Я постарался объяснить, но видно это сложная задачка. ) В итоге, пока нет лучшего ответа. Надеюсь, кто-нибудь мне поможет.
Вы хотите что бы сделали за вас а не помогли. Хотя бы код покажите, а то даете задание мол - сделайте я ничего не понимаю и не хочу понимать.
Задание Ваше типичное, если даже воспользоваться поиском уже бы давно сами сделали по примерам из сети. Тем более Yurui, сказал в каком направлении двигаться. Вам просто нафиг ненужно ничего - Вы просто сидите и ждете пока сделают за Вас.
0
0 / 0 / 3
Регистрация: 31.01.2016
Сообщений: 77
07.02.2016, 15:17  [ТС]
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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        int[] Mas;
        int i;
        
                 public Form1()
        {
                      InitializeComponent();
                      textbox1.Text = "";
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            Mas = new int[10];
            Random n = new Random();
            for (i=0; i<10; i++)
            Mas[i] = (n.Next(20)-10);
            foreach (int elem in Mas)
                textbox1.Text = textbox1.Text + "   "+ elem + "";
 
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            int []new 
            {
 
 
        }
    }
}
Добавлено через 3 минуты
Либо такой вариант, но я не знаю как это правильно реализовать с textbox-ами.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public void coincidence()
        {
            int N;
            N = razmer();
            int[] x = new int[N];
            int[] coincidence = new int[N];
            int k = 0;
            vvod(N, x);
            for (int i = 0; i < N; i++) {
                for (int j = i + 1; j < N; j++) {
                    if (x[i] == x[j]) {
                        coincidence[k] = x[j];
                        k++;
                    }
                }
            }
            vuvod(N, coincidence);
            Console.WriteLine("Всего совпадений " + k);
        }
Выводи с сами элементы и количество вооб
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.02.2016, 15:17
Помогаю со студенческими работами здесь

Подсчёт выделенных символов в textBox
Вот ссылка на простейший текстовый редактор, написанный мною при просмотре одного видеоурока. Помогите понять как реализовать подсчёт...

подсчёт количества членов в наиболее длинной подпоследовательности из одинаковых чисел
Для последовательности чисел подсчитать количество членов в наиболее длинной подпоследовательности из одинаковых чисел. Окончание ввода –...

Макрос поиска одинаковых чисел в столбцах и выделение их цветом
Ув. форумчане, помогите пожалуйста с написанием макроса для Екселя... Есть 2 столбца 13-ти значных номеров штрих кодов, нужен макрос...

Поиск одинаковых чисел в файле
Создать файл. Ввести в него числа. Подсчитать количество чисел 5.

Поиск 2-х и более одинаковых чисел в массиве
Программа должна находить в массиве значения, встречающиеся 2 и более раз. Проблема в том, что если одинаковых чисел 4 и больше, то в...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru