The goal of this question is to create a function named padLine which inputs a string (char, 1 × N) and a linewidth (integer, scalar). The function then pads the string with spaces (if N<linewidth) in an attempt to center the string the function should output the padded string (char,1xlinewidth).
for example
out=padline('2',9);
disp(out)
xxxx2xxxx
where x is a space

 Akzeptierte Antwort

Peng Li
Peng Li am 28 Mär. 2020
Bearbeitet: Stephen23 am 28 Mär. 2020

0 Stimmen

function out = padline(c, n) if n > length(c) n2add = floor((n - c) / 2); out = [repmat(‘ ‘, 1, n2add) c repmat(‘ ‘, 1, n - length(c) - n2add)]; else out = c; end
typed using cell phone. You may need to replace the ‘ with the correct symbol. Try it.
You may also interested in pad function that works with strings. You can add space to both sides of a string (defined by “ instead of ‘) or a string array.

Weitere Antworten (1)

Stephen23
Stephen23 am 28 Mär. 2020

0 Stimmen

str = '23';
num = 9;
tmp = (num-numel(str))/2;
out = sprintf('%*s%*s',fix(tmp)+numel(str),str,ceil(tmp),'')

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 28 Mär. 2020

Bearbeitet:

am 28 Mär. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by