2013-03-07 1 views
3

Допустим, у меня есть переменная A=5, и я хочу ее вывести, но с некоторым текстом, добавленным спереди и после него. Что-то вроде этого: "There are 5 horses." (ум 5 должен быть изменяемая переменная A)Вывод текста в октавную консоль

Если я пишу: disp("There are "),disp(A),disp(" horses.") я получаю:

There are 
5 
horses. 

НО Я хочу, чтобы все в одной строке.

Как это сделать?

ответ

6

Вы можете использовать:

A = 5 
printf("There are %d horses\n", A) 

выход:

There are 5 horses 

или даже

disp(["There are ", num2str(A), " horses"]) 

или даже

disp(strcat("There are ", num2str(A), " horses")) 

, но вам придется добавить что-то, потому что октава/MATLAB не дают белое пространство в конце строки, поэтому выход:

ans = There are5 horses 
+1

Ни один из ваших примеров не является на самом деле показать, все они генерируют которые печатаются только как побочные эффекты, которые не назначаются нигде. Вот почему вы также печатаете 'ans ='. Единственный правильный ответ - использовать 'printf' (я отредактировал ваш ответ) или использовать отображение вокруг ваших других примеров) (вы должны отредактировать свой ответ для них). – carandraug

+0

Мой плохой, ты прав. Я сделал исправления, спасибо – ThiS