Как вывести значение переменной матлаб

Консольный ввод – вывод.

Дата добавления: 2015-06-12 ; просмотров: 5308 ; Нарушение авторских прав

Лабораторная работа №5

Ввод – вывод в системе Matlab.

Консольный ввод – вывод.

Для обеспечения взаимодействия с пользователем в процессе выполнения М-файлов в Matlab используются следующие команды (операторы).

disp – вывод значений указанной переменой или указанного текста в командное окно.

Особенность этой команды является то, что аргумент у нее может быть только один. Поэтому, без специальных приемов невозможно осуществить вывод нескольких переменных, и, в особенности, объединение текста с числовыми значениями, что часто является необходимым и удобным.

Чтобы вывести значения нескольких переменных, например, для печати таблиц, нужно создать единый объект, который содержал бы все эти значения. Это можно сделать, объединением соответствующих переменных в единый вектор, пользуясь операцией создания вектора-строки:

disp ( [x1, x2…xN]).

Аналогично можно объединить несколько текстовых переменных:

disp ([‘столбец 1’, ‘столбец 2’… ‘столбец N’])

Сложнее объединить в одну строку текст и значения переменных, это часто бывает необходимым. Трудности возникают потому, что нельзя объединять текстовые и числовые переменные. Задача решается с помощью функции num2str, которая осуществляет такое преобразование.

ОператорS=num2str(x) преобразует числовое значение переменной в текстовое представление.

Пусть х – числовая переменная. Тогда вывод ее значения с поясняющим текстом обеспечивается вызовом нижеследующим вызовом функции disp:

disp ([‘текст пояснения’, num2str (x)])

Например, если х=0,5, то в результате вызова

disp ([‘значение х: ’, num2str (x)])

значение х: 0,5.

Другой способ достижения этого же результата заключается в использование функции sprintf.

Обращение к ней имеет вид:

S=sprintf (‘текст 1 % frm текст 2’, х)

В результате создается текстовая строка S, состоящая из текста, указанного в тексте1, и значения переменной х в формате frm. Текст из фрагмента ‘текст 2’ размещается после значения переменной х. Эту функцию можно использовать в вызове disp:

>>disp (sprintf (‘текст 1 % frm’, х)).

В нижеследующей таблице приведены спецификаторы формата, используемые в функции sprintf:

Спецификатор Описание
Один символ
%d Десятичное число со знаком
%e Представление с плавающей точкой, 3.14е+00
%E Представление с плавающей точкой, 3.14Е+00
%f Представление с фиксированной точкой
%g Более компактное, чем в %е или %f представление с подавлением незначащих нулей.
%G То же, что %g, но Е – на верхнем регистре
%o Восьмеричное представление (без знака)
%s Символьная строка
%u Десятичное без знака
%x Шестнадцатеричное представление, (буква a-f)
%X Шестнадцатеричное представление, (буква A-F)

>>Y = sprint (‘Параметр_1 = % g’, X)

Y = параметр_1 = 1е-15

Удобным инструментом выбора некоторой из альтернатив является функция menu, которая создает окно меню пользователя. Функция имеет следующий формат:

К = menu(‘’, ‘Альтернатива_1’, ‘Альтернатива_2’… ‘Альтернатива_N’)

Пример: в результате вызова функции menuс параметрами, как это показано ниже,

К = menu (‘What?’, ‘Go’, ‘Exit’);

на экране появится следующие меню:

Выполнение программы приостанавливается, программа ожидает выбора одной из кнопок с альтернативами. После нажатия какой – либо кнопки выходному параметру присваивается значение номера выбранной альтернативы. Альтернативы нумеруются числами от 1 до N. В зависимости от значения K можно выбрать нужное продолжение программы.

Для ввода данных с клавиатуры удобно использовать функцию input, обращение к которой имеет следующий вид:

x = input (‘текст-подсказка’)

При обращении к этой функции программа приостанавливается, и ожидает ввода с клавиатуры. После ввода введенное значение присваивается переменной x и программа продолжит свою работу.

Пример script – файла, использующего рассмотренные выше вызовы:

x = input (‘Enter x:’);

