powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск или выборка по маске #00, ##0, 00#
10 сообщений из 10, страница 1 из 1
Поиск или выборка по маске #00, ##0, 00#
    #38181019
2king2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Задача:
• если 1, 2 разряды не нулевые, а последний 0, то родительским кодом следует считать тот, у которого 1 разряд совпадает с данным кодом, а 2, 3 разряды равны 0;
• если 1, 2, 3 разряды не нулевые, то родительским кодом следует считать тот, у которого 1, 2 разряд совпадает с данным кодом, а третий равен 0;
• если 1, 2 разряды нулевые, то Родительский код отсутствует, поле при этом не заполняется.

Код: c#
1.
2.
string[] input  = new string[] { "101", "223", "356", "009", "590", "656", "756" };
string[] parent = new string[] { "100", "220", "300", "460", "590", "600", "750" };


Есть мысли как это осуществить?
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181088
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2king2Задача:
• если 1, 2 разряды не нулевые, а последний 0, то родительским кодом следует считать тот, у которого 1 разряд совпадает с данным кодом, а 2, 3 разряды равны 0;
• если 1, 2, 3 разряды не нулевые, то родительским кодом следует считать тот, у которого 1, 2 разряд совпадает с данным кодом, а третий равен 0;
• если 1, 2 разряды нулевые, то Родительский код отсутствует, поле при этом не заполняется.

Код: c#
1.
2.
string[] input  = new string[] { "101", "223", "356", "009", "590", "656", "756" };
string[] parent = new string[] { "100", "220", "300", "460", "590", "600", "750" };



Есть мысли как это осуществить?

тупо в лоб проверять разряды
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181334
2king2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pationтупо в лоб проверять разряды
Разделить входное число превратить в массив интеджеров по разрядное, получается фигня какая то

Код: c#
1.
int[] ia = str.Distinct().ToString().Select(n => Convert.ToInt32(n)).ToArray();
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181380
mril
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а что должно происходить для 101? или если родительский массив не содержит нужного кода, например для 356 это должен быть 350, а его нет
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181416
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2king2pationтупо в лоб проверять разряды
Разделить входное число превратить в массив интеджеров по разрядное, получается фигня какая то

Код: c#
1.
int[] ia = str.Distinct().ToString().Select(n => Convert.ToInt32(n)).ToArray();



можно поинтерисоваться ? накуя дистинкт?
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181423
2king2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mrilа что должно происходить для 101? или если родительский массив не содержит нужного кода, например для 356 это должен быть 350, а его нет

Ноль по середине не может быть во входных данных, простите ошибся.
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181431
2king2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pationможно поинтерисоваться ? накуя дистинкт?
Чтобы получилось вот так
Мой код
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
                                string[] input  = new string[] { "120", "223", "356", "009", "590", "656", "756" };
				string[] parent = new string[] { "100", "220", "300", "460", "590", "600", "750" };

				foreach (var str in input)
				{
					int[] ia = str.Distinct().Select(n => Convert.ToInt32(n.ToString())).ToArray();
					if (ia[0] != 0 & ia[1] != 0 & ia[2] == 0)
					{
						var like = ia[0] + "00";
					}

					if (ia[0] != 0 & ia[1] != 0 & ia[2] != 0)
					{
						var like = ia[0] + ia[1] + "0";
					}

					if (ia[0] == 0 & ia[1] == 0)
					{
						//Нет род. кода. 
					}



...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181615
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2king2pationможно поинтерисоваться ? накуя дистинкт?
Чтобы получилось вот так
Мой код
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
                                string[] input  = new string[] { "120", "223", "356", "009", "590", "656", "756" };
				string[] parent = new string[] { "100", "220", "300", "460", "590", "600", "750" };

				foreach (var str in input)
				{
					int[] ia = str.Distinct().Select(n => Convert.ToInt32(n.ToString())).ToArray();
					if (ia[0] != 0 & ia[1] != 0 & ia[2] == 0)
					{
						var like = ia[0] + "00";
					}

					if (ia[0] != 0 & ia[1] != 0 & ia[2] != 0)
					{
						var like = ia[0] + ia[1] + "0";
					}

					if (ia[0] == 0 & ia[1] == 0)
					{
						//Нет род. кода. 
					}






а накуя дистинкт?
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38181761
2king2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pationа накуя дистинкт?
А ну да, вот исправил
Код: c#
1.
2.
foreach (var str in input) 
        char[] ca = string.Join(string.Empty, str).ToCharArray();
...
Рейтинг: 0 / 0
Поиск или выборка по маске #00, ##0, 00#
    #38182545
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2king2pationа накуя дистинкт?
А ну да, вот исправил
Код: c#
1.
2.
foreach (var str in input) 
        char[] ca = string.Join(string.Empty, str).ToCharArray();


=)) я фигею, накуя джойн?
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поиск или выборка по маске #00, ##0, 00#
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]