1. Визначити у матриці М(3*6):
а) найменший елемент;
б) найбільший елемент;
в) суму елементів рядка, в якому розташований елемент з найменшим значенням;
г) суми найбільших значень елементів кожного її рядка;
д) переставити місцями рядки масиву, що містять елемент з найменшим значенням із рядком, в якому міститься елемент з найбільшим значенням.
//матриця М(3*6)
int[,] a = new int[3, 6] { { 12, 10, 15, 9,7,16 }, { 17,12,8,10,4,14 }, { 10,12,3,5,9,6 } };
Console.WriteLine("Дано масив А: ");
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 6; j++) Console.Write("{0,5}", a[i, j]);
Console.WriteLine();
}
Console.WriteLine();
//найменший елемент;
int min = 100;
int m = -1;
int n = -1;
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 6; j++)
{
if (a[i, j] < min)
{
min = a[i, j];
m = i;
n = j;
}}}
Console.WriteLine("найменший елемент A[{0},{1}]={2}",m,n,min);
Console.WriteLine();
//найбільший елемент;
int max = -100;
int m1 = -1;
int n1 = -1;
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 6; j++)
{
if (a[i, j] >max)
{
max = a[i, j];
m1 = i;
n1 = j;
}}}
Console.WriteLine("найбiльший елемент A[{0},{1}]={2}", m1, n1, max);
Console.WriteLine();
// суму елементів рядка, в якому розташований елемент з найменшим значенням;
// це рядок m
int s=0;
for (int j = 0; j < 6; j++) s = s + a[m,j];
Console.WriteLine("cумa елементiв рядка {0}, в якому розташований елемент ", m);
Console.WriteLine("з найменшим значенням {1}: s={2}", m, min, s);
Console.WriteLine();
// суми найбільших значень елементів кожного її рядка
int sr = 0;
for (int i = 0; i < 3; i++)
{
int maxr = -100;
{
for (int j = 0; j < 6; j++)
{
if (a[i, j] > maxr) maxr = a[i, j];
}
sr = sr + maxr;
}}
Console.WriteLine("сумa S найбiльших значень елементiв кожного рядка: "+sr);
Console.WriteLine();
// переставити місцями рядки масиву, що містять елемент з найменшим значенням із рядком,
//в якому міститься елемент з найбільшим значенням
// це рядки m i m1
int p = 0;
for (int j = 0; j < 6; j++)
{
p = a[m, j];
a[m, j] = a[m1, j];
a[m1, j] = p;
}
Console.WriteLine("Змiнений перестановками масив А: ");
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 6; j++) Console.Write("{0,5}", a[i, j]);
Console.WriteLine();
}
Console.WriteLine();
}}}
2. Елемент масиву називається «особливим», якщо він більший за суму інших елементів свого стовпчика.
Визначити «особливі» елементи масиву
//матриця М(3*5)
int[,] a = new int[3, 5] { { 35, 10, 5, 9,7}, { 7,12,8,45,4}, { 10,38,3,5,9} };
Console.WriteLine("Дано масив А: ");
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 5; j++) Console.Write("{0,5}", a[i, j]);
Console.WriteLine();
}
Console.WriteLine();
// вияснимо, який елемент більший за суму інших елементів свого стовпчика
int m = -1;
int n = -1;
for (int j = 0; j < 5; j++)
{
int s = 0;
for (int i = 0; i < 3; i++)
{
s = s + a[i, j];
}
for (int i = 0; i < 3; i++)
{
if (a[i, j] > (s - a[i, j]))
{
m = i;
n = j;
Console.WriteLine("бiльший за суму решти елементiв стовпця елемент A[{0},{1}]={2}", m, n, a[m, n]);
}}}
Console.WriteLine();
}}}
3. Дано масив А[1..5] та масив В[1..7]. Створити масив С, у який спочатку ввійдуть елементи масиву А , а потім елементи масиві В.
int n = 5, m = 7;
int[] a = new int[n];
int[] b = new int[m];
int[] c = new int[n+m];
Random rand = new Random();
for (int i=0; i<n;i++)
{
a[i] = rand.Next(2, 25);
listBox1.Items.Add((i+1).ToString()+" "+a[i].ToString());
}
for (int i = 0; i < m; i++)
{
b[i] = rand.Next(2, 25);
listBox2.Items.Add((i + 1).ToString() + " " + b[i].ToString());
}
int k=0;
for (int i = 0; i < n; i++)
{
c[k] = a[i];
k++;
}
for (int i=0; i<m;i++)
{
c[k] = b[i];
k++;
}
for (int i = 0; i < k; i++)
{
listBox3.Items.Add((i + 1).ToString() + " " + c[i].ToString());
}
4. Дано масиви А[1..5 та В[1..7]. Створити масив С, у який ввiйдуть спочатку додатнi елементи масиву А, а потiм вiдємнi елементи масиву В.
int n = 5, m = 7;
int[] a = new int[n];
int[] b = new int[m];
int[] c = new int[n+m];
Random rand = new Random();
for (int i=0; i<n;i++)
{
a[i] = rand.Next(-10, 10);
listBox1.Items.Add((i+1).ToString()+" "+a[i].ToString());
}
for (int i = 0; i < m; i++)
{
b[i] = rand.Next(-10, 10);
listBox2.Items.Add((i + 1).ToString() + " " + b[i].ToString());
}
int k=0;
for (int i = 0; i < n; i++)
{
if (a[i] > 0)
{
c[k] = a[i];
k++;
}
}
for (int i=0; i<m;i++)
{
if (b[i] < 0)
{
c[k] = b[i];
k++;
}
}
for (int i = 0; i < k; i++)
{
listBox3.Items.Add((i + 1).ToString() + " " + c[i].ToString());
}