Cum citim o matrice de la tastatura si cum afisam suma elementelor ei? C#

Cum citim o matrice de la tastatura si cum afisam suma elementelor ei? C#
Exemplu:

1 1 1
1 1 1
1 1 1

Afiseaza:

9 

Aici e o incercare de-a mea, dar ceva nu e ok. Imi afiseaza 390, ar trebui sa afiseze 9.

using System;
class Program
{
    static void Main()
    {
        int[,] num = new int[3,3];
        int sum = 0;
        for (int i = 0; i < 3; i++)
        {
            for (int j = 0; j < 3; j++)
            {
               num[i, j] = Convert.ToInt32(Console.Read());
                sum += num[i, j];

            }
            Console.ReadLine();
        }
        Console.WriteLine(sum);
    }
}

cand scrii la consola 1 1 1 si dai Enter iti returneaza codurile ASCII respective
1 este ‘49’
spati este ‘32’

Convert.ToInt32 ti le transforma in int-uri si tu le aduni asa cum sunt:

Astea adunate dau 130 daca inmultesti cu 3 obtii 390.
image

Acest Console.ReadLine nu are ce sa caute, ca tu dupa ce termini de citit matricea, o sa mai citesti o linie goala si ve primii o exceptie
image

using System;

int[,] num = new int[3, 3];
int sum = 0;
for (int i = 0; i < 3; i++)
{
    var line = Console.ReadLine();
    var element = line.Split(' '); // separatorul este spatiu
    for (int j = 0; j < 3; j++)
    {
        num[i, j] = int.Parse(element[j]);//Convert.ToInt32(Console.ReadLine());
        //Console.WriteLine(num[i, j]);
        sum += num[i, j];
    }

    //Console.ReadLine();
}
Console.WriteLine(sum);

si rezultatul este 9 :slight_smile:
image

3 Likes

Multumesc!

1 Like