На нашем сайте Вы сможете найти готовые курсовые и дипломные работы по программированию
Сейчас работаем

Игра Зайцы Бандиты С#

Задание на курсовую работу

Банда из k зайцев совершила разбойный налѐт на склад с капустой и похитила n кочанов.Лиса в это время пробегала мимо и предложила им поделить награбленную капусту поровну между всеми членами банды. Зайцы согласились, условившись с лисой, что всем зайцам достанется одинаковое количество кочанов капусты, а остаток размером менее k кочанов лиса сможет забрать себе как плату за эту услугу. Между тем, при разделе капусты к банде присоединился один заяц, который не принимал участия в налѐте. Он получил ровно такую же долю, как и члены банды, однако остался незамеченным. «Почему?» - спросите вы. Дело в том, что каждый заяц получил такое же количество кочанов капусты, какое получил бы, если бы самозванец при разделе не присутствовал. Найдите минимальное количество зайцев в банде, при  котором такое могло произойти.

Описание принципа работы приложения

При запуске приложения пользователю предложено ввести данные задачи :

- Количество кочанов капусты N

- Количество зайцев в банде K

На все значения накладываются определенные ограничения с целью получения корректного решения, то есть нельзя вводить текст.

После введения исходных данных нужно нажать кнопку «рассчитать», после чего задача будет решена и минимальное количество зайцев в банде будет выведено в текстовое поле.

В данном приложении пользователь может создать задачу с новыми данными, не выходя из приложения. Данные просто нужно ввести заново или изменить некоторые значения.

Пользователь может сохранить данные проекта, для этого нужно нажать кнопку Сохранить.

Если у пользователя возникли проблемы с работой с приложением, он может обратиться за помощью к Справке. Справка содержит текст задачи, а так же информацию о том, кто разработал данное приложение.

 

Содержание отчета к программе:

Введение

  • Задание на курсовую работу
  • Постановка задачи
    • Круг пользователей приложения
    • Информация, вводимая пользователем приложения
    • Результаты, которые необходимо получить с помощью приложения
    • Сохранение информации
    • Требования к пользовательскому интерфейсу и приемы обработки ошибок пользователя

 

  • Проектная часть
    • Описание принципа работы приложения
    • Структура свойств объектов
    • Таблицы объектов и идентификаторов
  • Функциональное описание
  • Пример работы программы

 

Заключение

Приложение

Фрагмент программного кода

namespace Task

{
     public partial class Form1 : Form

    {
        int n, k; //переменные кочанов капусты  и зайцев
        private Log log = Log.Instance;//переменная для работы с классом Log ( для открытия данных из файла)
        private List<Result> resultList;//определение переменной
        public Form1()

        {
            InitializeComponent();//инициализация
            resultList = new List<Result>();
        }
        private void справкаToolStripMenuItem_Click(object sender, EventArgs e)//событие нажатия кнопки справка
        {
            HelpForm help = new HelpForm();//создание формы
            help.ShowDialog();//вызов формы
        }

         private void выходToolStripMenuItem_Click(object sender, EventArgs e)//событие нажатия кнопки выход

        {
           Close();//закрытие приложения
        }

         private void calc(int n, int k)//ф-я расчетов

        {
            Result res = new Result();//переменная результата

            int pay = n / k;//количество кочанов, которое ожидает получить каждый участник банды
            int residue = n % k;//плата лисе
            if (residue == 0)//если палата = 0, значит участники ограбления рассчитывают на n / k кочанов, и при присоединении к ним зайца он будет раскрыт (плата каждому участнику уменьшится)
            {
                System.Windows.Forms.MessageBox.Show("Присоединившийся заяц будет замечен (см. условие задачи)");//текстовое сообщение
                return;
            }
 
            res.Cabbages = n;
            res.Hares = k;
            //ищем такое количество участников, что при добавлении еще 1 плата уменьшается
            int new_pay = 0;//текущая плата
            int catch_band = 0;//после цикла переменная сожержит такое кол-во банд, при котором зайца раскроют

            do//цикл с постусловием (выполняется. пока не выполнится условие pay == new_pay )

            {
                catch_band = --k + 1;
                new_pay = n / (catch_band);
            }

            while (pay == new_pay);//если плата изменяется, зайца раскроют
            int min_band = catch_band + 1; //находим минимальное кол-во банд, при которых зайца не раскроют
            res.Message = String.Format(" Минимальное количество зайцев (k) = {0} ", min_band);//вывод сообщения
            listOfRes.Items.Add(res.Message);//добавляем в листбокс данные
            resultList.Add(res);
        }

        private void btnProc_Click(object sender, EventArgs e)//событие кнопки рассчитать

        {
            try//проверка условия
            {//если введены цифры (можно только цифры)
                n = System.Convert.ToInt32(txtN.Text);//конвертация вводимых данных в формат Int
                k = System.Convert.ToInt32(txtK.Text);//конвертация вводимых данных в формат Int
                 if ((k > n) || (k == 0) || (n == 0)) throw new Exception();
            }
            catch (Exception)//если введены не цифры. либо данные некорректны
            {
                System.Windows.Forms.MessageBox.Show("Данные введены неверно!");//уведомление
                return;
            }
            calc(n, k);//вызов функции подсчета
        }

Содержание архива

  • исходный код  на C# для Visual Studio 
  • пояснительная записка к курсовой работе (10 страниц)
Купить 99,00 
Сразу после оплаты Вы получите работу на электронную почту. Файлы отправляются автоматически. Исходник программ Вы сможете отредактировать, как Вам нужно.
Комментарии (0)

klausms

/ /

Оставить комментарий

Ты не можешь комментировать

Только зарегистрированые пользователи имеют возможность комментировать работы
Похожие работы
Тип Название Рейтинг Категория Стоимость
Курсовая Игра Сокобан 6 .NET (C#) 2 200,00
Исходник Игра Шашки С# 10 .NET (C#) 2 500,00
Курсовая Игра 2048 С# new 2 .NET (C#) 2 500,00
Исходник Игра домино С++ 1 C/C++ 3 000,00
Курсовая Игра Кроссворд на С++ 12 C/C++ 1 500,00
Другие работы автора
Тип Название Рейтинг Категория Стоимость
Исходник Нахождение эйлеровых циклов в графе С++ 0 C/C++ 800,00
Курсовая Автоматическое реферирование текста C# 5 .NET (C#) 3 700,00
Курсовая Автоматическое составление кроссвордов С++ 0 .NET (C#) 2 700,00
Исходник Алгоритм Рабина-Карпа C# 0 .NET (C#) 1 500,00
Исходник Алгоритм Хаффмана C# 22 .NET (C#) 3 500,00
Новые работы
Тип Название Рейтинг Категория Стоимость
Исходник Шифр Виженера "Python" new 0 Python 1 000,00
Исходник Библиотека. Учет книг (C#, WPF, NET 6.0, SQL Server) new 0 .NET (C#) 2 000,00
Исходник Учет посещаемости занятий (C#, WPF, SQL Server, SQLite) new 0 .NET (C#) 2 500,00
Исходник Программа "Гипотеза Коллатца" Python new 0 Python 500,00
Исходник Генератор календарей (Python) new 1 Python 800,00
Купить

99,00 

Сразу после оплаты Вы получите работу на электронную почту. Файлы отправляются автоматически. Исходник программ Вы сможете отредактировать, как Вам нужно.

Заказать через

Task_upd_new.rar
254661
Оцени работу

рейтинг

Категории
Игра Зайцы Бандиты С#
Курсовая работа (курсовой проект) по программированию Программа создана в среде разработки Microsoft Visual Studio
Категория: Образование
Стоимость: 99,00