Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 19
1

Разработать программу, моделирующую игру "Скачки"

09.01.2015, 20:06. Просмотров 1718. Ответов 17
Метки нет (Все метки)

5. Разработать программу, моделирующую игру “Скачки”. В игре участвуют 10 наездников; за каждый тур игры каждый из них продвигается вперед на расстояние от 1 до 5 км случайным образом. Длина дистанции — 50 км. Всего проводится 5 заездов, победителю каждого заезда начисляется 5 очков. Победителем считается наездник, набравший наибольшее суммарное количество очков во всех заездах. Перед началом заездов участник игры выбирает номер наездника, с которым он будет идентифицироваться во время игры. Перемещения наездников в каждом туре игры необходимо наглядно демонстрировать.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.01.2015, 20:06
Ответы с готовыми решениями:

Привязать запуск программы к кнопке "Запустить игру" и закрыть программу сразу после выполнения
Доброго времени суток. Есть задача: нужно привязать запуск программы к кнопке "Запустить игру" и...

Составить программу по управлению манипулятором "мышь". Выбор типа курсора организовать по нажатию на клавиши "q","w","r
Составить программу по управлению манипулятором "мышь". Выбор типа курсора организовать по нажатию...

Напишите программу, которая подсчитывает, сколько учащихся получило "2", "3", "4" и "5"
Помогите, пожалуйста, с решением следующей задачи: учащиеся сдают экзамены по нескольким...

Составить программу которая получает из слова "КЛОУН" слово "УКЛОН" и "КУЛОН"
Составить программу которая получает из слова «КЛОУН» слово «УКЛОН» и «КУЛОН».

17
1693 / 1026 / 378
Регистрация: 13.06.2013
Сообщений: 3,494
09.01.2015, 20:15 2
Настасья19, задание понятно. А вопрос то какой?)
0
Detect
09.01.2015, 20:22
  #3

Не по теме:

Я не ошибусь, если предположу, что вопрос: написать с нуля и бесплатно)

0
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 19
09.01.2015, 20:23  [ТС] 4
вопрос в том что я не могу понять как ее написать, и мне бы хотелось чтобы кто нибудь помог мне в этом
0
_exp10der_
09.01.2015, 20:26
  #5

Не по теме:

Хахаха ваща фраза с таким ником детект)))) подняла мне настроение))))

0
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 19
09.01.2015, 20:57  [ТС] 6
если можно, то конечно бесплатно))

Добавлено через 6 минут
можно и за деньги , в пределах разумного

Добавлено через 24 минуты
tarasalk, сможете мне помочь??
0
Модератор
Эксперт .NET
5299 / 4094 / 1182
Регистрация: 12.10.2013
Сообщений: 11,908
Записей в блоге: 2
09.01.2015, 21:04 7
Настасья19, тип программы, консоль, форма?
0
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 19
09.01.2015, 21:08  [ТС] 8
Реализовать многооконный интерфейс:
- на главной форме расположите меню;
- каждую операцию выполняйте в отдельном окне.
В программе должны присутствовать как функции-обработчики событий, так и пользовательские подпрограммы-функции;
0
Psilon
09.01.2015, 21:08
  #9

Не по теме:

insite2012, я бы не стал поощрять халявщиков, но дело твое, конечно

0
insite2012
09.01.2015, 21:12
  #10

Не по теме:

Psilon, сомневаюсь что кто-то возьмется делать просто так. Тут реальная программа, это не десяток-другой минут набросать код...

0
1693 / 1026 / 378
Регистрация: 13.06.2013
Сообщений: 3,494
09.01.2015, 21:13 11

Не по теме:

Цитата Сообщение от Psilon Посмотреть сообщение
insite2012, я бы не стал поощрять халявщиков, но дело твое, конечно
Аналогично.
Цитата Сообщение от Настасья19 Посмотреть сообщение
можно и за деньги
Для этого отдельный раздел есть.


Настасья19, задавайте конкретные вопросы, постараемся помочь. Слова типа "я ниче не знаю" не канают, это значит только что вы еще и не начинали.
Начните с малого: создайте проект, накидайте интерфейс. Мы увидим что вы хотя бы начали.
Цитата Сообщение от insite2012 Посмотреть сообщение
это не десяток-другой минут набросать код
Если с графикой не мудрить вроде не так долго выходит)
0
Psilon
09.01.2015, 21:14
  #12

Не по теме:

insite2012, ну если сомневаешься, то знаешь, в какой раздел переносить :)

0
insite2012
09.01.2015, 21:16
  #13
 Комментарий модератора 
Настасья19, в общем так сделаем. Вы определяйтесь, или пишете сами, и тогда вам могут подсказать, или вам пишут платно, и тогда тема пойдет в другой раздел.
Ятд, бесплатно за такое никто не возьмется, как вижу, многие такого же мнения.
0
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 19
09.01.2015, 21:19  [ТС] 14
просто я учусь на заочном, нам ничего не объясняют, я поняла толшько легкие программы, интерфейс я конечно могу сделать небольшие кнопки чтобы они работали тоже а вот саму суть нет
0
Заблокирован
09.01.2015, 21:21 15
Настасья19, сделайте интерфейс. С остальным попробую помочь.
0
0 / 0 / 0
Регистрация: 08.01.2014
Сообщений: 19
09.01.2015, 21:27  [ТС] 16
хорошо

