Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
.NET 4.x

Подкорректировать код в соответствии с заданием

17.09.2018, 17:35. Показов 5999. Ответов 52
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня есть пример кода: где пользователь до этого введя количество анализируемых чисел (и после чего сами числа) нажимая на кнопку "найти" получает положительные числа, а потом программа находит их среднее геометрическое

FormEx.Designer.cs
Кликните здесь для просмотра всего текста
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
122
123
124
125
namespace VP_6
{
    partial class FormEx
    {
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.IContainer components = null;
 
        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }
 
        #region Windows Form Designer generated code
 
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            this.label3 = new System.Windows.Forms.Label();
            this.label4 = new System.Windows.Forms.Label();
            this.textBox3 = new System.Windows.Forms.TextBox();
            this.button3 = new System.Windows.Forms.Button();
            this.button4 = new System.Windows.Forms.Button();
            this.textBox4 = new System.Windows.Forms.TextBox();
            this.SuspendLayout();
            // 
            // label3
            // 
            this.label3.AutoSize = true;
            this.label3.Location = new System.Drawing.Point(13, 9);
            this.label3.Name = "label3";
            this.label3.Size = new System.Drawing.Size(145, 13);
            this.label3.TabIndex = 0;
            this.label3.Text = "Повторяющиеся элементы";
            // 
            // label4
            // 
            this.label4.AutoSize = true;
            this.label4.Location = new System.Drawing.Point(13, 119);
            this.label4.Name = "label4";
            this.label4.Size = new System.Drawing.Size(230, 13);
            this.label4.TabIndex = 1;
            this.label4.Text = "Повторяющиеся элементы по возрастанию";
            // 
            // textBox3
            // 
            this.textBox3.Location = new System.Drawing.Point(16, 29);
            this.textBox3.Multiline = true;
            this.textBox3.Name = "textBox3";
            this.textBox3.Size = new System.Drawing.Size(256, 87);
            this.textBox3.TabIndex = 2;
            // 
            // button3
            // 
            this.button3.Location = new System.Drawing.Point(197, 182);
            this.button3.Name = "button3";
            this.button3.Size = new System.Drawing.Size(75, 23);
            this.button3.TabIndex = 4;
            this.button3.Text = "Отмена";
            this.button3.UseVisualStyleBackColor = true;
            this.button3.Click += new System.EventHandler(this.button3_Click);
            // 
            // button4
            // 
            this.button4.Location = new System.Drawing.Point(116, 182);
            this.button4.Name = "button4";
            this.button4.Size = new System.Drawing.Size(75, 23);
            this.button4.TabIndex = 5;
            this.button4.Text = "Найти";
            this.button4.UseVisualStyleBackColor = true;
            this.button4.Click += new System.EventHandler(this.button4_Click);
            // 
            // textBox4
            // 
            this.textBox4.Location = new System.Drawing.Point(16, 135);
            this.textBox4.Multiline = true;
            this.textBox4.Name = "textBox4";
            this.textBox4.Size = new System.Drawing.Size(256, 31);
            this.textBox4.TabIndex = 3;
            // 
            // FormEx
            // 
            this.ClientSize = new System.Drawing.Size(284, 218);
            this.Controls.Add(this.button4);
            this.Controls.Add(this.button3);
            this.Controls.Add(this.textBox4);
            this.Controls.Add(this.textBox3);
            this.Controls.Add(this.label4);
            this.Controls.Add(this.label3);
            this.Name = "FormEx";
            this.Text = "Индивидуальное задание";
            this.Load += new System.EventHandler(this.FormEx_Load);
            this.ResumeLayout(false);
            this.PerformLayout();
 
        }
 
        #endregion
 
        private System.Windows.Forms.Button button1;
        private System.Windows.Forms.Button button2;
        private System.Windows.Forms.Label label1;
        private System.Windows.Forms.Label label2;
        private System.Windows.Forms.TextBox textBox2;
        private System.Windows.Forms.TextBox textBox1;
        private System.Windows.Forms.Label label3;
        private System.Windows.Forms.Label label4;
        private System.Windows.Forms.TextBox textBox3;
        private System.Windows.Forms.Button button3;
        private System.Windows.Forms.Button button4;
        private System.Windows.Forms.TextBox textBox4;
    }
}}