В результате выполнения этого script – файла в командном окне будет следующее:

При выполнении данного файла в меню была два раза выбрана кнопка «Go», что привело к тому, функция sin была вычислена два раза, и два раза напечатан результат вычисления. В третий раз была выбрана кнопка «Exit», и script – файл завершил выполнение.

Не нашли то, что искали? Google вам в помощь!

Источник

Документация

Отобразите значение переменной

Синтаксис

Описание

disp( X ) отображает значение переменной X не распечатывая имя переменной. Другой способ отобразить переменную состоит в том, чтобы ввести свое имя, которое отображает ведущий “ X = ” перед значением.

Если переменная содержит пустой массив, disp возвращается, ничего не отображая.

Примеры

Отображение значений переменных

Создайте переменную с числами и другую переменную с текстом.

Отобразите значение каждой переменной.

Матрица отображения с метками столбца

Отобразите матрицу и пометьте столбцы как Corn , Oats , и Hay .

Отображение гиперссылки в командном окне

Отобразите ссылку на веб-страницу включением кода гиперссылки HTML, как введено к disp . Например, отобразите ссылку на MathWorks ® Веб-сайт.

Отображение нескольких переменных на той же строке

Вот три способа отобразить несколько значений переменных на той же линии в Командном окне.

Конкатенация нескольких векторов символов вместе с помощью [] оператор. Преобразуйте любые числовые значения в символы с помощью num2str функция. Используйте disp отобразить результат.

Используйте sprintf создать текст, и затем отобразить его с disp .

Используйте fprintf непосредственно отобразить текст, не создавая переменную. Однако, чтобы отключить отображение правильно, необходимо закончить текст новой строкой ( \n ) метасимвол.

Входные параметры

X — Входной массив
массив

Чтобы отобразить больше чем один массив, можно использовать конкатенацию или sprintf или fprintf функции как показано в примере, Отображение Несколько Переменных на Той же Линии.

Расширенные возможности

Основанная на потоке среда
Запустите код в фоновом режиме с помощью MATLAB® backgroundPool или ускорьте код с Parallel Computing Toolbox™ ThreadPool .

Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.

Смотрите также

Открытый пример

У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?

Документация MATLAB

Поддержка

© 1994-2021 The MathWorks, Inc.

1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.

2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.

3. Сохраняйте структуру оригинального текста — например, не разбивайте одно предложение на два.

4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.

5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.

Источник

Вывод текста и переменной

Здравствуйте!
Не могу придумать, как можно вывести текст и переменную сразу. Нужно, чтобы матлаб отображал «a+A(i,j)», где а — простая буква, текст, в то время как А(i,j) может быть каким угодно числом.
Для начала я пытался просто отобразить текст и число, но вместо числа получается пустой квадратик.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Вывод данных из текста и переменной
Объясните пожалуйста человеку как осуществить вывод данных состоящий из текста и переменной.

Вывод текста + значения переменной
Не могу вывести текст и значение переменной int cout 4

Решение

Решение

>> «если нужно целое число, то вместо %.2f пишем %d»

А если нужна дробь? Просто прежние вычисления представлены в формате «format rat», и если выводить те же значения, но в другом формате, то визуально это очень путает.

FASM вывод текста в консоль из локальной переменной
Доброго дня. Хотелось бы для себя понять возможно ли в принципе вывести текст из локальной.

