Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 25.11.2021
Сообщений: 12

Вывести все значения по заданным условия

25.02.2022, 19:11. Показов 1552. Ответов 26
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! В общем, задача программы выдать все строки, которые начинаются с заданного префикса. Я не особо представляю вариант при котором она не отработает не верно, но автотест не проходит, условие теста мне не известно.
Может у кого фантазия побогаче или ошибка будет очевидной, help me pls!
Доп. условие длина префикса не должна быть больше сотни, пустой или состоять из пробелов.

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
84
85
86
87
88
89
90
91
92
93
94
using System;
using System.Collections.Generic;
using System.Linq;
 
namespace EventTest
{
    public static class Program 
    { 
        public static void Main(string[] args)
        {
            List<FullName> fullNames = new List<FullName>();
 
            fullNames.Add(new FullName("Андрей", " Винников"));
            fullNames.Add(new FullName("    Марат    ", "    Керимов    "));
            fullNames.Add(new FullName("   Алена   ", "   Карпова  ", "   Максимовна  "));
            fullNames.Add(new FullName("", "Аксенова", "Алексеевна"));
            fullNames.Add(new FullName("Артур", "       ", "       "));
            fullNames.Add(new FullName("    Антон      ", "    Бородин     ", "Анатольевич"));
            fullNames.Add(new FullName("Арсений", "Петров", ""));
            fullNames.Add(new FullName("Кирилл", "Алилов", "Алексеевич"));
            fullNames.Add(new FullName("Антон", "Марков"));
            fullNames.Add(new FullName("Семен", "Пушной"));
 
            AddElement.AddToSearch(fullNames);
        }
    }
 
    public struct FullName
    {
        public string Name;
        public string Surname;
        public string Patronymic;
 
        public FullName(string name, string surname, string patronymic)
        {
            Name = name;
            Surname = surname;
            Patronymic = patronymic;
        }
 
        public FullName(string name, string surname) : this(name, surname, String.Empty)
        {
        }
 
        public FullName(string name) : this(name, String.Empty, String.Empty)
        {
        }
        public override string ToString()
        {
            return $"{Surname} {Name} {Patronymic}";
        }
    }
 
    public static class AddElement
    {
        public static List<string> list = new List<string>();
        public static void AddToSearch(List<FullName> fullNames)
        {
            for (int i = 0; i < fullNames.Count; i++)
            {
                string[] words = fullNames[i].ToString().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
                list.Add(string.Join(" ", words));
 
            }
 
            foreach (var item in list)
            {
                Console.WriteLine(item);
            }
            Console.WriteLine("\n");
 
            foreach (var item in Search("А"))
            {
                Console.WriteLine(item);
            }
        }
 
        public static List<string> Search(string prefix)
        {
            try
            {
                if (prefix.Length > 100 || string.IsNullOrWhiteSpace(prefix))
                    throw new Exception();
                return list.Where(p => p.ToLower().StartsWith(prefix.ToLower())).ToList();
            }
            catch
            {
                return new List<string>();
            }
            
 
        }
    }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.02.2022, 19:11
Ответы с готовыми решениями:

Подсчитать и вывести значения t1 и t2 по заданным формулам
Составьте программу, которая подсчитывает и выводит значение t1 и t2 по формулам, которые приведены в Вашем варианте индивидуального...

Вывести значения функции с заданным шагом
народ помогите!!!ЗАДАЧА ТАКАЯ! пользователь вводит выражение в виде строки (y=x*x),интервал изменения , шаг h.программа должна вывести все...

По заданным n и k вывести все размещения из n по k
Размещение из n по k -это набор из k различных чисел,вводимых с клавиатуры. Например, существуют 6 размещений из из множества вводимых...

26
1 / 1 / 0
Регистрация: 25.11.2021
Сообщений: 12
26.02.2022, 15:07  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от wizard41 Посмотреть сообщение
Содержание теста можете показать?
Если бы у меня было содержание теста я бы уже понял в чем проблема, но тут все в слепую, и я так и не понял чем так плохо сплитовать строку и когда гарантировано получаю слова без пробелов объединить их?
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3463 / 2784 / 575
Регистрация: 04.09.2018
Сообщений: 8,757
Записей в блоге: 3
26.02.2022, 15:10
PresentUser, любому тесту абсолютно побоку как вы формируете объекты и как заносите данные в свойства.
Тест лишь проверяет объект на предмет чего-то там, в данном случае, видимо, на наличие в списке строк, начинающихся с некоего префикса. Т.е. ваш класс должен эти данные предоставить в вызываемом тестом методе.
Тест не должен сам приводить форматирование проверяемых данных к какому-то формату.

Добавлено через 1 минуту
Цитата Сообщение от PresentUser Посмотреть сообщение
Если бы у меня было содержание теста
У вас должен быть некий "контракт", т.е. вы должны знать что именно проверяет тест и как ему эти сведения отдать. Иначе получается дай то - не знаю что.
0
1 / 1 / 0
Регистрация: 25.11.2021
Сообщений: 12
26.02.2022, 15:11  [ТС]
Цитата Сообщение от wizard41 Посмотреть сообщение
Тест не должен сам приводить форматирование проверяемых данных к какому-то формату.
Вход для функции AddToSearch

Хордин Анатолий Михайлович
____Ходайкин_____Миша________Петрович
Арбузова Анна Павловна

Вход для функции Search

Хо

Выход
Хордин Анатолий Михайлович
Ходайкин Миша Петрович
0
 Аватар для Kazbek17
1485 / 939 / 455
Регистрация: 06.02.2012
Сообщений: 2,870
26.02.2022, 15:13
PresentUser, Вот наглядный пример.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public struct FullName
{
    public string Name;
    public string Surname;
    public string Patronymic;
 
    public FullName(string name = "", string surname = "", string patronymic= "")
    {
        Name = name.Trim();
        Surname = surname.Trim();
        Patronymic = patronymic.Trim();
    }
    
    public override string ToString()
    {
        string strResult = $"{Surname} {Name} {Patronymic}";
        if (Surname == "" | Name == "" | Patronymic == "")
            return string.Empty;
        else
            return strResult.Length > 100 ? throw new Exception() : strResult;
    }
}
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
        List<FullName> fullNames = new List<FullName>();
    fullNames.Add(new FullName("", "          ", ""));
        fullNames.Add(new FullName("", " Винников"));
    fullNames.Add(new FullName("Андрей", " Винников"));
    fullNames.Add(new FullName("    Марат    ", "    Керимов    "));
    fullNames.Add(new FullName("   Алена   ", "   Карпова  ", "   Максимовна  "));
    fullNames.Add(new FullName("", "Аксенова", "Алексеевна"));
    fullNames.Add(new FullName("Артур", "       ", "       "));
    fullNames.Add(new FullName("    Антон      ", "    Бородин     ", "Анатольевич"));
    fullNames.Add(new FullName("Арсений", "Петров", ""));
    fullNames.Add(new FullName("Кирилл", "Алилов", "Алексеевич"));
    fullNames.Add(new FullName("Антон", "Марков"));
    fullNames.Add(new FullName("Семен", "Пушной"));
 
