Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 28. 12. 2013 16:59

jannedoe
Zelenáč
Příspěvky: 3
Reputace:   
 

Pascal - Matice M na N

Zdravíčko, mohl by mi někdo poradit prosím jak pokračovat v tomto úkolu?

Zadání: Naplňte dvourozměrné pole A o n řádcích a m sloupcích náhodnými čísly a vytiskněte ve tvaru matice. Sestavte funkci, která spočítá aritmetický průměr prvků všech lichých řádků. Výsledek vytiskněte pod matici.

Prozatím jsme nějak dali dohromady toto:

program matice;
const max = 3;
var A:array [1..10,1..10] of real;
    r,s,ra:integer;
    pom:real;

begin

randomize;
for r:=1 to max do begin
for s:=1 to max do
  A[r,s]:=Random(10)+1;
end;


writeln('MATICE');
for r:=1 to max do begin
for s:=1 to max do
  write(A[r,s]:5:0);
  writeln;
  writeln;
end;

for r:=1 to max do
begin
pom:=0;

  for s:=1 to max do
   pom:=pom+A[r,s];
   A[r,max+1]:=pom/max;
  end;

writeln('Vysledna matice s prumerem na konci sloupce');
for r:=1 to max do begin
for s:=1 to max+1 do
  write(A[r,s]:5:1);
  writeln;
  writeln;
end;

readln;
end.

Takže mi tam chybí funkce, matici upravit na M na N a aby se aritmetický počítal pouze z lichých řádků. Věděl by někdo co a kde upravit? :(

Offline

  • (téma jako vyřešené označil(a) jannedoe)

#2 29. 12. 2013 17:08

Wrunx
Příspěvky: 65
Reputace:   
 

Re: Pascal - Matice M na N

Možná jsem zadání pochopil jinak, ale z věty "Výsledek vytiskněte pod matici." jsem nabyl dojmu, že by se měly vzít prvky ze všech lichých řádků a jejich průměr vypsat jako jedno číslo pod matici...?
Liché řádky se určí snadno pomocí testu indexu řádku na dělitelnost dvěma.

Offline

 

#3 29. 12. 2013 22:43 — Editoval jannedoe (29. 12. 2013 22:48)

jannedoe
Zelenáč
Příspěvky: 3
Reputace:   
 

Re: Pascal - Matice M na N

↑ Wrunx: No vidíš :( Pochopil jsi to správně, ušlo mi to :(

Poradil bys mi kdyžtak jak to napsat? a kam to tam vložit? K tomuto jsme se během výuky vůbec nedostali.

Offline

 

#4 31. 12. 2013 11:50

Wrunx
Příspěvky: 65
Reputace:   
 

Re: Pascal - Matice M na N

Zde je můj pokus, a vůbec netvrdím že by nemohl být lecjak lépe vyladěný - ale aspoń mně tady funguje.

Code:

program matice;
const n = 4; m=3; {* pocet radku a sloupcu nemusi byt stejny *}
      max=10;
var A:array [1..max,1..max] of real; {* lepsi by bylo definovat tvar 1..n, 1..m *}
    r,s,ra:integer;
    pom,psp,ap:real;

begin

randomize;

writeln('MATICE');
for r:=1 to n do begin
for s:=1 to m do begin
  A[r,s]:=Random(10)+1;
  write(A[r,s]:5:0);
end;
writeln;writeln;
end;

pom:=0; psp:=0;
for r:=1 to n do
begin
if r/2 <> int(r/2) then
 begin
  for s:=1 to m do
   begin
    pom:=pom+A[r,s];psp:=psp+1;
   end;
 end;
end;
ap:=pom/psp;

writeln('Aritm. prumer lichych radku matice je',ap:6:3);

readln;
end.

Offline

 

#5 31. 12. 2013 12:18

jannedoe
Zelenáč
Příspěvky: 3
Reputace:   
 

Re: Pascal - Matice M na N

↑ Wrunx:

To vypadá hodně dobře :) Moc moc děkuju :)

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson