Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2013, 11:46   #1
Eifik
 
Регистрация: 24.10.2012
Сообщений: 5
По умолчанию Создать поиск по фамилии в C#

Помогите пожалуйста разобраться что не верно я сделала в программе у меня не выполняется поиск по фамилии.
Создать класс постоялец (поля фамилия, откуда прибыл, количество прожитых дней, стоимость за день) и классы обычный постоялец (оплата питания, стоимость за проживание) и постоялец "все включено" (дополнительные услуги, стоимость за проживание). Создать виртуальные методы, вывод информации и поиск по фамилии.
Код:
namespace GuestLab
{
    class Program
    {
        static void Main(string[] args)
        {
 
            // список обычных постояльцев 
            List<NeutralGuest> lNeutralGuest = new List<NeutralGuest>();
 
            NeutralGuest lNeutralGuest1 = new NeutralGuest("Пятов"  , "Моква", 10, 15, 189, 179);
            NeutralGuest lNeutralGuest2 = new NeutralGuest("Воронин", "Моква", 7, 15, 789, 5863);
            NeutralGuest lNeutralGuest3 = new NeutralGuest("Шунин"  , "Моква", 5, 10, 181, 234);
            NeutralGuest lNeutralGuest4 = new NeutralGuest("Панюков", "Моква", 3, 19, 195, 123);
            NeutralGuest lNeutralGuest5 = new NeutralGuest("Смолов ", "Моква", 17, 20, 1189, 134);
 
 
            lNeutralGuest.Add(lNeutralGuest1);
            lNeutralGuest.Add(lNeutralGuest2);
            lNeutralGuest.Add(lNeutralGuest3);
            lNeutralGuest.Add(lNeutralGuest4);
            lNeutralGuest.Add(lNeutralGuest5);
 
            Console.WriteLine("Спискок обычных жильцов");
            foreach (var item in lNeutralGuest)
            {
                item.Show();
            }
 
 
            List<GuestAllInclusive> lGuest = new List<GuestAllInclusive>();
 
            // список доп услуг 
            List<AdditionalServices> lcurrService = new List<AdditionalServices>();
 
            lcurrService.Add(AdditionalServices.Beach);
            lcurrService.Add(AdditionalServices.Bicycling);
            lcurrService.Add(AdditionalServices.Fishing);
            lcurrService.Add(AdditionalServices.Gallery);
            lcurrService.Add(AdditionalServices.Golf);
            lcurrService.Add(AdditionalServices.Gym);
            lcurrService.Add(AdditionalServices.Rowingboats);
            lcurrService.Add(AdditionalServices.ScenicTrails);
            lcurrService.Add(AdditionalServices.Swimming);
            lcurrService.Add(AdditionalServices.TennisCourt);
 
            GuestAllInclusive lGuest1 = new GuestAllInclusive("Аршавин", "Санкт-Петербург", 20, 2589, lcurrService, 89201);
 
            //создаем новый список услуг для каждого постояльца 
            lcurrService = new List<AdditionalServices>();
 
            lcurrService.Add(AdditionalServices.Beach);
            lcurrService.Add(AdditionalServices.Bicycling);
            lcurrService.Add(AdditionalServices.Fishing);
            lcurrService.Add(AdditionalServices.Gallery);
            
            GuestAllInclusive lGuest2 = new GuestAllInclusive("Аршавин", "Санкт-Петербург", 20, 2589, lcurrService, 89201);
 
            lcurrService = new List<AdditionalServices>();
 
            lcurrService.Add(AdditionalServices.Golf);
            lcurrService.Add(AdditionalServices.Gym);
            lcurrService.Add(AdditionalServices.Rowingboats);
            lcurrService.Add(AdditionalServices.ScenicTrails);
            GuestAllInclusive lGuest3 = new GuestAllInclusive("Зырянов", "Санкт-Петербург", 10, 22459, lcurrService, 43365);
 
            lcurrService = new List<AdditionalServices>();
            lcurrService.Add(AdditionalServices.ScenicTrails);
            lcurrService.Add(AdditionalServices.Swimming);
            GuestAllInclusive lGuest4 = new GuestAllInclusive("Тимощук", "Донецк", 20, 89756, lcurrService, 4856);
 
            lcurrService = new List<AdditionalServices>();
            lcurrService.Add(AdditionalServices.Beach);
            lcurrService.Add(AdditionalServices.Golf);
            lcurrService.Add(AdditionalServices.Gym);
            lcurrService.Add(AdditionalServices.ScenicTrails);
            lcurrService.Add(AdditionalServices.Swimming);
            GuestAllInclusive lGuest5 = new GuestAllInclusive("Кержаков", "Санкт-Петербург", 2, 42589, lcurrService, 189201);
 
            lcurrService = new List<AdditionalServices>();
 
            lcurrService = new List<AdditionalServices>();
            lcurrService.Add(AdditionalServices.Beach);
            lcurrService.Add(AdditionalServices.Golf);
            lcurrService.Add(AdditionalServices.Gym);
            lcurrService.Add(AdditionalServices.Swimming);
            lcurrService.Add(AdditionalServices.TennisCourt);
            GuestAllInclusive lGuest6 = new GuestAllInclusive("Халк", "Санкт-Петербург", 20, 2589259, lcurrService, 5489201);
 
            lGuest.Add(lGuest1);
            lGuest.Add(lGuest2);
            lGuest.Add(lGuest3);
            lGuest.Add(lGuest4);
            lGuest.Add(lGuest5);
            lGuest.Add(lGuest6);
 
        }

Последний раз редактировалось Eifik; 24.10.2013 в 11:59.
Eifik вне форума Ответить с цитированием
Старый 24.10.2013, 11:58   #2
Eifik
 
Регистрация: 24.10.2012
Сообщений: 5
По умолчанию

продолжение программы
Код:
 Console.WriteLine("\n Список постоялцев - все включено : ");
            foreach (var item in lGuest)
            {
                item.Show();
            }
 
 
            FindByName(lNeutralGuest, "Воронин");
            FindByName(lGuest, "Кержаков");
 
 
            Console.WriteLine("Press any key to continue....");
            Console.ReadKey();
        }
 
 
        /// <summary>
        /// поиск постояльца по фамилии 
        /// </summary>
        /// <param name="pGuestList">Список жильцов</param>
        /// <param name="pName">фамилия искоимого жильца</param>
        static void FindByName(ICollection pGuestList, string pName)
        {
 
 
            Console.WriteLine("Поиск постояльца по фамилии : " + pName);
 
            //счетчик найденых элементов
            int pNumber = 0;
 
            // в методе main создаем коллекцию елементов 
            // тип первого параметра позволяет передавать любую структуру данных 
            // которые рализуют интерфейс Icollection 
            // таким образом можно в качестве параметра можно указывать лубую коллекцию независимо от типа элемента 
 
            string lName = String.Empty;
 
            foreach (Guest  item in pGuestList)
            {
                lName = item.Fname;
 
                if (lName == pName)
                {
                    item.Show();
                    pNumber++;
                }
            }
 
            if (pNumber > 0)
            {
                Console.WriteLine("Итого найдено  : " + pNumber);
            }
            else
            {
                Console.WriteLine("По данному критерию не найдено ни одного елемента");
            }
 
            Console.WriteLine("");
ПОМОГИТЕ ПЖ ЧТО НЕ ВЕРНО СДЕЛАНО
Eifik вне форума Ответить с цитированием
Старый 24.10.2013, 18:51   #3
GetMax
Форумчанин
 
Регистрация: 21.10.2010
Сообщений: 588
По умолчанию

Проверьте в отладчике выполнение этих строк(содержание переменных lname и pname), тогда может поймете почему ничего не выводится.
Код:
if (lName == pName)
    {
           item.Show();
           pNumber++;
    }
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
Для благодарностей WMR R145235935681
GetMax вне форума Ответить с цитированием
Старый 24.10.2013, 18:59   #4
simples
Форумчанин
 
Регистрация: 03.10.2013
Сообщений: 142
По умолчанию

Вы бы весь проект запаковали и пристегнули к теме, чем портянки слать в интернеты...
simples вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
поиск по фамилии subbota БД в Delphi 2 24.12.2012 23:18
Поиск фамилии по первой букве evklid Помощь студентам 7 01.06.2012 19:57
Известны фамилии,адреса и телефоны 25-ти человек,Найти фамилии и адреса людей,чей телефон начинается с цифры 3. Расмотреть два слу salomon93 Паскаль, Turbo Pascal, PascalABC.NET 11 01.12.2011 23:36
Поиск фамилии Aleksey1989 БД в Delphi 8 08.06.2011 22:39
Распечатать фамилии учеников,фамилии которых начинаются на букву В с указанием даты рождения. greenO_o Помощь студентам 0 26.05.2010 22:49