FormEx.cs
Кликните здесь для просмотра всего текста
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
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace VP_6
{
    public partial class FormEx : Form
    {
        public FormEx()
        {
            InitializeComponent();
        }
 
        private void button4_Click(object sender, EventArgs e)
        {
            bool checkUp = true, checkDown = true;
            {
                for (Int32 i = 0; i < FormMain.getArr().Count - 1; ++i)
                {
                    // для проверки на возрастание
                    if ((Convert.ToDouble(FormMain.getArr()[i]) < Convert.ToDouble(FormMain.getArr()[i + 1])) && checkUp)
                    {
                        checkUp = false;
                    }
                    // для проверки на убывание
                    if ((Convert.ToDouble(FormMain.getArr()[i]) > Convert.ToDouble(FormMain.getArr()[i + 1])) && checkDown)
                    {
                        checkDown = false;
                    }
                }
                if (checkDown || checkUp)
                {
                    MessageBox.Show("Массив отсортирован");
                }
                else
                {
                    double multi = 1.0;
 
                    for (Int32 i = 0; i < FormMain.getArr().Count; ++i)
                    {
                        multi *= (double)FormMain.getArr()[i];
                        if ((double)FormMain.getArr()[i] > 0)
                        {
                            textBox3.Text += Convert.ToString(FormMain.getArr()[i]) + " | ";
                        }
                    }
                    textBox4.Text = Convert.ToString(multi / (double)FormMain.getArr().Count);
                }
            }
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            this.Visible = false;
        }
 
        private void FormEx_Load(object sender, EventArgs e)
        {
 
        }
    }
}


Помогите изменить код так чтобы у меня из заранее введенных чисел выводились сначала повторяющиеся элементы (более двух раз) в верхний textbox, а потом они сортировались в возрастанию и выводились в нижний trxtbox.
Миниатюры
Подкорректировать код в соответствии с заданием  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.09.2018, 17:35
Ответы с готовыми решениями:

Правильно ли составил код в соответствии с заданием?
Дан массив {ai} , i = 1, 2, ..., 2n. Вычислить S=a1a2n+a2a2n-1+...+anan+1 Сам последний член последовательности, как к нему...

Разработать приложение в соответствии с заданием
Здравствуйте еще раз уважаемые форумчане! Пишу вам наверное в последний раз, так как нужно помочь в последнем задании! Задание...

Написать модель в соответствии с заданием
Здравствуйте, дорогие форумчане. Имеется задание по GPSSW. Я написал модель в соответсвии с ним. Написал так, насколько смог разобраться в...

52
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
18.09.2018, 15:05
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от xamelione25 Посмотреть сообщение
/// Секция ввода начальных значений и конвертации из строк в числовой формат обязательно ли наличие этого блока или нет (мне просто что-то от себя не желательно втюхивать.....так как у преподавателя могут вопросы лишние возникнуть)???
НЕТ!!!
Это просто пример реализации, что бы Вы знали какой кусок кода что делает!
Вообще, мой код в проект своего задания не вставляйте. Выберите нужный функционал какой Вам надо, и переделайте под своё задание.

Добавлено через 2 минуты
Цитата Сообщение от xamelione25 Посмотреть сообщение
2. Подскажи как правильно дать ссылку на использование элементов введенных в dataGridView1....а то у меня VS ругается
НЕТ!!! НЕ ПРАВИЛЬНО!!!
DGV - это элемент управления, а не источник данных!
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 13:54  [ТС]
Элд Хасп, я подобавлял.....но чувствую у меня бред получился .....
Миниатюры
Подкорректировать код в соответствии с заданием   Подкорректировать код в соответствии с заданием   Подкорректировать код в соответствии с заданием  

Подкорректировать код в соответствии с заданием   Подкорректировать код в соответствии с заданием  
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 15:02
Скидываю код примера и проект.
Form1.resx
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
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
namespace Подкорректировать_код_в_соответствии_с_заданием
{
    partial class Form1
    {
        /// <summary>
        /// Обязательная переменная конструктора.
        /// </summary>
        private System.ComponentModel.IContainer components = null;
 
        /// <summary>
        /// Освободить все используемые ресурсы.
        /// </summary>
        /// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }
 
        #region Код, автоматически созданный конструктором форм Windows
 
        /// <summary>
        /// Требуемый метод для поддержки конструктора — не изменяйте 
        /// содержимое этого метода с помощью редактора кода.
        /// </summary>
        private void InitializeComponent()
        {
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.label1 = new System.Windows.Forms.Label();
            this.button2 = new System.Windows.Forms.Button();
            this.label2 = new System.Windows.Forms.Label();
            this.listBox2 = new System.Windows.Forms.ListBox();
            this.textBox2 = new System.Windows.Forms.TextBox();
            this.button3 = new System.Windows.Forms.Button();
            this.listBox3 = new System.Windows.Forms.ListBox();
            this.button4 = new System.Windows.Forms.Button();
            this.listBox4 = new System.Windows.Forms.ListBox();
            this.button1 = new System.Windows.Forms.Button();
            this.listBox1 = new System.Windows.Forms.ListBox();
            this.SuspendLayout();
            // 
            // textBox1
            // 
            this.textBox1.Location = new System.Drawing.Point(22, 77);
            this.textBox1.Multiline = true;
            this.textBox1.Name = "textBox1";
            this.textBox1.Size = new System.Drawing.Size(275, 392);
            this.textBox1.TabIndex = 0;
            // 
            // label1
            // 
            this.label1.AutoSize = true;
            this.label1.Location = new System.Drawing.Point(34, 19);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(125, 20);
            this.label1.TabIndex = 1;
            this.label1.Text = "Введите числа";
            // 
            // button2
            // 
            this.button2.Location = new System.Drawing.Point(600, 19);
            this.button2.Name = "button2";
            this.button2.Size = new System.Drawing.Size(275, 85);
            this.button2.TabIndex = 2;
            this.button2.Text = "Выбрать положительные и подсчитать среднее геометрическое";
            this.button2.UseVisualStyleBackColor = true;
            this.button2.Click += new System.EventHandler(this.button2_Click);
            // 
            // label2
            // 
            this.label2.AutoSize = true;
            this.label2.Location = new System.Drawing.Point(606, 411);
            this.label2.Name = "label2";
            this.label2.Size = new System.Drawing.Size(204, 20);
            this.label2.TabIndex = 1;
            this.label2.Text = "Среднее геометрическое";
            // 
            // listBox2
            // 
            this.listBox2.FormattingEnabled = true;
            this.listBox2.ItemHeight = 20;
            this.listBox2.Location = new System.Drawing.Point(608, 119);
            this.listBox2.Name = "listBox2";
            this.listBox2.SelectionMode = System.Windows.Forms.SelectionMode.None;
            this.listBox2.Size = new System.Drawing.Size(267, 284);
            this.listBox2.TabIndex = 3;
            // 
            // textBox2
            // 
            this.textBox2.BackColor = System.Drawing.SystemColors.ButtonHighlight;
            this.textBox2.Enabled = false;
            this.textBox2.Location = new System.Drawing.Point(610, 443);
            this.textBox2.Name = "textBox2";
            this.textBox2.ReadOnly = true;
            this.textBox2.Size = new System.Drawing.Size(253, 26);
            this.textBox2.TabIndex = 4;
            // 
            // button3
            // 
            this.button3.Location = new System.Drawing.Point(901, 19);
            this.button3.Name = "button3";
            this.button3.Size = new System.Drawing.Size(275, 68);
            this.button3.TabIndex = 2;
            this.button3.Text = "Выбрать уникальные числа";
            this.button3.UseVisualStyleBackColor = true;
            this.button3.Click += new System.EventHandler(this.button3_Click);
            // 
            // listBox3
            // 
            this.listBox3.FormattingEnabled = true;
            this.listBox3.ItemHeight = 20;
            this.listBox3.Location = new System.Drawing.Point(901, 99);
            this.listBox3.Name = "listBox3";
            this.listBox3.SelectionMode = System.Windows.Forms.SelectionMode.None;
            this.listBox3.Size = new System.Drawing.Size(267, 364);
            this.listBox3.TabIndex = 3;
            // 
            // button4
            // 
            this.button4.Location = new System.Drawing.Point(1197, 19);
            this.button4.Name = "button4";
            this.button4.Size = new System.Drawing.Size(275, 68);
            this.button4.TabIndex = 2;
            this.button4.Text = "Отсортировать уникальные числа";
            this.button4.UseVisualStyleBackColor = true;
            this.button4.Click += new System.EventHandler(this.button4_Click);
            // 
            // listBox4
            // 
            this.listBox4.FormattingEnabled = true;
            this.listBox4.ItemHeight = 20;
            this.listBox4.Location = new System.Drawing.Point(1197, 99);
            this.listBox4.Name = "listBox4";
            this.listBox4.SelectionMode = System.Windows.Forms.SelectionMode.None;
            this.listBox4.Size = new System.Drawing.Size(267, 364);
            this.listBox4.TabIndex = 3;
            // 
            // button1
            // 
            this.button1.Location = new System.Drawing.Point(319, 19);
            this.button1.Name = "button1";
            this.button1.Size = new System.Drawing.Size(275, 68);
            this.button1.TabIndex = 2;
            this.button1.Text = "Выбрать числа";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);
            // 
            // listBox1
            // 
            this.listBox1.FormattingEnabled = true;
            this.listBox1.ItemHeight = 20;
            this.listBox1.Location = new System.Drawing.Point(319, 108);
            this.listBox1.Name = "listBox1";
            this.listBox1.SelectionMode = System.Windows.Forms.SelectionMode.None;
            this.listBox1.Size = new System.Drawing.Size(267, 364);
            this.listBox1.TabIndex = 3;
            // 
            // Form1
            // 
            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 20F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(1487, 481);
            this.Controls.Add(this.textBox2);
            this.Controls.Add(this.listBox4);
            this.Controls.Add(this.listBox1);
            this.Controls.Add(this.listBox3);
            this.Controls.Add(this.listBox2);
            this.Controls.Add(this.button1);
            this.Controls.Add(this.button4);
            this.Controls.Add(this.button3);
            this.Controls.Add(this.button2);
            this.Controls.Add(this.label2);
            this.Controls.Add(this.label1);
            this.Controls.Add(this.textBox1);
            this.Name = "Form1";
            this.Text = "Form1";
            this.ResumeLayout(false);
            this.PerformLayout();
 
        }
 
