Java týden Body zdarma
Využij podzimních slev a získej od nás až 40 % bodů zdarma! Více zde
Pouze tento týden sleva až 80 % na Java e-learning!

Diskuze: Potřebují pomoct s úkolem

Aktivity (1)
Avatar
Tostisto
Člen
Avatar
Tostisto:4. dubna 17:36

Dobrý den nemam vůbec nápad a ani nevim jak bych měl začit s ukolem.

Dostali jsme zadání:
Naplňte 5 polí po 5 prvcích náhodnými čisly od 10 do 19, prvky poli pak vložte do řádků matice 5x5, jednotlivá pole a matici zobrazte pomoci podprogramu.

Zkusil jsem: Skoušel jsme zatim jenom jedno pole, ale uz nevim jak dale.

Chci docílit: Snažim se udělat ukol do školy ale nevim si vůbec rady, pomoc.

 
Odpovědět 4. dubna 17:36
Avatar
Odpovídá na Tostisto
Michal Haňáček:4. dubna 18:07

Ahoj, rad pomuzu, ale rikam predem za ukol za tebe delat nebudu. S cim konkretne si tedy nevis rady? V podstate potrebujes jen

  • vytvorit pet jednorozmernych poli
  • vytvorit dvourozmerne pole
  • generovat nahodna cisla do tech peti vyse zminenych poli
  • postupne prochazet temi nagenerovanymi daty a prelevat je
  • udelat proceduru pro vypis hodnot
Nahoru Odpovědět 4. dubna 18:07
Každé rozhodnutí a každý krok v životě nás někam posune. Bohužel jen některé nás posouvají dopředu.
Avatar
Tostisto
Člen
Avatar
Odpovídá na Michal Haňáček
Tostisto:4. dubna 18:38

No konkretně se mi nedaří vytvořit 5 poli s 5 nahodnymi prvky.

 
Nahoru Odpovědět 4. dubna 18:38
Avatar
Odpovídá na Tostisto
Michal Haňáček:4. dubna 19:35

Ok :). Deklarovat promennou a priradit ji nahodnou hodnotu dokazes? Btw. na materialy ze skoly se radeji neptam, ale nerikej mi ze jsi tohle nenasel na google ...

Nahoru Odpovědět 4. dubna 19:35
Každé rozhodnutí a každý krok v životě nás někam posune. Bohužel jen některé nás posouvají dopředu.
Avatar
Tostisto
Člen
Avatar
Tostisto:4. dubna 19:50

To je hlavní problém si myslím. Deklarovat dokažu ale přířadit ji nahodnou hodnotu od 10 do 19 nevim jak udělat

 
Nahoru Odpovědět 4. dubna 19:50
Avatar
Odpovídá na Tostisto
Matúš Olejník:4. dubna 20:27

Google -> Pascal random number -> https://www.freepascal.org/…/random.html
Random(X) ti vráti číslo od 0 po X - 1. Takže Random(10) ti vráti číslo od 0 po 9 ale ty chceš od 10 po 19 tak dáš ešte plus 10, čiže ak sa ti vygeneruje 0 tak + 10 ti dá 10 a ak 9 tak + 10 ti vráti 19. Alebo všeobecne random((max - min) + 1) + min;

Takže spravíš 5 for cyklov alebo 5 priradení v jednom cykle

arr1[i] := random((19 - 10) + 1) + 10;
//atd

Potom for cyklus v ktorom naplníš tú maticu jednotlivými riadkami
A nakoniec Google -> Pascal procedures -> https://www.tutorialspoint.com/…ocedures.htm
podľa čoho spravíš nejakú procedúru v ktorej len prejdeš všetky polia a vypíšeš ich

procedure printAll();
begin
    for i := 0 to 5 do write(arr1[i], ' ');
    writeln();
    //atd
Nahoru Odpovědět 4. dubna 20:27
/* I am not sure why this works but it fixes the problem */
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Tostisto
Člen
Avatar
Tostisto:7. dubna 12:44

Takže už mam 5 poli ... ,matici.
Ale nějak mi nefunguje přiřazení do matice. Nevím jestli to dělám dobře tak prosím o radu.
Přiřazuji to příkazem : pole[1]:=mati­ce○[1,1]; V čem dělám chybu? Díky.

 
Nahoru Odpovědět 7. dubna 12:44
Avatar
Odpovídá na Tostisto
Michal Haňáček:7. dubna 15:09

Podle tohodle kodu se neda rict vubec nic ... hod sem cely zdojak, vcetne deklarace tech poli.

Nahoru Odpovědět 7. dubna 15:09
Každé rozhodnutí a každý krok v životě nás někam posune. Bohužel jen některé nás posouvají dopředu.
Avatar
Martin Petrovaj
Překladatel
Avatar
Martin Petrovaj:7. dubna 15:34

Skôr mám dojem, že Jakub si pomýlil, ako sa zapisuje priradenie :-)

kam := čo;

Podľa mňa by prvé, čo by mal vyskúšať, je prehodiť tie strany, tj. matice[1,1] := pole[1];

Nahoru Odpovědět  +2 7. dubna 15:34
if (this.motto == "") { throw new NotImplementedException(); }
Avatar
Tostisto
Člen
Avatar
Odpovídá na Martin Petrovaj
Tostisto:7. dubna 16:10

Asi to je ten problem, vyzkouším diky.

 
Nahoru Odpovědět 7. dubna 16:10
Avatar
Tostisto
Člen
Avatar
Tostisto:7. dubna 16:35

Nevim jestli to dělám dobře. Spíš asi ne, protože vy to vždy vypiše 0. V čem dělám chybu.

program ukol;
var
    pole1: array[0..4] of integer;
    pole2: array[0..4] of integer;
    pole3: array[0..4] of integer;
    pole4: array[0..4] of integer;
    pole5: array[0..4] of integer;
     matice: array[0..4,0..4] of integer;
    i: integer;
    j: integer;

begin
    randomize;
    for i := 0 to 4 do begin
        pole1[i] := random((19 - 10) + 1)+ 10;
        pole2[i] := random((19 - 10) + 1)+ 10;
        pole3[i] := random((19 - 10) + 1)+ 10;
        pole4[i] := random((19 - 10) + 1)+ 10;
        pole5[i] := random((19 - 10) + 1)+ 10;

    end;

     matice[0,0]:= pole1[0];
      matice[0,1]:= pole1[1];
       matice[0,2]:= pole1[2];
        matice[0,3]:= pole1[3];
         matice[0,4]:= pole1[4];

         //atd .......

     writeln(matice[i,j]);
    readln();
end.
 
Nahoru Odpovědět 7. dubna 16:35
Avatar
Odpovídá na Tostisto
Matúš Olejník:7. dubna 16:57
program ukol;
var
    arr1, arr2, arr3, arr4, arr5 : array[0..4] of integer;
    matrix : array[0..4, 0..4] of integer;
    i, j : integer;

begin
    randomize;

    for i := 0 to 4 do begin
        arr1[i] := random(10) + 10;
        arr2[i] := random(10) + 10;
        arr3[i] := random(10) + 10;
        arr4[i] := random(10) + 10;
        arr5[i] := random(10) + 10;
    end;

    for i := 0 to 4 do begin
        matrix[0, i] := arr1[i];
        matrix[1, i] := arr2[i];
        matrix[2, i] := arr3[i];
        matrix[3, i] := arr4[i];
        matrix[4, i] := arr5[i];
    end;

    for i := 0 to 4 do begin
        for j := 0 to 4 do begin
            write(matrix[i, j], ' ');
        end;
        writeln();
    end;

    readln();
end.
Nahoru Odpovědět 7. dubna 16:57
/* I am not sure why this works but it fixes the problem */
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 12 zpráv z 12.