Поиск текста из Edit в переменной и вывод найденного в Memo
Всем привет. Прошу помощи так как сам разобратся не могу уже целый день. (Только еще начинаю.

Вывод текста, запрет растягивания окна, окно ввода текста
Здравствуйте. Заранее извиняюсь за создание очередной темы, но решения в поиске я не нашел. Я.

Ввод текста в Мемо1 и вывод текста в Мемо2 по возрастанию слов
Здравствуйте! Пользователь вводит текст в Мемо1, по нажатию кнопки текст должен выйти в Мемо2.

Источник

MATLAB — Вывод данных

Экспорт данных (или вывод) в MATLAB означает запись в файлы. MATLAB позволяет вам использовать ваши данные в другом приложении, которое читает файлы ASCII. Для этого MATLAB предоставляет несколько вариантов экспорта данных.

Вы можете создать следующий тип файлов —

Прямоугольный файл данных ASCII с разделителями из массива.

Дневник (или журнал) файла нажатий клавиш и результирующего текстового вывода.

Специализированный файл ASCII с использованием низкоуровневых функций, таких как fprintf.

MEX-файл для доступа к вашей подпрограмме C / C ++ или Fortran, которая записывает в определенный формат текстового файла.

Прямоугольный файл данных ASCII с разделителями из массива.

Дневник (или журнал) файла нажатий клавиш и результирующего текстового вывода.

Специализированный файл ASCII с использованием низкоуровневых функций, таких как fprintf.

MEX-файл для доступа к вашей подпрограмме C / C ++ или Fortran, которая записывает в определенный формат текстового файла.

Помимо этого, вы также можете экспортировать данные в электронные таблицы.

Существует два способа экспорта числового массива в виде файла данных с разделителями ASCII:

Использование функции сохранения и указание спецификатора -ascii

Использование функции dlmwrite

Использование функции сохранения и указание спецификатора -ascii

Использование функции dlmwrite

Синтаксис для использования функции сохранения —

где my_data.out — созданный файл данных ASCII с разделителями, num_array — числовой массив, а -ascii — спецификатор.

Синтаксис использования функции dlmwrite

где my_data.out — созданный файл данных ASCII с разделителями, num_array — числовой массив, а dlm_char — символ разделителя.

пример

Следующий пример демонстрирует концепцию. Создайте файл сценария и введите следующий код —

Когда вы запускаете файл, он показывает следующий результат —

Обратите внимание, что команда save -ascii и функция dlmwrite не работают с массивами ячеек в качестве входных данных. Чтобы создать файл ASCII с разделителями из содержимого массива ячеек, вы можете

Либо преобразуйте массив ячеек в матрицу, используя функцию cell2mat

Или экспортируйте массив ячеек, используя низкоуровневые функции файлового ввода-вывода.

Либо преобразуйте массив ячеек в матрицу, используя функцию cell2mat

Или экспортируйте массив ячеек, используя низкоуровневые функции файлового ввода-вывода.

Если вы используете функцию сохранения для записи массива символов в файл ASCII, он записывает в файл эквивалент символов ASCII.

Например, давайте напишем слово «привет» в файл —

MATLAB выполняет вышеуказанные операторы и отображает следующий результат. это символы строки ‘hello’ в 8-значном формате ASCII.

Запись в дневник

Дневниковые файлы — это журналы активности вашего сеанса MATLAB. Функция дневника создает точную копию вашей сессии в файле на диске, исключая графику.

Чтобы включить функцию дневника, введите —

При желании вы можете дать имя файла журнала, скажем —

Чтобы отключить функцию дневника —

Вы можете открыть файл дневника в текстовом редакторе.

Экспорт данных в текстовые файлы данных с низкоуровневым вводом / выводом

До сих пор мы экспортировали числовые массивы. Однако вам может потребоваться создать другие текстовые файлы, включая комбинации числовых и символьных данных, непрямоугольные выходные файлы или файлы со схемами кодирования, отличными от ASCII. Для этих целей MATLAB предоставляет низкоуровневую функцию fprintf .

Как и в низкоуровневых операциях с файлами ввода-вывода, перед экспортом необходимо открыть или создать файл с помощью функции fopen и получить идентификатор файла. По умолчанию fopen открывает файл только для чтения. Вы должны указать разрешение на запись или добавление, например, «w» или «a».

После обработки файла его необходимо закрыть с помощью функции fclose (fid) .

Следующий пример демонстрирует концепцию —

пример

Создайте файл сценария и введите в нем следующий код —

Когда вы запускаете файл, он показывает следующий результат —

Источник

Русские Блоги

Краткое введение в синтаксис функций print, fprintf, scanf и disp в Matlab

print:

Функция печати может сохранить график функции в виде изображения:

  1. minbnd = -4*pi;
  2. maxbnd = 4*pi;
  3. t = minbnd:0.1*pi:maxbnd;
  4. plot(t, sin(t), ‘g’, ‘Linewidth’, 2);
  5. line ([minbnd, maxbnd], [0, 0]);% рисовать ось x
  6. axis ([- 10, 10, -2, 2])% определяет отображаемый интервал координат: x находится между (-10, 10), y находится между (-2, 2)
  7. grid on;
  8. title(‘sin(x)’);
  9. xlabel(‘x’);
  10. ylabel(‘sin(x)’);
  11. print (‘- dpng’, ‘sin.png’);% сохранить как изображение png, в текущем рабочем каталоге Matlab

Откройте текущий рабочий каталог Matlab, и вы увидите изображение sin.png

print (‘- dpng’, ‘sin.png’) означает сохранение в формате png, имя файла — sin.png, а первым параметром может быть:

-dbmp: сохранить в формате BMP

-djpeg: сохранить в формате jpeg

-dpng: сохранить в формате png

-dpcx: сохранить как формат pcx

-dpdf: сохранить в формате pdf

-dtiff: сохранить в формате tiff

fprintf:

Функция fprintf может записывать данные в текстовый файл в указанном формате:

  1. data = [5, 1, 2; 3, 7, 4];
  2. [row, col] = size(data);
  3. for i=1:row
  4. for j=1:col
  5. Fprintf (‘data (% d,% d) =% d \ n’, i, j, data (i, j));% напрямую выводится на экран; аналогично формату вывода языка C
  6. end
  7. end

Fid в fprintf (fid, format, data) представляет дескриптор файла, открытый функцией fopen. Если fid опущен, он будет напрямую выводиться на экран, format — это формат вывода в строковой форме, а data — это данные для вывода. Формат может быть:

  1. % c Один символ
  2. % d Десятичное число со знаком (также возможно% i)
  3. % u Десятичное число без знака
  4. % f Число с плавающей запятой (% 8.4f означает, что число с плавающей запятой имеет ширину 8 цифр и 4 десятичных разряда одновременно)
  5. % o Восьмеричное число без знака
  6. % s строка
  7. % x Шестнадцатеричное число строчных букв a-f
  8. % X Шестнадцатеричное число размера a-f
  1. data = [5, 1, 2; 3, 7, 4];
  2. [row, col] = size (data);% Найдите количество строк и столбцов матричных данных
  3. % Плюс t означает вывод строки в формате Windows, то есть 0xOD 0x0A, без t означает вывод строки в формате Linux, т.е. 0x0A
  4. fid = fopen (‘test.txt’, ‘wt’);% открытый файл
  5. for i=1:row
  6. for j=1:col
  7. Fprintf (fid, ‘% d’, data (i, j));% аналогичен формату вывода языка C
  8. end
  9. fprintf(fid, ‘\n’);
  10. end
  11. fprintf(fid, ‘This is a string\n’);
  12. fprintf(fid, ‘%X’, hex2dec(‘ABCD’));
  13. fclose (fid); Не забудьте закрыть файл в конце! Чтобы

Файл test.txt будет сгенерирован в текущем рабочем каталоге Matlab.

Прочтите из файла:

Мы можем использовать функцию fscanf

fscanf:

  1. Причина добавления t такая же, как указано выше
  2. fid=fopen(‘d:\test.txt’, ‘rt’);
  3. % Считать данные в данные. Где данные представляют собой матрицу 2 * 3
  4. data=fscanf(fid, ‘%d’, [2, 3]);
  5. s=fscanf(fid, ‘%s’);
  6. d=fscanf(fid, ‘%X’);
  7. % Закрыть файл
  8. fclose(fid);
  9. disp(data);
  10. disp(s);
  11. disp(d);

Из выходных результатов находимКогда fscanf читает данные, он игнорирует пробелы, пока вы не нажмете Enter!

disp:

Функция disp напрямую выводит содержимое в командное окно Matlab:

  1. % Однострочный вывод:
  2. disp(‘Hello World!’);
  3. % Различные типы вывода данных:
  4. num1 = 1;
  5. num2 = 2;
  6. disp([ num2str(num1), ‘ + ‘, num2str(num2), ‘ = ‘, num2str(num1+num2)]);

Источник

Читайте также:  Как вывести учредителя с компании
Оцените статью