.NET 4.x Вычисление среднего возраста - C#
Формулировка задачи:
Есть вычисление возраста с выводом в переменную vozrast
Количество человек вроде можно взять тут
Код не мой но мне нужно сделать вычисление среднего возраста из всех кто есть в датагриде.
Листинг программы
- public int GetBirthDay()//Метод определения возраста
- {
- int vozrast = 0;
- string pattern = @"\d{4}";
- string[] Info = BirthDay.Split(new char [] {'.'}, StringSplitOptions.RemoveEmptyEntries);
- foreach (string value in Info)
- {
- if (Regex.IsMatch(value,pattern)) vozrast = (2015- Convert.ToInt32(value));
- }
- return vozrast;
- }
Листинг программы
- private void button2_Click(object sender, EventArgs e)//Заполнение данных в datagrid
- {
- vybory workers = new vybory(textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text, textBox5.Text);
- dataGridView1.RowCount = Convert.ToInt32(textBox6.Text);
- dataGridView1.Rows[schetchik].Cells[0].Value = textBox1.Text;
- dataGridView1.Rows[schetchik].Cells[1].Value = textBox2.Text;
- dataGridView1.Rows[schetchik].Cells[2].Value = textBox3.Text;
- dataGridView1.Rows[schetchik].Cells[3].Value = textBox4.Text;
- dataGridView1.Rows[schetchik].Cells[4].Value = textBox5.Text;
- textBox1.Clear();
- textBox2.Clear();
- textBox3.Clear();
- textBox4.Clear();
- textBox5.Clear();
- mass[schetchik] = workers;
- schetchik += 1;
- }
- }
Вот весь код, ибо что-то мне подсказывает инфы мало.
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.IO;
- using System.Text.RegularExpressions;
- using System.Windows.Forms;
- namespace Practica_Variant__3
- {
- public partial class Form1 : Form
- {
- int schetchik = 0;//Счетчик для заполнения
- vyboryArray mass = new vyboryArray (255);//Экземпляр класса с масивом данных
- public Form1()
- {
- InitializeComponent();
- }
- private void button1_Click(object sender, EventArgs e)//Определяем размерность размерность datagrid
- {
- dataGridView1.RowCount = int.Parse(textBox6.Text);
- textBox6.Enabled = false;
- }
- private void button2_Click(object sender, EventArgs e)//Заполнение данных в datagrid
- {
- vybory workers = new vybory(textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text, textBox5.Text);
- dataGridView1.RowCount = Convert.ToInt32(textBox6.Text);
- dataGridView1.Rows[schetchik].Cells[0].Value = textBox1.Text;
- dataGridView1.Rows[schetchik].Cells[1].Value = textBox2.Text;
- dataGridView1.Rows[schetchik].Cells[2].Value = textBox3.Text;
- dataGridView1.Rows[schetchik].Cells[3].Value = textBox4.Text;
- dataGridView1.Rows[schetchik].Cells[4].Value = textBox5.Text;
- textBox1.Clear();
- textBox2.Clear();
- textBox3.Clear();
- textBox4.Clear();
- textBox5.Clear();
- mass[schetchik] = workers;
- schetchik += 1;
- }
- private void button3_Click(object sender, EventArgs e)//Сохранение информации в файле
- {
- StreamWriter act = new StreamWriter("Исходные данные.txt");
- for (int i = 0; i<Convert.ToInt32(textBox6.Text);i++)
- {
- act.WriteLine("Фамилия: "+mass[i].Profession+", Имя: "+mass[i].Partia+", Отчество: "+
- mass[i].Otchestvo+", Дата Рождения: "+mass[i].BirthDay+", Округ: "+mass[i].Okrug);
- }
- MessageBox.Show("Исходные данные записаны в файл");
- act.Close();
- }
- public void button4_Click(object sender, EventArgs e)//Поиск самого старого и молодого канда
- {
- StreamWriter act = new StreamWriter("Статистика.txt");
- string MinVozrast = "";
- int sred = 0;
- for (int i = 0; i < Convert.ToInt32(textBox6.Text); i++)
- {
- if
- {
- sred = vozrast\ ;
- }
- }
- act.WriteLine("Средний возраст кандидатов: "+min+"лет,"+"Его место округ: "+MinVozrast+";");
- MessageBox.Show("Статистика сохранена");
- act.Close();
- }
- }
- public class vybory //Класс с данными
- {
- public string Profession;
- public string Partia;
- public string Otchestvo;
- public string BirthDay;
- public string Okrug;
- public vybory()
- {}
- public vybory(string profession, string partia, string otchestvo, string birthday, string okrug)
- {
- this.Profession = profession;
- this.Partia = partia;
- this.Otchestvo = otchestvo;
- this.BirthDay = birthday;
- this.Okrug = okrug;
- }
- public string GetProfession()
- {
- return "Профессия:"+ Profession;
- }
- public string GetPartia()
- {
- return "Название партии:"+Partia;
- }
- public string GetOtchestvo()
- {
- return "Отчество:"+Otchestvo;
- }
- public int GetBirthDay()//Метод определения возраста
- {
- int vozrast = 0;
- string pattern = @"\d{4}";
- string[] Info = BirthDay.Split(new char [] {'.'}, StringSplitOptions.RemoveEmptyEntries);
- foreach (string value in Info)
- {
- if (Regex.IsMatch(value,pattern)) vozrast = (2015- Convert.ToInt32(value));
- }
- return vozrast;
- }
- public string Getokrug()
- {
- return "Округ:" + Okrug;
- }
- }
- class vyboryArray//Класс с массивом данных
- {
- public vybory[] _mass;
- public vyboryArray(int kolvo)
- {
- _mass = new vybory[kolvo];
- }
- public vybory this[int index]
- {
- get { return _mass[index]; }
- set { _mass[index] = value; }
- }
- }
- }
До моего вмешательства вот такая была реакция на нажатие
Листинг программы
- private void button4_Click(object sender, EventArgs e)//Поиск самого старого и молодого сотрудника
- {
- StreamWriter act = new StreamWriter("Статистика.txt");
- string MinVozrast = "", MaxVozrast = "";
- int min = 100;
- int max = 0;
- for (int i = 0; i < Convert.ToInt32(textBox6.Text); i++)
- {
- if (mass[i].GetBirthDay() < min)
- {
- min = mass[i].GetBirthDay();
- MinVozrast = mass[i].Okrug;
- }
- if (mass[i].GetBirthDay() > max)
- {
- max = mass[i].GetBirthDay();
- MaxVozrast = mass[i].Okrug;
- }
- }
Решение задачи: «.NET 4.x Вычисление среднего возраста»
textual
Листинг программы
- int temp=0;
- for (int i = 0; i < Convert.ToInt32(textBox6.Text); i++)
- {
- temp+= mass[i].GetBirthDay();
- }
- средний возраст = temp / Convert.ToInt32(textBox6.Text)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д