        #endregion
 
        private System.Windows.Forms.TextBox textBox1;
        private System.Windows.Forms.Label label1;
        private System.Windows.Forms.Button button2;
        private System.Windows.Forms.Label label2;
        private System.Windows.Forms.ListBox listBox2;
        private System.Windows.Forms.TextBox textBox2;
        private System.Windows.Forms.Button button3;
        private System.Windows.Forms.ListBox listBox3;
        private System.Windows.Forms.Button button4;
        private System.Windows.Forms.ListBox listBox4;
        private System.Windows.Forms.Button button1;
        private System.Windows.Forms.ListBox listBox1;
    }
}
Form1.cs
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
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace Подкорректировать_код_в_соответствии_с_заданием
{
    public partial class Form1 : Form
    {
        List<string> ListString ; // Список в строковом формате
        List<Double> ListDouble; // Список в числовом формате
        List<Double> ListPositiveDouble; // Список положительных чисел
        List<Double> UniqueNumber ; // Новый список для уникальных чисел
        List<Double> SortUniqueNumber ; // Создание списка для сортировки
 
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            ListString = new List<string>(textBox1.Text.Split(Environment.NewLine.ToCharArray())); // Список в строковом формате
            double _temp;
            ListDouble = ListString.Where(str => Double.TryParse(str, out _temp)).Select(str => Double.Parse(str)).ToList(); // Список в числовом формате
 
            listBox1.DataSource=null;
            listBox1.DataSource = ListDouble;
 
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            ListPositiveDouble = ListDouble.Where(doub => doub > 0).ToList(); // Список положительных чисел
            Double ProductNumbers = ListPositiveDouble.Aggregate((Double doub, Double prod) => doub * prod); // Произведение всех чисел
            Double GeometricMean = Math.Pow(ProductNumbers, 1.0 / ListPositiveDouble.Count); // Среднее геометрическое всех чисел
 
            listBox2.DataSource = null;
            listBox2.DataSource = ListPositiveDouble;
            textBox2.Text = GeometricMean.ToString();
 
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
             UniqueNumber = new List<double>(); // Новый список для уникальных чисел
            foreach (double numb in ListDouble) // Цикл по исходным числам
            {
                if (UniqueNumber.IndexOf(numb) < 0) // Определяет уже встречалось это число или нет
                    UniqueNumber.Add(numb); // Если не встречалось, то запись в список уникальных чисел.
            }
 
            listBox3.DataSource = null;
            listBox3.DataSource = UniqueNumber;
        }
 
        private void button4_Click(object sender, EventArgs e)
        {
            SortUniqueNumber = new List<double>(UniqueNumber); // Создание списка для сортировки
            SortUniqueNumber.Sort(); // Получение сортированного списка уникальных чисел
 
            listBox4.DataSource = null;
            listBox4.DataSource = SortUniqueNumber;
 
 
        }
    }
}
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 17:11  [ТС]
Элд Хасп, Я не правильно что-то прописываю. А что конкретно не пойму
Миниатюры
Подкорректировать код в соответствии с заданием   Подкорректировать код в соответствии с заданием  
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 17:16
Цитата Сообщение от xamelione25 Посмотреть сообщение
Элд Хасп, Я не правильно что-то прописываю. А что конкретно не пойму
Я же Вам весь проект скинул! Вы запускали его?
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 17:18  [ТС]
Элд Хасп, да, я видел
Я не пойму другого:
как и где я должен сослаться на введенные элементы в dataGridView1 в FormArray, и как на него вообще ссылаться, то есть как из него считать значения (элементы)

