Matlab obliczanie pierwiastków nie mogę uruchomić

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.

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.

1

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

0

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

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):

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

1 użytkowników online, w tym zalogowanych: 0, gości: 1