Văn bản
73
Các định dạng \n, \r, \t, \b lần lượt được sử dụng để để tạo ra một dòng mới, xuống dòng, tab
và tab ngược (ngược với phím tab). Để in ra ra ký tự ‘\’ ta sử dụng ‘\\’, tương tự, để in ra ký
tự ‘%’ ta sử dụng ‘%%’. Phân tích ví dụ sau đây:
>> fprintf('look at %20.6e!\n', 1000*sqrt(2))
look at 1.414214e+3!
>> fprintf('look at %-20.6f!', 1000*sqrt(2))
look at 1414.213562 !
Trong cả hai trường hợp, khoảng tối thiểu để in đối số là 20 và số chữ số thập phân là 6.
Trong trường hợp đầu, giá trị 1000*sqrt(2) được định dạng canh lề phải và trong trường hợp
thứ hai, bởi vì có dấu ‘-‘ nên giá trị 1000*sqrt(2) được định dạng canh lề trái. Sự khác nhau
của hai kết quả còn do ý nghĩa của các ký tự biến đổi e và f.
#
Bài tập 7-3.
Sử dụng lệnh input để nhập vào các giá trị của một vector. Sau đó sử dụng lệnh disp hay lệnh
fprintf
để xuất vector mới vừa tạo ra màn hình.
#
Bài tập 7-4.
Xem xét các ví dụ sau đây về lệnh fprintf và sau đó tự làm các bài tập tương tự để hiểu rõ
hơn về các chỉ định này:
>> str = 'life is beautiful';
>> fprintf('My sentence is: %s\n',str);
% lưu ý định dạng \n
My sentence is: life is beautiful
>> fprintf('My sentence is: %30s\n',str);
My sentence is: life is beautiful
>> fprintf('My sentence is: %30.10s\n',str);
My sentence is: life is be
>> fprintf('My sentence is: %-20.10s\n',str);
My sentence is: life is be
>>
>> name = 'John';
>> age = 30;
>> salary = 6130.50;
>> fprintf('My name is %4s. I am %2d. My salary is f %7.2f.\n',name,
age, salary);
My name is John. I am 30. My salary is f 6130.50.
>>
>> x = [0, 0.5, 1];
>> y = [x; exp(x)];
>> fprintf('%6.2f %12.8f\n',y);
0.00
1.00000000
0.50
1.64872127
1.00
2.71828183