просто как это прописать
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 17:23
Цитата Сообщение от xamelione25 Посмотреть сообщение
как и где я должен сослаться на введенные элементы
В моём проекте Вы видели как вводятся числа?
Вы пробовали их вводить?

И ещё, для Вашего задания - dataGridView1 излишен. Он нужен если необходимо редактирование данных в табличной виде. У Вас просто ввод нескольких чисел - достаточно многострочного TextBox. Как в моём проекте.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 17:24  [ТС]
Цитата Сообщение от Элд Хасп Посмотреть сообщение
для Вашего задания - dataGridView1 излишен
Мне по заданию его наличие обязательно
Миниатюры
Подкорректировать код в соответствии с заданием  
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 17:33
Тогда может у Вас задание несколько иное? Использование DataGridView подразумевает несколько колонок. У Вас есть одна колонка для чисел. А остальные колонки зачем?

Добавлено через 7 минут
Посмотрел я Ваше задание. Там обработка чисел - вторична. Главное создать меню и подключить к нему команды.
Переделать методы на DGV - не проблема. А дальше - Вы сможете остальное сделать? Мне возиться с меню неохота.
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 17:33  [ТС]
Элд Хасп, я скинул выше текст задания
мне просто скинули эту лабораторку как пример (см архив)....и мне просто нада там изменить в FormEX ход расчета......
нада извлечь введенные значения из dataGridView1, и сделать по заданию как писал выш последовательность по блок-схеме
Миниатюры
Подкорректировать код в соответствии с заданием   Подкорректировать код в соответствии с заданием  
Вложения
Тип файла: rar 6_вп.rar (282.5 Кб, 1 просмотров)
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 17:35
Сто за пункт меню "Создать" -> "Ввод автомат" ?
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 17:36  [ТС]
Элд Хасп, ну там типа компьютер вводит сам значения во методу случайных чисел (итп)
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 17:37  [ТС]
Элд Хасп, здесь я уже немного под себя в конструкторе переделал
Вложения
Тип файла: rar 1.rar (240.4 Кб, 1 просмотров)
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 18:12
И я ни как не пойму что такое "повторяющиеся элементы"?
В массиве {2,3,5,7,8,1,0,4,6,2,1,9,8} - "повторяющиеся" это массив {2, 8, 1}. Или по другому принципу?

