Elementy tablicy się nie wyświetlają

Dyskusje na temat języka C# oraz biblioteki .NET
kamciono5
Nowicjusz
Posty: 4
Dołączył(a): środa, 12 marca 2014, 21:25

Elementy tablicy się nie wyświetlają

Post przez kamciono5 »

Witam
Chciałem się zapytać jak zrobić aby tablica, która wyświetlona jest w pętli była przyporządkowana do jakiejś zmiennej poza pętlą. To znaczy aby jakaś zmienna np. x wyświetlała elementy tablicy poza pętlą for.

Code: Zaznacz cały

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Podaj liczbe kolumn: ");
            int a = int.Parse(Console.ReadLine());
            Console.WriteLine("Podaj liczbę wierszy: ");
            int b = int.Parse(Console.ReadLine());

            int[,] tab = new int[a, b];
            Random rnd = new Random();
            
            int i = 0;
            int k = 0;

            Console.WriteLine("Wartości tablicy: ");
            for (i = 0; i < a; i++)
            {
                for (k = 0; k < b; k++)
                {
                    tab[i, k] = rnd.Next(0, 9);
                    Console.Write(tab[i,k] + " ");
                }
                
                Console.WriteLine(" ");
                
            } 
            
            Console.WriteLine(" Pierwszy element to: " + tab[0, 0]);
            Console.WriteLine(" Ostatni element to: " + tab[a - 1, b - 1]);

            
            Console.WriteLine("Wartości tablicy: "+" " + tab);
            

            Console.ReadLine();
        }
    }
Nie działa mi dokładnie tutaj nie wypisuje elementów

Code: Zaznacz cały

Console.WriteLine("Wartości tablicy: "+" " + tab);
}
Morfidon
Administrator
Administrator
Posty: 1332
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48
Contact:

Re: Elementy tablicy się nie wyświetlają

Post przez Morfidon »

tab nie wypisuje elementów, bo pod tab znajduje się wskaźnik na tablicę, a nie jej zawartość. Aby wypisać elementy tablicy tab musisz jeszcze raz wrzucić tablicę w pętle i wypisać poszczególne elementy. Nie ma domyślnego mechanizmu, który domyśla się w jaki sposób chcesz wypisać zawartość z pod tablicy.
kamciono5
Nowicjusz
Posty: 4
Dołączył(a): środa, 12 marca 2014, 21:25

Re: Elementy tablicy się nie wyświetlają

Post przez kamciono5 »

a gdybym zadeklarował listę wcześniej i dodawał przy każdym wykonaniu pętli element do listy to czy później ta lista zawierała by wszystkie elementy (znaczy poza pętlą)?
Morfidon
Administrator
Administrator
Posty: 1332
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48
Contact:

Re: Elementy tablicy się nie wyświetlają

Post przez Morfidon »

Oczywiście, że tak, ale tablica też zawiera, tylko wypisywanie elementów z tablicy wymaga napisania kolejnej pętli, albo np. własnej funkcji do wypisywania elementów, w przypadku listy sytuacja jest identyczna. Nie możesz zawartości wypisać tylko przy pomocy samej nazwy, chyba że nadpiszesz metodę toString danej klasy (np. jakiejś listy) i sprawisz, że to będzie domyślne zachowanie.
Post Reply