Matlab obliczanie pierwiastków nie mogę uruchomić

Matlab obliczanie pierwiastków nie mogę uruchomić
P6
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Witam.
W tym programie wyskakuje mi taki błąd

??? Error: File: C:\MATLAB6p5\work\parabola.m Line: 4 Column: 9
Missing variable or function.

Kopiuj
function [x1,x2] = parabola(A,B,C)
disp('mój numer indeksu to 3456')
%A=3;,B=4;,C=5;
delta  =  B^2  -  4*A*C;                
if  delta  > 0
x1 = ( - B - sqrt(delta))/(2*A); , x2 = (-B + sqrt(delta))/(2*A);
elseif delta = = 0
x1 =- B/(2*A); , x2 = x1;
else
disp('Nie ma pierwiasków rzeczywistych')                   
end
disp('pierwszy pierwiastek:  '), disp(x1), disp('drugi pierwiastek: '), disp(x2) 

Dodam, że błąd wskakuje na poziomie function [x1,x2] = parabola(A,B,C).
Pozdrawiam.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
1

A czymże jest ta parabola? Czyżbyś nie przypadkiem ukradł tylko połowę czyjegoś rozwiązania? :D

P6
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

parabola to jest nazwa funkcji. Jest to zadanie do rozwiązania. Jak nie masz nic konkretnego do powiedzenia to się nie wypowiadaj.

xfin
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Genewa
  • Postów: 597
1

@przemas68
A nie brakuje Ci jednego end na końcu? ;)

A w ogóle to masz tam mnóstwo błędów - m.in to że jak dochodzisz do ostatniego else to x1 i x2 nie było nigdzie deklarowane.
Tutaj działający kod (sprawdzałem w octave):

Kopiuj
function [x1,x2] = parabola(A,B,C)
disp('mój numer indeksu to 3456');
%A=3;,B=4;,C=5;
delta  =  B^2 - 4*A*C;
           
if  delta  > 0
x1 = ( -B - sqrt(delta))/(2*A);
x2 = (-B + sqrt(delta))/(2*A);
disp('pierwszy pierwiastek:  '), disp(x1), disp('drugi pierwiastek: '), disp(x2)

elseif delta == 0
x1 = -B/(2*A);
x2 = x1;
disp('pierwszy pierwiastek:  '), disp(x1), disp('drugi pierwiastek: '), disp(x2)

else
disp('Nie ma pierwiasków rzeczywistych');                
end
end

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.