С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
85 / 86 / 48
Регистрация: 12.10.2013
Сообщений: 1,103
1

Как суммировать числа при вводе одного из них в текстовое поле?

22.07.2014, 20:26. Показов 1554. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Кажется туплю.Подскажите , пожалуйста,как модифицировать код ,чтобы при вводе случайной цифры в textBox2 ,при условии (l[l.Count - 1] == ar[i]) ,очки суммировались в textBox2 ???т.е. по сути в textBox2 все работало как в калькуляторе при сложении :7+7=(14)+2=(16)+3=19 и т.д..

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
namespace Игровой_автомат
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        List<int> l = new List<int>();
        List<int> t = new List<int>();
        int[] ar = new int[] { 10, 20, 30, 40, 50, 60, 60, 70, 70, 80, 90, 100 };
        int summa;
      
     
        private void Form1_Load(object sender, EventArgs e)
        {
           // Random r = new Random();
             //l.Add(r.Next(0, 100));
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
 
            Random r = new Random();
            l.Add(r.Next(0, 100));
            textBox1.Text = l[l.Count-1].ToString();
            for (int i = 0; i < ar.Length; ++i)
            {
                if (l[l.Count - 1] == ar[i])
                {
                    t.Add(l[l.Count - 1]);
                    textBox2.Text = t[t.Count - 1].ToString();
                    summa = (l[l.Count - 1] + t[t.Count - 1]) / 2;
                    textBox2.Text = summa.ToString();
                }
 
            }            
            
        }
P.S.если надо ,добавлю проект.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.07.2014, 20:26
Ответы с готовыми решениями:

Загрузка из БД в текстовое поле при вводе
как при вводе пользователя в текстовое поле вывести варианты выбора из бд по определенному столбцу...

Включение аудиозаписи при вводе в текстовое поле
Например ввожу &quot;Крик&quot;/&quot;Плачь&quot;/&quot;Смех&quot;, то должна включатся соответствующая аудиозапись. Команды...

Доступность кнопки при вводе текста в текстовое поле
Доброго дня! Подскажите, как решить следующую задачу: НА форме кнопка и текстовое поле. Кнопка...

Вывод в текстовое поле варианты выбора из бд при вводе
как при вводе пользователя в текстовое поле вывести варианты выбора из бд по определенному столбцу...

5
674 / 420 / 44
Регистрация: 09.07.2012
Сообщений: 1,419
22.07.2014, 22:19 2
Прочитал несколько раз, посмотрел код, опять прочитал, так и понял что требуется?
Почему у вас везде запрашивается число элементов List<int>, которое всегда одинаковое 1 - 1 = 0.
Может поместить туда переменную "i" из цикла? Но тогда l.Add(r.Next(0, 100)) надо поместить в тело цикла, что бы элементов тоже было 10.

Напишите более подробно, с 1 или 2 полными примерами ожидаемого результата.
0
85 / 86 / 48
Регистрация: 12.10.2013
Сообщений: 1,103
23.07.2014, 00:06  [ТС] 3
Это имитатор игрового автомата . .Сгенерированные числа появл.при нажатии button 1 - в textBox1 ,и сравниваються с эл-ми массива ar .Это выиграшные номера.Выводить их в textBox2 мне удалось.Мне нужно как-то складывать их в textBox2 .
Т.е.10+30+50 и т.д.Но сложенные очки должны быть одной цйфрой в textBox2 .А насчет [t.Count - 1],вот ответ с форума для меня:
Веселый, в список l заноситься все сгенерированные значения. А обращаясь к элементу с индексом
l.Count - 1 получаем значение последнего добавленного. А если постоянно заносить в l[0], то значения будут
перезаписываться, поэтому было бы достаточно использовать обычный int. Я предположил, если используеться список,
то в дальнейшем могут понадобиться и раннее полученные значения, поэтому немного исправил индексы.

Второй список, наверное, вообще не нужен. Все равно можно вытащить бонусные значения через условие деления на 10
без остатка (с учетом того, что 0 не подходит)
0
Заблокирован
23.07.2014, 07:37 4
Веселый,
C#
1
2
3
4
5
                if (l[l.Count - 1] == ar[i])
                {
                    t.Add(l[l.Count - 1]);
                    textBox2.Text = t.Sum().ToString();
                }
