.NET 4.x Определить для каждого магазина — какого числа этот магазин получил максимальный доход - C#
Формулировка задачи:
Фирма имеет три магазина. Известен доход каждого магазина за каждый из десяти дней.
Организовать ввод информации по этой таблице и определить:
1) для каждого магазина - какого числа этот магазин получил максимальный доход.
2) для каждого из 10 дней - какой магазин получил в этот день максимальный доход.
Первый пункт я сделал. Но и то он работает через раз. Нужна помощь со вторым.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ДЗ_8_9_главы
{
class Program
{
static void ShopIncome()
{
Console.WriteLine("Глава 8, задание 8.21");
Console.WriteLine("----------------------");
int i, D, k, k1, k2, max1, max2, max3, T1, T2, T3;
string st;
k = 0; k1 = 0; k2 = 0;
max1 = 0; max2 = 0; max3 = 0;
D = 10;
int[] A;
int[] B;
int[] C;
A = new int[D];
for (i = 0; i < D; i++)
{
k++;
Console.WriteLine("Введите доход первого магазина за " + k + " день");
st = Console.ReadLine();
A[i] = Convert.ToInt32(st);
if (A[i] > A[max1]) max1 = i;
T1 = A[0]; A[0] = A[max1]; A[max1] = T1;
}
Console.WriteLine("Максимальная прибыль получена на " + (max1 + 1) + " день");
Console.WriteLine("----------------------");
B = new int[D];
for (i = 0; i < D; i++)
{
k1++;
Console.WriteLine("Введите доход второго магазина за " + k1 + " день");
st = Console.ReadLine();
B[i] = Convert.ToInt32(st);
if (B[i] > B[max2]) max2 = i;
T2 = B[0]; B[0] = B[max2]; B[max2] = T2;
}
Console.WriteLine("Максимальная прибыль получена на " + (max2 + 1) + " день");
Console.WriteLine("----------------------");
C = new int[D];
for (i = 0; i < D; i++)
{
k2++;
Console.WriteLine("Введите доход третьего магазина за " + k2 + " день");
st = Console.ReadLine();
C[i] = Convert.ToInt32(st);
if (C[i] > C[max3]) max3 = i;
T3 = C[0]; C[0] = C[max3]; C[max3] = T3;
}
Console.WriteLine("Максимальная прибыль получена на " + (max3 + 1) + " день");
Console.WriteLine("----------------------");
Console.ReadLine();
}
static void Main(string[] args)
{
ShopIncome();
}
}
}Решение задачи: «.NET 4.x Определить для каждого магазина — какого числа этот магазин получил максимальный доход»
textual
Листинг программы
int [][] shop = new int [3][];
for (int i = 0; i < 3; i++)
{
Console.WriteLine("Введите доходы " + (i + 1) + "-го магазина (10 значений через запятую): ");
shop[i] = new int[10];
shop[i] = Console.ReadLine().Split(',').Select(e => Convert.ToInt32(e)).ToArray();
int max = 0;
int j = 0;
int k = 0;
for (j = 0; j < 10; j++)
{
if (shop[i][j] > max)
{
max = shop[i][j];
k = j;
}
}
Console.WriteLine("Максимальная прибыль " + (i + 1) + "-го магазина получена на " + (k + 1) + "-й день",max);
}
for (int j = 0; j < 10; j++)
{
int max1 = 0;
int i = 0;
int k = 0;
for (i = 0; i < 3; i++)
{
if (shop[i][j] > max1)
{
max1 = shop[i][j];
k = i;
}
}
Console.WriteLine("Максимальная прибыль в " + (j + 1) + "-й день у " + (k + 1) + "-го магазина");
}
Console.Read();