Добавлено через 8 минут
Посмотрел я проект. Он не соответствует заданию. В задании явно указано для манипуляций с массивом обязательно использовать методы ArrayList и двухстороннюю связь с DataGridView
Т.е. должно быть что-то типа этого
C#
1
2
ArrayList Arr = new ArrayList();
dataGridView1.DataSource=Arr;
Этого нет. Поэтому задание в таком шаблоне, в принципе, не возможно выполнить.

Добавлено через 1 минуту
Где, в каком массиве находится исходный список чисел?

Добавлено через 2 минуты
В нескольких местах объявлен ArrayList Arr. Но всюду он объявлен локально внутри методов. И после выполнения методов данные в нём не сохраняются. Поэтому не исходного массива. Откуда его брать?
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 18:28  [ТС]
Элд Хасп,

Цитата Сообщение от Элд Хасп Посмотреть сообщение
В массиве {2,3,5,7,8,1,0,4,6,2,1,9,8} - "повторяющиеся" это массив {2, 8, 1}. Или по другому принципу?
------да правильно

Цитата Сообщение от Элд Хасп Посмотреть сообщение
Посмотрел я проект. Он не соответствует заданию.
этот проект сделан под задание другое задание (зеленое это тот вариант под который мне нада сделать, а красное это вариант-задание того человека, который делал этот проект, который я выше кинул)

Цитата Сообщение от Элд Хасп Посмотреть сообщение
Где, в каком массиве находится исходный список чисел?
по идее в окне FormArray происходит ввод количества чисел, потом там же вылетает в dataGridView1 это количество ячеек (почему там вылетает вторая строка (как в таблице) при начинании ввода чисел - не знаю), и потом человек сохраняет его нажатием на кнопку "сохранить" (загоняет в память этот массив) и на этом вся функциональная часть этого окна заканчивается.

Потом человек нажимая на вкладку индивидуальное задание получает диалоговое окно, закрывая его он получает форму FormEX где у меня и всплывают все проблемы.......
Миниатюры
Подкорректировать код в соответствии с заданием  
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 19:23
Цитата Сообщение от xamelione25 Посмотреть сообщение
этот проект сделан под задание другое задание (зеленое это тот вариант под который мне нада сделать, а красное это вариант-задание того человека, который делал этот проект, который я выше кинул)
Это различные варианты Меню работа. В этом Проекте не правильно сделана общая часть для всех вариантов.
Если не переделывать общую часть, можно считать, что при вызове FormEx исходный массив чисел надо формировать из ячеек DataGridView1?
Кстати, сколько там колонок? Надеюсь только одна с числами?
0
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
19.09.2018, 19:34  [ТС]
Элд Хасп,
Цитата Сообщение от Элд Хасп Посмотреть сообщение
Меню работа
???????

Цитата Сообщение от Элд Хасп Посмотреть сообщение
Кстати, сколько там колонок? Надеюсь только одна с числами?
а причем здесь колонки (может строки?).....здесь количество колонок-ячеек формируется в зависимости от введенного числа анализируемых чисел, то есть на каждое число отдельная ячейка
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
19.09.2018, 21:38
Лучший ответ Сообщение было отмечено xamelione25 как решение

