Синтаксическая ошибка Scilab: неожиданная конечная функция, ожидающая завершение - PullRequest
0 голосов
/ 26 марта 2019

Я новичок в scilab, и написание простой функции приводит к синтаксической ошибке, которая мне совсем не помогает.

syntax error: unexpected endfunction, expecting end

Кто-то может указать мне на ошибку, мне кажется, все в порядке.

Я сохраняю с расширением .sci.

function y = bin2SignDec(bin)
    // Determines the signal of the binary number
    if part(bin, 1:1) == '0' then
        signal = 1;
    else
        signal = -1;

    // remove the signal bit from the string
    uBin = part(bin, 2:length(bin));

    // find the position of the decimal point and split the value in two variables
    pointIndex = strindex(uBin, '.');
    integerStr  = part(uBin, 1:(pointIndex-1));
    fractionStr = part(uBin, (pointIndex+1):length(uBin));

    // convert integer part to decimal
    integer = bin2dec(integerStr);

    // convert fraction part to integer
    fraction = 0;
    for i = 1:length(fractionStr)
        fraction = fraction + strtod(part(fractionStr, i:i)) * 2^(-i);
    end

    // return
    y = integer + fraction;

endfunction

1 Ответ

1 голос
/ 26 марта 2019

end отсутствует после конструкции if then else.

...