Запретить взаимодействие с пользователем в командном окне для октавы

Когда я запускаю код ниже октавы, отображается окно командной строки:

>> first
x =

    10
    20
    30
    40
    50
    60
    70
    80
    90
   100

y =

   14
   17
   18
   14
   15
   14
   13
   12
   11
    4

m =  10
x =

     1    10
     1    20
     1    30
     1    40
     1    50
     1    60
     1    70
     1    80
     1    90
     1   100

-- less -- (f)orward, (b)ack, (q)uit

Мне необходимо постоянно нажимать (f), чтобы завершить программу и просмотреть сюжет: plot(x(:,2), x*theta, '-');

Октавный код:

x = [10
    20
    30
    40
    50
    60
    70
    80
    90
    100]
y = [14
    17
    18
    14
    15
    14
    13
    12
    11
    4]

m = length(y)

x = [ones(m , 1) , x]

theta = zeros(2, 1);        

iterations = 10;
alpha = 0.000007;

for iter = 1:iterations
     theta = theta - ((1/m) * ((x * theta) - y)' * x)' * alpha;
     #theta
end

#plot(x, y, 'o');
#ylabel('Response Time')
#xlabel('Time since 0')
plot(x(:,2), x*theta, '-');

Как предотвратить взаимодействие пользователя с командным окном, чтобы программа запускалась до конца и отображала подсказку и не требовала взаимодействия с пользователем?

1 ответ

Решение

Чтобы вообще не печатать ваши переменные, просто добавьте точку с запятой в конец каждого присваивания переменной:

m = length(y)   %// **will** print to the console
m = length(y);  %// will *not* print to the console

Чтобы вывести ваши переменные на консоль, но избегайте, чтобы Octave приостанавливал вывод, когда он попадает в нижнюю часть экрана, добавьте more off в начале вашего скрипта, чтобы отключить подкачку.

https://www.gnu.org/software/octave/doc/interpreter/Paging-Screen-Output.html

Тип more on чтобы включить его снова.

Другие вопросы по тегам