Решение

Цитата Сообщение от Элд Хасп Посмотреть сообщение
Меню работа.
Это цитата из задания "В пункт меню Работа добавить ....". Кроме этого пункта, во всём остальном, все варианты идентичны.
Цитата Сообщение от xamelione25 Посмотреть сообщение
а причем здесь колонки (может строки?).....
DataGridView - это табличный элемент. В нём есть строки и колонки. Именно, поэтому я и удивился, что для такой задачи он используется.
Так как мы говорим о списке чисел, то нужен порядок их расположения в таблице чтобы их оттуда выбрать. Как они там располагаются? Все в первой колонке (возможно там всего одна колонка)?

Добавлено через 43 минуты
Проект совсем кривой. Постоянно вылетает. Много ошибок. Я так и не понял где хранятся числа.
Такого использования DGV вообще никогда не видел! Это ком у такое в голову пришло?! Список объектов (в данном случае чисел) должен формироваться вертикально: один объект - одна строчка! В столбцах формируются разные свойства объекта!
В данном случае объект число - свойство у него одно или два (можно разделить строковое и численное представления), поэтому список должен формироваться вертикально в одну (или две колонки).

Добавлено через 21 минуту
Путаница с именами классов и объектов!
Это кому такое в голову взбрело?! В коде FormMain
C#
1
      Form FormAbout, FormArray, FormSearch, FormEx;
Это же всё классы! Создать переменные с такими же именами и потом ещё неправильные классы им присваивать!Имя переменной FormEx для объекта класса FormEx заменил в коде на FormExObj;
Вместо указанной строчки вставил
C#
1
2
        Form FormAbout, FormArray, FormSearch, FormEx;
        FormEx FormExObj;
В код FormEx вставил публичное свойство
C#
1
        public ArrayList StrList { get; set; } // Список для строк
Теперь при вызове можно объекту этого класса передать список значений.
В коде FormMain в метод meExToolStripMenuItem_Click изменил вызов формы
C#
1
2
3
4
5
6
7
8
9
            if (FormExObj.IsDisposed)
            { FormExObj = new FormEx(); }
 
            FormExObj.StrList = A; // Передача Списка значений
 
            if (!FormExObj.Visible)
            { FormExObj.Show(); }
 
            else { FormExObj.Activate(); }
1
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16166 / 11286 / 2892
Регистрация: 21.04.2018
Сообщений: 33,175
Записей в блоге: 2
20.09.2018, 00:03
Лучший ответ Сообщение было отмечено xamelione25 как решение

Решение

Поисправлял где нашёл.
Вложения
Тип файла: 7z 1.7z (173.7 Кб, 3 просмотров)
1
 Аватар для xamelione25
-4 / 5 / 2
Регистрация: 04.02.2013
Сообщений: 1,861
20.09.2018, 04:59  [ТС]
Элд Хасп, Все хорошо, спасибо, но единственный вопрос. У меня загрузка идет идет из сохраненного файла и не открывается (не считывается). И как вообще (где) в данном примере задается формат файла?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.09.2018, 04:59

Разработайте приложение в соответствии с заданием
На форме предоставьте пользователю возможность вводить положительные вещественные числа(в поле для ввода Edit). При нажатии на клавишу...

Разработайте приложение в соответствии с заданием
Разработайте приложение в соответствии с заданием. На форме предоставьте пользователю возможность вводить целые числа (в поле для ввода...

Измените исходный массив в соответствии с заданием
Дан двумерный массив. Измените исходный массив в соответствии с заданием: найти минимальный и максимальный элементы столбца и заменить их...

Измените исходный массив в соответствии с заданием:
Измените исходный массив в соответствии с заданием:заменить все элементы строки с номером k и столбца с номером р на противоположные по...

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


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru