Matlab fórum
Cyklus For - Verzia pre tlač

+- Matlab fórum (http://matlab.sk)
+-- Fórum: Matlab (/forumdisplay.php?fid=4)
+--- Fórum: Programovanie / Programming (/forumdisplay.php?fid=5)
+--- Téma: Cyklus For (/showthread.php?tid=15)



Cyklus For - Mirec - 01-26-2013 18:57

Zdravím,
neviem si rady z naprogramovaním jedného vzorca.

SCP=1/N x ∑(i=1 po N) pre ci

Podstata je že N sa definuje na začiatku. Vo vnútri cyklu sa toľko krát zadá ci koľko je N a následne sa tie zadane hodnoty ci maju dosadiť do vzorca. Neviem ako mám deklarovať tie zadane hodnoty z pamäte aby ich vytiahlo a spočítalo. Asi na to idem zo zlej strany, neviem, budem rád za nejake rady. Vopred ďakujem


RE: Cyklus For - miseno - 01-26-2013 19:23

Kód:
N=3
pom=0
for i=1:N
    pom=pom+input(['Zadajte hodnotu c' num2str(i) ':'])
end
vysledok=pom/N



RE: Cyklus For - Mirec - 01-26-2013 22:08

Díky moc, veľmi si my pomohol.Tak také niečo ma ani nenapadlo. Stále som pracoval z nejakou bázou dát, náhodnými hodnotami, maticami a základy mi unikli.


RE: Cyklus For - Mirec - 02-06-2013 12:25

Ahojte, neviete mi poradiť? Mám cyklus ktorý sa opakuje tolkokrát koľko sa zadá na začiatku. Každý výpočet sa mi má uložiť ako P1, P2, P3...Pn. Ja chcem vytvoriť podmienky, že ak dane P má hodnotu medzi tým a tým, tak nech sa uloží do premennej a ak nemá tak do premennej b. Pčka v danej premennej (a, b) sa sčítavajú. No ale neviem nájisť ako vytvoriť ten algoritmus, aby skontrolovalo dane P a prepísalo ho do danej premennej. Keďže počet tých P sa mi mení podľa toho koľko ich zadám. Ide o príklad kde sa násobý matica z vektorom. Vektor je daný, matica je umocňovaná podľa počtu n. Vopred dík, ak mi niekto vie pomôcť, poradiť.


n=input('Zadaj pocet hodnot n: ');
alfa=input('Zadaj alfa: ');
mi=input('Zadaj mi: ');

pjk=[1-3*alfa 3*alfa 0 0; mi/3 1-(2*alfa)-(mi/3) 2*alfa 0;
0 (2*mi)/3 1-alfa-((2*mi)/3) alfa; 0 0 mi 1-mi]
Pj0=[1, 0, 0, 0]

for i=1:n
Pk=Pj0*pjk^i
end


RE: Cyklus For - Martin Foltin - 02-07-2013 08:37

P si sprav ako vektor a budeš mať P(1), P(2) ... P(n).