Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 22.09.2014
Сообщений: 39

Алгоритм вывода массивов кадастровых номеров

29.01.2018, 12:25. Показов 1131. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте) Столкнулся следующей задачей: дан строка , в которой находится кадастровый номер. Кадастровый номер состоит из чисел и имеет такой формат aa:bb:cccccc:dddddd.... либо aa:bb:ccccccc:dddddd... В третьем блоке может быть либо семь либо шесть цифр. И пользователь может вводить кадастровый в неправильном формате. Например , 55:55:123:432. Мы должный получить правильные варианты. Например дополнить третий блок нулями, чтобы получилось либо 6 либо 7 цифр. Вот два варианта. Могут все слитно писать и т.д. Как можно реализовать этот алгоритм, с чего начинать? Помогите пожалуйста
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.01.2018, 12:25
Ответы с готовыми решениями:

Запрос для вывода всех не забронированных гостиничных номеров
Есть гостиница. Есть таблицы Гостиничный номер и Проживание. В проживании храниться дата заселения и выселения. Нужно сделать запрос...

Нахождение наибольших элементов массивов и их порядковых номеров
Составить программу, которая вычисляет наибольшие элементы и их порядковые номера для массивов Х(N), Y(M). Нахождение наибольших элементов...

SQL-запрос для вывода всех табельных номеров сотрудников
Здравствуйте! Вот есть такая небольшая задача, связанная с SQL. В БД есть две таблицы: Table A и Table B. Напиcать SQL-запрос для...

8
 Аватар для Kill100
434 / 299 / 82
Регистрация: 11.12.2010
Сообщений: 1,209
29.01.2018, 12:50
Цитата Сообщение от rad1996 Посмотреть сообщение
И пользователь может вводить кадастровый в неправильном формате
Нельзя такое допускать. Для этого пишите валидатор и с помощью регулярки валидируете. И если не верно уведомляете пользователя.
А
Могут все слитно писать
это вообще ахтунг держите меня семеро. Вы как собираетесь понять что ввел пользователь?
5555123432 это 55:55:123:432 или 55:55:0....12343:00...02? Нельзя давать пользователю такую свободу.
1
 Аватар для netBool
325 / 304 / 173
Регистрация: 16.11.2010
Сообщений: 1,069
Записей в блоге: 9
29.01.2018, 12:52
rad1996, посмотри в сторону MaskedTextBox
1
0 / 0 / 0
Регистрация: 22.09.2014
Сообщений: 39
29.01.2018, 13:06  [ТС]
вот именно , что у пользователя свобода. Мне нужно получить массив вариантов.
0
62 / 63 / 28
Регистрация: 10.01.2018
Сообщений: 360
29.01.2018, 13:08
Цитата Сообщение от rad1996 Посмотреть сообщение
И пользователь может вводить кадастровый в неправильном формате
Как это он может вводить не правильном формате? если там должно быть 4 цифры пусть заполняет 4.
Цитата Сообщение от netBool Посмотреть сообщение
посмотри в сторону MaskedTextBox
либо 4 текстбокса, или куда там вводит пользователь, для каждой группы своё поле. И проверять если ввели в нем меньше цифр чем нужно, либо сразу 0 дорисовали либо выводим где-то иконку предупреждения рядом с полем, чтоб на него обратили внимание.
0
0 / 0 / 0
Регистрация: 22.09.2014
Сообщений: 39
29.01.2018, 13:12  [ТС]
Штука такая, что пользователь вводит все свои данные в одну строку, ну как при регистрации когда вводишь данные и выходит приблизительные варианты. У меня задание в этом состоит
0
62 / 63 / 28
Регистрация: 10.01.2018
Сообщений: 360
29.01.2018, 14:00
Думаю это то что нужно. Лично я не видел кадастровых номеров, которые не разбиты на группы ":" то есть в любом случае его будут вводить с бумажки. И логичней сделать такой же ввод, чтоб визуально было удобней ориентироваться какая группа заполнена.
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
 public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        struct tb1Count
        {
            public const int MaxCount = 4; //можно ввести 4 цифры
            public const int MinCount = 2; //если меньше сообщаем, если столько же или больше но не MaxCount - записываем 0 до maxCount 
        }
 
        private void tb1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!Char.IsDigit(e.KeyChar) && e.KeyChar != 8)
            {
                e.Handled = true;
            }
 
            if (tb1.Text.Length == tb1Count.MaxCount - 1)
            {
                tb2.Focus();
            }
        }
 
        private void tb1_Leave(object sender, EventArgs e)
        {
            if (tb1.Text.Length < tb1Count.MinCount)
            {
                //Не даем покинуть поле, можно сообщать или подсветить поле чтоб было заметно где фокус
                tb1.Focus();
            }
            if (tb1.Text.Length >= tb1Count.MinCount && tb1.Text.Length < tb1Count.MaxCount)
            {
                int countZero = (tb1Count.MaxCount) - tb1.Text.Length;             
                for (int i = 0; i < countZero; i++)
                {
                    tb1.Text += "0";
                }
            }
        }
    }
Вложения
Тип файла: 7z Validtion.7z (3.8 Кб, 1 просмотров)
0
62 / 63 / 28
Регистрация: 10.01.2018
Сообщений: 360
29.01.2018, 14:10
Что-то подобное реализовано при входе в приват24. Когда приходит код в смс и его нужно вводить на сайте. Только 0 не записываются.

Добавлено через 5 минут
Код только не копируйте слепо. там точно есть баги. и точно можно обойти его. Я пример показал.
0
0 / 0 / 0
Регистрация: 22.09.2014
Сообщений: 39
29.01.2018, 14:59  [ТС]
Спасибо большое всем)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.01.2018, 14:59
Помогаю со студенческими работами здесь

Алгоритм перевода диапазона в префиксы номеров АТС
Есть диапазон телефонных номеров, а в АТС используются префиксы телефонных номеров. Придумать &quot;с наскоку&quot; алгоритм перевода...

Составить алгоритм определения последовательности номеров удаляемых спортсменов
ребята! до завтра ришите задачу. пожалуйста. я ноль в программировании по кругу стоят N спортсменов с номерами от 1 до N. начиная с...

Составить алгоритм определения последовательности номеров удаляемых спортсменов.
По кругу стоят N спортсменов с номерами от 1 до N. Начиная с какого то человека по кругу удаляются каждый K-ый спортсмен. После каждого...

Алгоритм поиска номеров элементов массива, равных наибольшему элементу в массиве
Дан одномерный массив из 25 целых чисел. Опишите на одном из языков программирования алгоритм поиска номеров элементов массива, равных...

Составить алгоритм, при которых можно расселить клиентов в наименьшее количество номеров
В отеле есть N номеров. Администратор имеет информацию о количестве мест в каждом номере, перечень занятых номеров, количество мест в них,...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru