Risipa de key_press | Programare

Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Risipa de key_press | Programare - Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Valoarea maxima dintr-o matrice

Sa se calculeze valoarea maxima dintr-o matrice oarecare de elemente reale şi sa se afişeze toate pozitiile din matrice unde se gaseste aceasta.

Analiza Programului

Conform definitiei, o matrice este reprezentata de un tablou (vector) cu m linii si n coloane, ale carui elemente pot fi reprezentate de numere complexe.
Un vector poate avea mai mult de o dimensiune. De exemplu, declararea unui vector int[,] m = new int[m,n] inseamna crearea unui vector cu m linii si n coloane.
Stabilim valoarea pentru variabila max egala cu primul element. Iteram prin liniile si coloanele matricii. Daca gasim o valoarea mai mare, aceasta devine maximul. Dupa ce am stabilit maximul, iteram inca o data si vom afisa numarul liniei si al coloane unde se afla aceasta valoare.

using System;

namespace MaximMatrice
{
    class Program
    {
        static void Main(string[] args)
        {
            int i, j, max;
            Console.WriteLine("Introduceti numarul de linii:");
            int l = int.Parse(Console.ReadLine());

            Console.WriteLine("Introduceti numarul de coloane:");
            int c = int.Parse(Console.ReadLine());

            int[,] m = new int[l, c];

            Console.WriteLine("Introduceti elementele matricii:");
            for (i = 0; i < l; i++)
            {
                for (j = 0; j < c; j++)
                {
                    Console.Write("A[{0}][{1}]=", i, j);
                    m[i, j] = int.Parse(Console.ReadLine());
                }
            }

            Console.WriteLine("Matricea are elementele:");
            for (i = 0; i < l; i++)
            {
                for (j = 0; j < c; j++)
                    Console.Write(m[i, j] + " ");
                Console.WriteLine();
            }

            //cauta maximul iterand prin liniile si coloanele matricii
            max = m[0, 0];
            for (i = 0; i < l; i++)
            {
                for (j = 0; j < c; j++)
                    if (m[i, j] > max)
                        max = m[i, j];
            }
            Console.WriteLine("Maximul este {0}", max);

            Console.WriteLine("Pozitiile in care se afla maximul");
            
            for (i = 0; i < l; i++)
            {
                for (j = 0; j < c; j++)
                {
                    if (m[i, j] == max)
                        Console.WriteLine("Pozitia m[{0}][{1}]", i+1, j+1);
                }
            }
            
            Console.ReadLine();
        }
    }
}
Category: Uncategorized

Your email address will not be published. Required fields are marked *

*