using System; public class HelloWorld { public static void Main(string[] args) { // Ievada vārdu un uzvārdu Console.Write("ievada vardu: "); string vards = Console.ReadLine(); Console.Write("ievada uzvardu: "); string uzvards = Console.ReadLine(); // Formatē vārdu un uzvārdu string fVards = FormatText(vards); string fUzvards = FormatText(uzvards); // Oriģinālās tabulas izmēri int originalRows = uzvards.Length + 2; int originalCols = vards.Length + 1; int[,] tabula = new int[originalRows, originalCols]; Random rand = new Random(); // Aizpilda tabulu ar random skaitļiem for (int i = 1; i < originalRows - 1; i++) { for (int j = 1; j < originalCols; j++) { tabula[i, j] = rand.Next(vards.Length, vards.Length + uzvards.Length + 1); } } // Izdrukā oriģinālo tabulu PrintTable(tabula, fVards, fUzvards, vards.Length); // Transponētās tabulas izmēri int transposedRows = vards.Length + 2; int transposedCols = uzvards.Length + 1; int[,] transposedTabula = new int[transposedRows, transposedCols]; // Aizpilda transponēto tabulu for (int x = 1; x <= vards.Length; x++) { for (int y = 1; y <= uzvards.Length; y++) { transposedTabula[x, y] = tabula[y, x]; } } // Apgriež uzvārdu un vārdu string reversedFUzvards = ReverseString(fUzvards); string reversedFVards = ReverseString(fVards); PrintTable(transposedTabula, reversedFUzvards, reversedFVards, uzvards.Length); } // Formatē tekstu (pāra - lielie burti, nepāra - mazie) static string FormatText(string text) { char[] chars = text.ToCharArray(); for (int i = 0; i < chars.Length; i++) { if (i % 2 == 0) chars[i] = char.ToUpper(chars[i]); else chars[i] = char.ToLower(chars[i]); } return new string(chars); } // Apgriež virkni static string ReverseString(string s) { char[] arr = s.ToCharArray(); Array.Reverse(arr); return new string(arr); } // Drukā tabulu ar norādītajiem parametriem static void PrintTable(int[,] table, string fVards, string fUzvards, int nameLength) { int rows = table.GetLength(0); int cols = table.GetLength(1); // Veido augšējo un vidējo līniju formatēšanai string middleLine = ""; string topLine = "*"; for (int i = 0; i < nameLength + 1; i++) { topLine += "=====*"; // Virsraksta līnija middleLine += "+-----"; // Vidējā atdalītājlīnija } topLine += "=====*=====*=====*"; // Pievieno SUM/MIN/MAX kolonnām middleLine += "*=====*=====*=====*"; // Pievieno SUM/MIN/MAX atdalītājus // Druka tabulas galveni Console.WriteLine(topLine); Console.Write("| x "); foreach (char c in fVards) Console.Write($"| {c} "); // Kolonnu virsraksti Console.WriteLine("| sum | min | max |"); Console.WriteLine(topLine); // Aizpilda datu rindas for (int i = 1; i < rows - 1; i++) { Console.Write("| "); int sum = 0; int min = int.MaxValue; int max = int.MinValue; for (int j = 0; j < cols; j++) { if (j == 0) // Pirma kolonna Console.Write($" {fUzvards[fUzvards.Length - i]} | "); else { // Datu šūnas un sum/min/max aprēķins int value = table[i, j]; sum += value; if (value < min) min = value; if (value > max) max = value; Console.Write($"{value,3} | "); } } // Izvada rindas sum, min, max Console.WriteLine($"{sum,3} | {min,3} | {max,3} |"); if (i < rows - 2) Console.WriteLine(middleLine); // Vidējā līnija starp rindām } Console.WriteLine(topLine); // SUM rindas drukāšana Console.Write("| sum |"); int totalSum = 0; for (int j = 1; j < cols; j++) { int colSum = 0; for (int i = 1; i < rows - 1; i++) colSum += table[i, j]; Console.Write($" {colSum,3} |"); totalSum += colSum; } Console.WriteLine($" {totalSum,3} | * | * |"); Console.WriteLine(topLine); // MIN rindas drukāšana Console.Write("| Min |"); int overallMin = int.MaxValue; for (int j = 1; j < cols; j++) { int colMin = int.MaxValue; for (int i = 1; i < rows - 1; i++) if (table[i, j] < colMin) colMin = table[i, j]; Console.Write($" {colMin,3} |"); if (colMin < overallMin) overallMin = colMin; } Console.WriteLine($" * | {overallMin,3} | * |"); Console.WriteLine(topLine); // MAX rindas drukāšana Console.Write("| Max |"); int overallMax = int.MinValue; for (int j = 1; j < cols; j++) { int colMax = int.MinValue; for (int i = 1; i < rows - 1; i++) if (table[i, j] > colMax) colMax = table[i, j]; Console.Write($" {colMax,3} |"); if (colMax > overallMax) overallMax = colMax; } Console.WriteLine($" * | * | {overallMax,3} |"); Console.WriteLine(topLine); } }