Ни одна из перегрузок метода "vivod" не принимает "1" аргументов - C#
Формулировка задачи:
Помогите пожалуйста разобраться
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace задача20_вариант2
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
f vivods = new f();
private void button1_Click(object sender, EventArgs e)
{
vivods.vivod(listBox1);
}
private static Worker[] Worker()
{
Worker[] workers = new Worker[]
{
new Worker("Иванов",1,100000),
new Worker("Петров",2,150000),
new Worker("Сидоров",3,200000),
new Worker("Бэтманов",2,300000),
new Worker("Себастьянов",2,198000),
new Worker("Тарасов",1,115000),
new Worker("Туттов",2,217000),
new Worker("Зебров",1,100000)
};
return workers;
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
class e
{ protected Brigade brigade = new Brigade(1);
protected void resh()
{
Worker[] workers =new Worker[6];
for (int i=0;i<=5;i++)
workers[i]=new Worker();
// Теперь сортируем его по бригадам по возрастанию
for (int i = 0; i < workers.Length; i++)
{
for (int j = i; j < workers.Length; j++)
{
if (i == j) continue;
if (workers[i].brigaderoom > workers[j].brigaderoom)
{
// Если идёт 1,2,1 тогда 1 и 2 меняем местами
Worker pushworker = workers[i];
workers[i] = workers[j];
workers[j] = pushworker;
}
}
}
for (int i = 0; i < workers.Length; i++)
{
brigade.room = workers[i].brigaderoom; // Тут мы задаём начальные расчётные значения по рассматриваемой бригаде
brigade.maxsalary = int.MinValue;
brigade.minsalary = int.MaxValue;
brigade.sumsalary = 0;
brigade.countworkers = 0;
brigade.averagesalary = 0;
for (int j = i; j < workers.Length; j++)
{
Worker worker = workers[j]; // Считаем сред зарплату по бригаде
if (brigade.room != worker.brigaderoom) break;
if (brigade.minsalary > worker.salary) brigade.minsalary = worker.salary;//Сравниваем зарплаты
if (brigade.maxsalary < worker.salary) brigade.maxsalary = worker.salary;
brigade.sumsalary += worker.salary;
brigade.countworkers++;
}
brigade.averagesalary = brigade.sumsalary / (decimal)brigade.countworkers;
}
}
}
class f : e
{
public void vivod(ListBox listBox1, Worker[] workers)
{
string minworkers = "";
string maxworkes = "";
int averageworkerscount = 0;
int j;
for (j = 0; j < workers.Length; j++)
{
Worker worker=new Worker();
worker = workers[j];
if (brigade.room != worker.brigaderoom) break;
if (brigade.minsalary == worker.salary)
{
// этот рабочий с минимальным окладом
minworkers += worker.fullname + ",";
}
if (brigade.maxsalary == worker.salary)
{
// этот рабочий с максимальным окладом
maxworkes += worker.fullname + ",";
}
if (worker.salary > brigade.averagesalary)
{
// у этого рабочий зарплата выше средней
averageworkerscount++;
}
}
listBox1.Items.Add("Бригада " + brigade.room.ToString());
listBox1.Items.Add("Минимальный оклад " + brigade.minsalary);
listBox1.Items.Add("Работники с минимальным окладом " + minworkers);
listBox1.Items.Add("Максимальный оклад " + brigade.maxsalary);
listBox1.Items.Add("Работники с максимальным окладом " + maxworkes);
listBox1.Items.Add("Средний оклад " + brigade.averagesalary);
listBox1.Items.Add("Кол-во рабочих с окладом выше среднего " + averageworkerscount);
listBox1.Items.Add("-----------------");
j = j + (brigade.countworkers-1);
}
}
}Решение задачи: «Ни одна из перегрузок метода "vivod" не принимает "1" аргументов»
textual
Листинг программы
private void button1_Click(object sender, EventArgs e)
{
vivods.vivod(listBox1, Worker());
}