Produsul dintre o matrice si un vector

Configurare noua (How To)

Situatie

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.

Solutie

using System;

namespace _51
{
    class Program
    {
        static void Main(string[] args)
        {
            int i, j;

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

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

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

            Console.WriteLine("Introduceti elementele vectorului:");
            for (i = 0; i < c; i++)
            {
                Console.Write("v[{0}] = ", i+1);
                v[i] = int.Parse(Console.ReadLine());
            }

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

            Console.WriteLine("Vectorul este:");
            for (i = 0; i < c; i++)
                Console.WriteLine(v[i] + " ");

            Console.WriteLine("Produsul dintre matrice si vector:");
            //calcul produsului                              
            for (i = 0; i <  l; i++)
            {
                p[i] = 0;
                for (j = 0; j < c; j++)
                    p[i] += m[i, j] * v[j];
            }
            //afisarea produsului
            for (i = 0; i < l; i++)
                Console.WriteLine(p[i]);

            Console.ReadLine();
        }
    }
}

Tip solutie

Permanent

Voteaza

(5 din 18 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?