using System;
class MainClass {
static void Main() {
Random r = new Random();
// Для торговых компаний, выяснить, кто приносит убытки и выдать информацию о том,
// какую компанию рекомендуется закрыть по итгам финансового года
double[,] income;
const int months = 12;
const int firms = 6;
income = new double[months, firms];
for (int m = 0; m < months; m++)
{
for (int f = 0; f < firms; f++)
{
// Console.Write("{0:000.00}\t", (income[m, f] = r.NextDouble() * 2000 - 1000));
income.SetValue(r.NextDouble() * 2000 - 1000, m, f);
Console.Write("{0:000.00}\t", income[m, f]);
}
Console.WriteLine();
}
double[] monthIncome = new double[months];
double[] firmIncome = new double[firms];
for (int m = 0; m < months; m++)
for (int f = 0; f < firms; f++)
monthIncome[m] += income[m, f];
for (int f = 0; f < firms; f++)
for (int m = 0; m < months; m++)
firmIncome[f] += income[m, f];
Console.WriteLine("\n\nMonth by firms");
foreach (var item in monthIncome)
Console.Write("{0:000.00}\t", item/firms);
Console.WriteLine("\n\nFirms by month");
foreach (var item in firmIncome)
Console.Write("{0:000.00}\t", item/months);
int[] negativesNumber = new int[firms];
for (int f = 0; f < firms; f++)
for (int m = 0; m < months; m++)
negativesNumber[f] += (income[m, f]<0?1:0);
//negativesNumber[f] = negativesNumber[f] + (income[m, f]<0?1:0);
Console.WriteLine("\n\nNegative months: ");
foreach (var item in negativesNumber)
Console.Write("{0}\t", item);
Console.WriteLine();
int n = 0;
foreach (var item in negativesNumber)
{
if (item > 6)
Console.WriteLine("Закрываем компанию с номером: {0}", n);
n++;
}
// Узнать кол-во оценок 2, 3, 4, 5 для каждого ученика класса
int[,] marks;
const int pupils = 12;
const int subjects = 6;
marks = new int[pupils, subjects];
for (int m = 0; m < pupils; m++)
{
for (int f = 0; f < subjects; f++)
{
// Console.Write("{0:000.00}\t", (income[m, f] = r.NextDouble() * 2000 - 1000));
marks.SetValue(2 + r.Next() % 4, m, f);
Console.Write("{0}\t", marks[m, f]);
}
Console.WriteLine();
}
const int marksRange = 4; // количество различных оценок
int[,] marksNumber = new int[pupils, marksRange];
for (int p = 0; p < pupils; p++)
for (int s = 0; s < subjects; s++)
marksNumber[p, (marks[p, s] - 2)]++;
for (int p = 0; p < pupils; p++)
{
for (int s = 0; s < marksRange; s++)
Console.Write("{0}\t", marksNumber[p, s]);
Console.WriteLine();
}
}
}