вот примерно так будет выглядеть вид программы
0
Миниатюры
Разработать программу, моделирующую игру "Скачки"  
1693 / 1026 / 378
Регистрация: 13.06.2013
Сообщений: 3,494
09.01.2015, 21:58 17
Не, так не пойдет) Давайте не будем зацикливаться на 10 наездниках. Возьмите лучше dataGridView. Пусть каждая строка это наездник. Каждый столбец, это километр. Когда наездник проходит скажем 2км, то в dataGridView закрашивается 2 столбца в соответствующей строке.
Заодно напишите случайную генерацию расстояния, на которую двигается наездник каждый тур. Тут всего несколько строчек. В помощь: random

Добавлено через 10 минут
p.s. я конечно не принуждаю. Можно и на progressBar наглядно демонстрировать)

Добавлено через 5 минут
Если уж совсем минималистично, можно пройденное расстояние в textBox записывать)
0
1041 / 684 / 465
Регистрация: 21.01.2014
Сообщений: 1,810
09.01.2015, 22:17 18
Консольные бега.
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
using System;
using System.Collections.Generic;
using System.Linq;
namespace HorseRace
{
    class Horse
    {
        static Random rnd = new Random();
        public int Distance {get; private set;}
        public int Number {get; private set;}
        public int Points {get; private set;}
        public Horse(int number)
        {
            Distance = 0;
            Points = 0;
            Number = number;
        }
        public int Run()
        {
            return Distance += rnd.Next(1,5);
        }
        public void AddPoints(int pts)
        {
            Points+= pts;
        }
        public void ResetDistance()
        {
            Distance = 0;
        }
        public override string ToString()
        {
            return string.Format("N{0:00} D{1:00} P{2:00}: {3}", Number,Distance,Points, new String('*',Distance));
        }
 
    }
    
    class Program
    {
        public static int MakeBet(int number)
        {
            int h = 0;
            while (true) {
                Console.Write("Введите номер лошади (1-{0}): ", number);
                if(int.TryParse(Console.ReadLine(), out h) && h > 0 && h <= number)
                    return h;
            }
        }
        public static void DrawHorses(List<Horse> horses, int bet, int run, int runs)
        {
            Console.Clear();
            Console.WriteLine("Забег {0} из {1}", run, runs);
            foreach (Horse h in horses) {
                string pref;
                if(h.Number == bet)
                    pref = "->";
                else pref = "  ";
                Console.WriteLine(pref + h);
            }
        }
        public static void Main(string[] args)
        {
            const int numberOfHorses = 10; //Лошадей
            const int runs = 5; //Забегов
            const int distance = 50; //дистанция
            
            int myHorse = MakeBet(numberOfHorses);
            
                //Лошади, участвующие в скачках
                List<Horse> horses = new List<Horse>();
                for (int j = 1; j <= numberOfHorses; j++) {
                    horses.Add(new Horse(j));
                }
            for (int i = 0; i < runs; i++) {
                //флаг, показывающий есть ли победитель в забеге
                bool haveWinner = false;
                //забег
                DrawHorses(horses, myHorse, i+1 ,runs);
                while (!haveWinner) {
                    Console.WriteLine("Нажмите любую клавишу, чтобы продолжить забег");
                    Console.ReadKey(true);
                    foreach (Horse h in horses) {
                        h.Run();
                        if(h.Distance >= distance)
                            haveWinner = true;
                    }
                    DrawHorses(horses, myHorse,i+1,runs);
                }
                // выбираем победителя(ей) (лошадь с максимальной дистанцией)
                var runWinners = horses.GroupBy(h => h.Distance).OrderByDescending(g => g.Key).First();
                //добавляем победителям 5 по очков
                foreach (Horse h in runWinners) {
                    h.AddPoints(5);
                }
                //сбрасываем пройденные дистанции
                foreach (Horse h in horses) {
                    h.ResetDistance();
                }
                }
                Console.Clear();
                var winners = horses.GroupBy(h => h.Points).OrderByDescending(g => g.Key).First();
                bool youWinner = false;
                foreach (Horse h in winners) {
                    if(h.Number == myHorse)
                        youWinner = true;
                }
                Console.WriteLine(youWinner ? "Вы победили! =)" : "Вы пороиграли! =(");
            Console.ReadKey(true);
        }
    }
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.01.2015, 22:17

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Разработать программу, которая выводит на экран геометрическую фигуру, заполняя ее символом "*"
Размер фигуры (n) определяется при вводе.

Известны сорта роз, выращиваемых тремя цветоводами: "Анжелика", "Виктория", "Гагарин", "Ave Maria", "Катарина", "Юбилейн
Известны сорта роз, выращиваемых тремя цветоводами: &quot;Анжелика&quot;, &quot;Виктория&quot;, &quot;Гагарин&quot;, &quot;Ave...

Разработать программу "файловый менеджер"
Всем привет! Может у кого есть рабочий код одной из прогримм: 1. Разработать программу &quot;файловый...

Дан массив строк: "red", "green", "black", "white", "blue". Запишите в файл элементы массива построчно (в новой строке)
пишу так но не помогает: static void Main(string args) { string...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.