Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

C - Funkcje tablicy dwuwymiarowej

bloah 28 Nov 2012 03:49 1137 3
  • #1
    bloah
    Level 2  
    /*Mam napisać funkcję void TabDbl1(int t1[N][M], int n, int m), która będzie wypełniać tablicę losowymi wartościami (np. 0-50). N i M oznaczają maksymalny możliwy rozmiar tablicy. Uzytkownik ma podac swoje n i m ktore maja byc mniejsze lub rowne N i M i one beda swiadczyly o rozmiarze tabeli.
    Szukam, zmieniam i ciagle cos nowego nie tak;/ Pomoglby ktos, przy okazji brakuje tam tego srand (null) i stad pytanie czemu nie moze to byc tak jak mam w rand()?
    */
    Code: c
    Log in, to see the code


    Proszę umieszczać kod w znacznikach syntax. Opcja Listing kodu. Proszę to poprawić. [adamas_nt]
  • Helpful post
    #2
    lukash90
    Level 16  
    w pętlach używasz warunków i<k i j<l ale nie podajesz czym jest k i l. Zapewne powinny być warunki i<n oraz j<m.

    Co do funkcji srand() nie musisz jej mieć albo wpisać srand(null) ale wtedy przy każdym uruchomieniu programu otrzymasz takie same wyniki, więc słaba losowość będzie.

    Proponuję użyć tutaj: srand( (int) time(0) ) co spowoduje że przy każdym uruchomieniu programu jako podstawa do obliczeń wartości losowych będzie brany czas uruchomienia programu. Musisz tylko dołączyć jeszcze bibliotekę: #include<time.h>
    Reszta wygląda ok
  • #3
    bloah
    Level 2  
    dobra zalozmy ze poprawilem ale dalej nie wiem gdzie dokaldnie umiescic te srand itd. jak moglby ktos poprawic ten kod ukazujac jak poiwnien wygladac bylbym na prawde wdzieczny. Te lekcje sa ejszcze przede mna z tego powodu nie wiem jak to powinno byc dokladnie. No i przy " w= TabDbl1(taa,z,x);" wyskakuje mi: [Error] void value not ignored as it ought to be. Co przeszkadza mi w sprawdzaniu gdzie umiescic te srand~

    Code: c
    Log in, to see the code
  • Helpful post
    #4
    lukash90
    Level 16  
    Srand dajesz np na początku funkcji main(). Chodzi o to żeby go wywołać raz gdzieś przed wywołaniem rand(). A ten błąd ci wywala bo masz funkcje typu void a jej wynik (którego ona nie zwraca) chcesz przypisać do w. Wywal to "w =" i będzie ok