    foreach(var item in fullNames)
    if(item.ToString() != "")
        Console.WriteLine(item.ToString());
Результат
Карпова Алена Максимовна
Бородин Антон Анатольевич
Алилов Кирилл Алексеевич
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3463 / 2784 / 575
Регистрация: 04.09.2018
Сообщений: 8,757
Записей в блоге: 3
26.02.2022, 15:39
Цитата Сообщение от PresentUser Посмотреть сообщение
Вход для функции
вот, уже яснее. Смотрю не только пробелы могут быть, но и ______

Добавлено через 13 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
            List<FullName> fullNames = new List<FullName>()
            {
                new FullName("Андрей", " Винников"),
                new FullName("    Марат    ", "    Керимов    "),
                new FullName("   Алена   ", "   Карпова  ", "   Максимовна  "),
                new FullName("", "Аксенова", "Алексеевна"),
                new FullName("    Антон      ", "    Бородин     ", "Анатольевич"),
                new FullName("Арсений", "Петров", ""),
                new FullName("Анатолий", "Хордин", "Михайлович"),
                new FullName("Кирилл", "Алилов", "Алексеевич"),
                new FullName("Антон", "Марков"),
                new FullName("Миша", "Ходайкин", "Петрович"),
                new FullName("Семен", "Пушной"),
            };
 
            string prefix = "Хо";
            List<FullName> query = fullNames.Where( s => s.Surname
                                            .ToLower()
                                            .StartsWith( prefix.ToLower() ) )
                                            .ToList();
            Console.WriteLine( string.Join( "\n", query ) );
Code
1
2
Хордин Анатолий Михайлович
Ходайкин Миша Петрович
Записывать свойства без пробелов и добывать нужные сведения научились. Что дальше?

Добавлено через 11 минут
И всякие "______" и прочие символы-НЕбуквы надо отпиливать Regex'ом на этапе занесения данных в свойства.
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
27.02.2022, 10:18
wizard41, почему бы не поменять местами внутри объекта фамилию и имя, например, или вообще не менять на выходе? Мы же не знаем, какие куда данные тест вносит. Ну и у меня изначально были вопросы к коду в плане точки входа, которая не содержала никакого префикса, а только список объектов, а сам префикс где-то статически задан.
0
Эксперт JavaЭксперт по электроникеЭксперт .NET
 Аватар для wizard41
3463 / 2784 / 575
Регистрация: 04.09.2018
Сообщений: 8,757
Записей в блоге: 3
27.02.2022, 10:58
AndreyVorobey, не знаю, по всякому можно тут. ТС не раскрывает стратегию теста и не понятно что именно там проверяется.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.02.2022, 10:58

Вычислить все значения выражения на заданном интервале с заданным шагом
Очень прошу помогите пожалуйста Записать алгоритм решения задачи на языке Паскаль. Вычислить все значения у. Число х задается...

Вывести все строчки с заданным словом
Приветствую! Пока что слабо понимаю тему &quot;строчки&quot;. А если быть точным, понимаю, но с алгоритмизацией плохо. Прошу помощи в написании...

Вывести в виде таблицы значения функции на заданном интервале c заданным шагом
Ребят,здравствуйте! Нужна помощь в данном задании: Вычислить и вывести на экран в виде таблицы все значения функции y на заданном...

Вывести в виде таблицы значения функции на заданном интервале с заданным шагом
Вычислить и вывести на экран в виде таблицы значения функции F на интеграле от Xнач. до Xкон. с шагом dx/ x^2 + 6 , x&lt;0 ...

Найти по двум заданным параметрам значения в таблице Excel и вывести в StringGrid
Нужна помощь. Требуется найти по двум заданным параметрам значения в таблице Exel и вывести в StringGrid, при нажатии кнопки поиск


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

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru