Vinnaren i pepparkakshustävlingen!
2010-11-26, 21:35
  #1
Medlem
Hej, jag har precis börjat använda MATLAB och behöver lite hjälp med ett problem.
Jag vill skriva ett program som med hjälp av 2 for-slingor skriver ut alla möjliga kombinationer av tipstecken i 2 tipsmatcher. Jag vill alltså att programet ska skriva ut följande:

Rad 1: 1 1
Rad 2: 1 X
Rad 3: 1 2
Rad 4: X 1
Rad 5: X X
Rad 6: X 2
Rad 7: 2 1
Rad 8: 2 X
Rad 9: 2 2

Hur ska jag gå till väga?
Citera
2010-11-26, 21:51
  #2
Medlem
Mr Mojo Risin's avatar
Kod:
resultat = ('1X2');
rad = 1;

for m1 = 1:3
    for m2 = 1:3
        disp(['Rad ', num2str(rad), ': ', resultat(m1), ' ', resultat(m2)])
        rad = rad+1;
    end
end
Citera
2010-11-28, 16:31
  #3
Medlem
Tack, äntligen fungerade det!
Citera
2010-11-28, 16:58
  #4
Medlem
Håller på och skriver ett skript som ska bli Newton-Raphsons metod, men får det inte riktigt att fungera med for-slingan och indexeringen.

Jag har definierat funktionen f o.s.v. och resten av skriptet ser ut som följer, där fp är derivatan av f.

fp=(f(x+h)-f(x-h))/(2*h);
x(1)=1;
for i=(2:n);
x(i)=x(i-1)-(f(x-1)/fp(i-1));
end
disp(x(n))

Alltså, jag får det inte att fungera med derivatans definition, med syms är det enkelt, men i detta fall vet jag inte hur jag ska gå vidare.. får bara upp skit nu. någon vänlig?
__________________
Senast redigerad av chris69 2010-11-28 kl. 17:27.
Citera
2010-11-28, 19:31
  #5
Medlem
Mr Mojo Risin's avatar
Citat:
Ursprungligen postat av chris69
...
fp=(f(x+h)-f(x-h))/(2*h);
x(1)=1;
for i=(2:n);
x(i)=x(i-1)-(f(x-1)/fp(i-1));
end
disp(x(n))
...
Bold: Du har inte angett index för x. Nu tar din 'f(x-1)' hela vektorn x (minus ett) som argument och så skall det ju inte vara. Vill du göra Newton-Raphson, skall du byta ut f(x-1) mot f(x(i-1)).
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback