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 minima dintr-o matrice

Sa se calculeze valoarea minima dintr-o matrice oarecare de elemente reale şi sa se afişeze numărul de aparitii al acestei valori în matrice.

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 min egala cu primul element. Iteram prin liniile si coloanele matricii. Daca gasim o valoarea mai mica, aceasta devine minimul. Dupa ce am stabilit minimul, iteram inca o data si vom afisa numarul liniei si al coloanei unde se afla aceasta valoare.

using System;

namespace MinimMatrice
{
    class Program
    {
        static void Main(string[] args)
        {
            int i, j, min;
            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 minimul iterand prin liniile si coloanele matricii
            min = m[0, 0];
            for (i = 0; i < l; i++)
            {
                for (j = 0; j < c; j++)
                    if (m[i, j] < min)
                        min = m[i, j];
            }
            Console.WriteLine("Valoarea minima este {0}", min);

            Console.WriteLine("Pozitiile in care se afla valoarea minima");
            
            for (i = 0; i < l; i++)
            {
                for (j = 0; j < c; j++)
                {
                    if (m[i, j] == min)
                        Console.WriteLine("Pozitia m[{0}][{1}]", i+1, j+1);
                }
            }
            
            Console.ReadLine();
        }
    }
}
Category: c#, scoala
Tag:

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

*