Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 18.12.2016
Сообщений: 4

Реализовать расчет остатка жизни танка после воздействия различного вида оружия

20.12.2016, 02:14. Показов 662. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Реализовать расчет остатка жизни танка после воздействия различного вида оружия (изначально дается определенное количество). Воздействие оружие задано в виде массива, содержащего о каждом воздействии следующую информацию: название оружия, количество урона при точном попадании, расстояние от танка. Формулу зависимости количества урона от расстояния придумать самостоятельно, соблюдая следующий принцип: чем дальше попал снаряд, тем меньше урон
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.12.2016, 02:14
Ответы с готовыми решениями:

Моделирование воздействия высокоточного оружия
Добрый день, у меня есть одна задача, состоит в она в следующем : необходимо создать модель воздействия высокоточного оружия на объект ( к...

Расчет воздействия источников
Доброго всем времени суток! Есть три источника на плоскости: А с координатами* (1;1); В (4;1) и С (3;4). Излучение каждого источника...

В строке символов посчитать количество скобок различного вида
В строке символов посчитать количество скобок различного вида. Моя наработка ниже.Вместо того что хочу получаю чушь... Помогите...

4
 Аватар для Sanya_sa
912 / 816 / 333
Регистрация: 03.02.2015
Сообщений: 5,276
Записей в блоге: 9
20.12.2016, 05:38
lelik00753, Так Вам формула что ли нужна? Или ее реализация на C#? Или Вы хотите и рыбку сьесть и формулу получить?
0
.NET senior
 Аватар для bax_tang
441 / 359 / 137
Регистрация: 23.09.2016
Сообщений: 980
20.12.2016, 05:43
Sanya_sa,

Не по теме:


Ну так же проще - написать на форум с упором "есть задача, надо сделать", ни тебе здравствуйте, ни спасибо за помощь заранее - может, кто-нибудь добрый и накодит от нечего делать. :D

0
 Аватар для EveKS
601 / 485 / 185
Регистрация: 19.04.2016
Сообщений: 1,885
20.12.2016, 06:14
Баловался как-то летом, отвечая на разные вопросы на этом форуме, не совсем в тему, но тут реализованы несколько методов и событий, может пригодится:
Кусок 'Игры' :D

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
111
112
113
114
115
116
117
118
119
120
121
using System;
using System.Collections.Generic;
 
namespace Batle
{
    public delegate int AttackCallback(int armorClass);
 
    class Program
    {
        static void Main(string[] args)
        {
            var units = new ActionUnits();
 
            var valera = units.Valera();
            var opponents = units.Units();
 
            HeroFighter heroFight = new HeroFighter()
            {
                MaxDamage = valera.Damage,
                HeroLVL = valera.LVL,
            };
 
            for (int i = 0; i < opponents.Count; i++)
            {
                Battle.BattleBegin(i, valera, opponents[i]);
                for (; opponents[i].HitPoints > 0;)
                {
                    var heal = opponents[i].HitPoints;
                    Battle.Attack(valera, opponents[i], heroFight.BatleArm);
                    Console.WriteLine("Герой {0}, нанес {1} {2} урона"
                        , valera.Name, opponents[i].Name, heal - opponents[i].HitPoints);
                }
                Console.WriteLine("Герой победил\n");
            }
 
            Console.ReadKey();
        }
    }
 
    public class Hero : Unit
    {
        public int Exp { get; set; }
        public int LVL { get; set; }
        public int Damage { get; set; }
    }
 
    public class Unit
    {
        public string Name { get; set; }
        public int ArmorClass { get; set; }
        public int HitPoints { get; set; }
    }
 
    public class ActionUnits
    {
        public Hero Valera()
        {
            return new Hero
            {
                Name = "Valera",
                ArmorClass = 5,
                HitPoints = 25,
                Exp = 0,
                LVL = 1,
                Damage = 1,
            };
        }
 
        public List<Unit> Units()
        {
            var units = new List<Unit>();
 
            for (int i = 0; i < 10; i++)
            {
                units.Add(new Unit
                {
                    Name = string.Format("{0}{1}", "Unit", i),
                    ArmorClass = (0.1 * i < 5) ? 5 : (int)(0.1 * i),
                    HitPoints = (0.25 * i < 10) ? 10 : (int)(0.25 * i),
                });
            }
 
            return units;
        }
    }
 
    public class Battle
    {
        public static void BattleBegin(int i, Hero hero, Unit unit)
        {
            Console.WriteLine("==========");
            Console.WriteLine("Batle {0}:", i);
            Console.WriteLine("==========");
            Console.WriteLine("Герой {0} вступает в бой с {1}\n", hero.Name, unit.Name);
        }
 
        public static void Attack(Hero hero, Unit unit,
            AttackCallback attack)
        {
            unit.HitPoints -= attack(unit.ArmorClass);
        }
    }
 
    public class HeroFighter
    {
        Random rnd = new Random();
 
        public int MaxDamage { get; set; }
        public int HeroLVL { get; set; }
 
        public int BatleArm(int armorClass)
        {
            var roll = rnd.Next(1, 101);
            var damage = 0;
            if (roll > 50)
                damage = rnd.Next(0, MaxDamage + 1)
                    + (int)(HeroLVL * 0.11) - (int)(armorClass * 0.07);
            return damage;
        }
    }
}

Кусок... реализация какого-то сканера
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Timers;
 
namespace Delegat01
{
    public delegate void ScannedItemsHandler(Items items);
 
    class Program
    {
        static void Main(string[] args)
        {
            var scan = new Scaner();
            scan.ScannedItems += (object sender, FoundItemsEventArgs e) =>
            {
                if (e.Items != null && e.Items.Wanted)
                {
                    Console.WriteLine($"{e.Items.Name} is wanted (Found: {e.FoundDateTime:T})");
                }
            };
            scan.Scan();
            Console.WriteLine();
            Console.ReadLine();
            scan.StopScanning();
        }
    }
 
    public class FoundItemsEventArgs : EventArgs
    {
        public Items Items { get; set; }
        public DateTime FoundDateTime { get; set; }
 
        public FoundItemsEventArgs(Items items, DateTime foundDateTime)
        {
            Items = items;
            FoundDateTime = foundDateTime;
        }
    }
 
    public class Scaner
    {
        public event EventHandler<FoundItemsEventArgs> ScannedItems;
 
        public Items Items { get; set; }
 
        private Timer _myTimer;
        public void Scan()
        {
            _myTimer = new Timer(1000);
            _myTimer.Elapsed += SearchForItems;
            _myTimer.Start();
            Console.WriteLine("Has started scanning.");
        }
 
        private void SearchForItems(object sender, ElapsedEventArgs e)
        {
            Random rnd = new Random();
            var items = ItemsDatabaseService.IdentifyItems(rnd.Next(1, 11));
            Console.WriteLine($"ID: {items.Id} - {items.Name} ({items.Value}):{items.Wanted}");
 
            Items = items;
            OnFoundItems(new FoundItemsEventArgs(items, DateTime.Now));
        }
 
        protected virtual void OnFoundItems(FoundItemsEventArgs e)
        {
            ScannedItems?.Invoke(this, e);
        }
 
        public void StopScanning()
        {
            _myTimer.Stop();
            Console.WriteLine("Has stopped scanning.");
        }
    }
 
    public class Items
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Value { get; set; }
        public bool Wanted { get; set; }
    }
 
    public class ItemsDatabaseService
    {
        public static Items IdentifyItems(int id)
        {
            var items = new List<Items>
        {
            new Items { Id = 1, Name = "Item 1", Value = 124, Wanted = false },
            new Items { Id = 2, Name = "Item 2", Value = 124, Wanted = false},
            new Items { Id = 3, Name = "Item 3", Value = 124, Wanted = false},
            new Items { Id = 4, Name = "Item 4", Value = 123, Wanted = true},
            new Items { Id = 5, Name = "Item 5", Value = 124, Wanted = false },
            new Items { Id = 6, Name = "Item 6", Value = 124, Wanted = false },
            new Items { Id = 7, Name = "Item 7", Value = 123, Wanted = true},
            new Items { Id = 8, Name = "Item 8", Value = 124, Wanted = false},
            new Items { Id = 9, Name = "Item 9", Value = 124, Wanted = false},
            new Items { Id = 10, Name = "Item 10", Value = 123, Wanted = true}
        };
 
            return items.FirstOrDefault(p => p.Id == id);
        }
    }
}
0
19 / 19 / 9
Регистрация: 14.09.2016
Сообщений: 94
Записей в блоге: 1
20.12.2016, 09:40
EveKS, мне нравится название твоих переменных
C#
1
var valera
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.12.2016, 09:40
Помогаю со студенческими работами здесь

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

На складе имеется товар различного вида. Составить базу данных
На складе имеется товар различного вида. Составить базу данных, предусмотрев поля: наименование товара, цена единицы товара, ...

Реализовать одновременное перемещение дула танка и человека
Графическая интерпретация следующая: Нарисован танк, из которого запускают снаряд, и нарисован человек. Положение дула танка и человека...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru