automatyczne wypełnianie zerami i przekątna z jedynek

0

Jak to zrobić?
Zadeklarować tablicę dwuwymiarową o rozmiarze 10x10. Wypełnić automatycznie zerami, a na przekątnej (od prawego górnego rogu do lewego dolnego/ od lewego górnego rogu do prawego dolnego) ustawić wartość 1. Wyświetlić w postaci macierzy na ekranie.
Wymyśliłam coś takiego ale nadal jest źle:

int[,] tablica = new int[10,10];

for(int i=0; i<10; i++)
{
   for(int j=0; j<10; j++)
   {  
	  if(i==j)
	  {
		 tablica[i,j]=1;
	  }
   }
}

1

Proszę:

 class Program
    {
        static void Main(string[] args)
        {
            int[,] tablica = new int[10,10];

            for (int i = 0; i < 10; i++)
            {                
                for (int j = 0; j < 10; j++)
                {
                    if (j+i == 9)
                    {
                        tablica[i, j] = 1;
                    }
                }
            }

            for (int i = 0; i < 10; i++)
            {
                for (int j = 0; j < 10; j++)
                {
                    
                    if (j%9==0 && j!=0 )
                    {
                        Console.WriteLine(tablica[i, j].ToString() + "");
                    }
                    else
                    {
                        Console.Write(tablica[i, j].ToString() + " ");
                    }
                    
                }
            }
            Console.WriteLine();
        }
    }
0

Bardzo dziękuję za pomoc :) mam tylko pytanko co oznacza ten warunek, bo nie znam takich znaków:

if (j%9==0 && j!=0 )
0

jeżeli(reszta z dzielenia 'j' przez 9 jest rówa 0 i 'j' jest różne od 0 )

0

a jak zrobić to w drugą stronę? od lewego górnego rogu do prawego dolnego

1
 class Program
    {
        static void Main(string[] args)
        {
            int[,] tablica = new int[10,10];

            for (int i = 0; i < 10; i++)
            {                
                for (int j = 0; j < 10; j++)
                {
                    if (j==i )
                    {
                        tablica[i, j] = 1;
                    }
                }
            }

            for (int i = 0; i < 10; i++)
            {
                for (int j = 0; j < 10; j++)
                {
                    
                    if (j%9==0 && j!=0 )
                    {
                        Console.WriteLine(tablica[i, j].ToString() + "");
                    }
                    else
                    {
                        Console.Write(tablica[i, j].ToString() + " ");
                    }
                    
                }
            }
            Console.WriteLine();
        }
    }
0

bardzo dziękuję :)

0

tak analizuje to i myślę, z skoro i tak wyświetlamy :

Console.Write(tablica[i, j].ToString() + " ");

to po co ten warunek

1

ponieważ gdy spełniony jest warunek to wyświetlasz od nowej lini czyli Console.WriteLine() a gdy nie to tylko Console.Write()

0

aa teraz rozumiem :)

0

Z czystej ciekawości, jak rozumieć zdanie "Wypełnić automatycznie zerami"?
Zachodzi alternatywa

  • zadeklarowana tablica ma "automatycznie" zera, zatem w ogóle nie trzeba jej wypełniać,
  • zadeklarowana tablica zawiera śmieci, wtedy trzeba te zera wpisać w (zagnieżdżonej) pętli, ale to nie jest wypełnienie automatyczne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1