How to display pi symbol in the output?

121 ビュー (過去 30 日間)
GULZAR
GULZAR 2023 年 8 月 24 日
コメント済み: Hiro Yoshino 2023 年 8 月 24 日
how to display pi symbol instead of numerical value in the out of the given code
clc; clear all; close all;
nA=3.3;nB=2.25;
% nB=3.3;nA=2.25;
S=sign(1-(nA^2/nB^2));
x=-1i*log(S);
if x>0
disp('Zak Phase of 0th band = ')
disp(pi)
else
disp('Zak Phase of 0th band = ')
disp('0')
end
Zak Phase of 0th band =
3.1416
  1 件のコメント
Fangjun Jiang
Fangjun Jiang 2023 年 8 月 24 日
sprintf('\x3c0')
ans = 'π'
double('π')
ans = 960

サインインしてコメントする。

採用された回答

Dyuman Joshi
Dyuman Joshi 2023 年 8 月 24 日
You can either use the symbolic math toolbox or print the symbol via the unicode value -
nA=3.3;nB=2.25;
% nB=3.3;nA=2.25;
S=sign(1-(nA^2/nB^2));
x=-1i*log(S);
if x>0
disp('Zak Phase of 0th band = ')
%pi as a symbolic number
disp(sym(pi))
%print the symbol via unicode value
fprintf('%c', 960)
else
disp('Zak Phase of 0th band = ')
disp('0')
end
Zak Phase of 0th band =
π
π

その他の回答 (2 件)

Nathan Hardenberg
Nathan Hardenberg 2023 年 8 月 24 日
編集済み: Nathan Hardenberg 2023 年 8 月 24 日
You can display pi as a sybolic
disp(sym(pi))
π
Or you can use a π-character (𝜋 or π).
disp("𝜋")
𝜋
disp("π")
π

Hiro Yoshino
Hiro Yoshino 2023 年 8 月 24 日
How about this?
S = sprintf('Zak Phase of 0th band = %c',960);
disp(S);
Zak Phase of 0th band = π
  1 件のコメント
Hiro Yoshino
Hiro Yoshino 2023 年 8 月 24 日
Please refer to the list of Unicode for your help:List of Unicode characters

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeSymbolic Math Toolbox についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by