Добавлено через 3 минуты
Цитата Сообщение от Веселый Посмотреть сообщение
Второй список, наверное, вообще не нужен. Все равно можно вытащить бонусные значения через условие деления на 10
без остатка (с учетом того, что 0 не подходит)
То есть ваш код можно немного изменить, избавившись от массива:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 public Form1()
        {
            InitializeComponent();
        }
 
        List<int> l = new List<int>();
       
        private void Form1_Load(object sender, EventArgs e)
        {
            Random r = new Random();
            l.Add(r.Next(0, 100));           
        }
  
        private void button1_Click(object sender, EventArgs e)
        {
            Random r = new Random();
            l.Add(r.Next(0, 100));
            textBox1.Text = l[l.Count - 1].ToString();
            textBox2.Text = l.Where(a => a % 10 == 0 && a != 0).Sum().ToString();
        }
1
674 / 420 / 44
Регистрация: 09.07.2012
Сообщений: 1,419
23.07.2014, 07:49 5
По [t.Count - 1] понял, нажимать планируется несколько раз вместо одного.
В textBox2 зачем заносите значение, которое сразу же перезаписываете суммой?

Если вам нужна сумма чисел из List<int> t, то для этого есть метод расширения t.Sum().
Не играл в автоматы.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
Random r = new Random(); // Получаем ссылку на генератор случайных чисел
            l.Add(r.Next(0, 100)); // Добавляем число от 0 до 99 в коллекцию L
            textBox1.Text = l[l.Count-1].ToString(); // Выводим последнее добавленное значение из L в textBox1
            for (int i = 0; i < ar.Length; ++i) // Для каждого элемента массива ar, делаем..
            {
                if (l[l.Count - 1] == ar[i]) // Если последнее добавленное число из L равно любому числу из ar, то ...
                {
                    t.Add(l[l.Count - 1]); // Добавляем это число в лист T
                    textBox2.Text = t[t.Count - 1].ToString(); // Выводим последний добавленный элемент из T в textBox2
                    summa = (l[l.Count - 1] + t[t.Count - 1]) / 2; // Вычисляем сумму двух одинаковых чисел и делим на 2
                    textBox2.Text = summa.ToString(); // Выводим эту сумму снова в textBox2
                }
            }
"Но сложенные очки должны быть одной цифрой в textBox2", это вроде "80" должно быть показано как "8", а 120 как "1" или "3"? В textBox2 всегда будут только числа из массива ar, и все кратны 10.
0
85 / 86 / 48
Регистрация: 12.10.2013
Сообщений: 1,103
23.07.2014, 20:24  [ТС] 6
Ev_Hyper,да ,ткнули Вы меня носом в простоту душевную! Вижу что можно все сделать проще .
Немножко не хватает практики.Ну что ж буду усовершенствовать дальше .Попытаюсь сделать ,чтобы при нажатии button ,цифры прокручивались в textBox1 до случайного числа и при выиграше выводились в textBox2.Музон добавлю тоже.Все-таки игровой автомат.
0
23.07.2014, 20:24
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.07.2014, 20:24
Помогаю со студенческими работами здесь

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

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

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

Необходимо, чтобы при вводе в текстовое поле символов слово автоматически дополнялось из Таблици БД
Необходимо, чтобы при вводе в текстовое поле символов слово автоматически дополнялось из Таблици БД...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
Использование GraphQL в Go (Golang)
InfoMaster 08.01.2025
Go (Golang) является одним из наиболее популярных языков программирования, используемых для создания высокопроизводительных серверных приложений. Его архитектурные особенности и встроенные. . .
Что лучше использовать при создании класса в Java: сеттеры или конструктор?
Alexander-7 08.01.2025
Вопрос подробнее: На вопрос: «Когда одновременно создаются конструктор и сеттеры в классе – это нормально?» куратор уточнил: «Ваш класс может вообще не иметь сеттеров, а только конструктор и геттеры. . .
Как работать с GraphQL на TypeScript
InfoMaster 08.01.2025
Введение в GraphQL и TypeScript В современной разработке веб-приложений GraphQL стал мощным инструментом для создания гибких и эффективных API. В сочетании с TypeScript, эта технология. . .
Счётчик на базе сумматоров + регистров и генератора сигналов согласования.
Hrethgir 07.01.2025
Создан с целью проверки скорости асинхронной логики: ранее описанного сумматора и предополагаемых fast регистров. Регистры созданы на базе ранее описанного, предполагаемого fast триггера. То-есть. . .
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru