Giao diện khi nhập dữ liệu:
Giao diện sau khi có kết quả: Kết quả trả về là các số phức đợc biểu diễn dới dạng đại số.
Hình 2.24. Giao diện sau khi có kết quả
Chơng trình thực hiện: <file vidu21.mlsp> <!-- $Revision: 1.8 $ --> <html> <head> <%@ include file="/Scripts/header.inc" %> <title>Tinh toan doi voi so phuc</title> </head>
<body bgcolor="#FFFFFF">
<table align="left" width="30%"/> <tr><td align="center">
<p><font color="#000000" size="3" face="Arial"><i>
Thuc hien phep cong, tru, nhan, chia 2 so phuc</i></font></p> <form action="vidu22.mlsp" method="post">
<p>Nhap so phuc a:
<input type="text" size="20" maxlength="20" name="sp1"></p> <p>Nhap so phuc b:
<input type="text" size="20" maxlength="20" name="sp2"></p> <p><input type="submit" name="Submit" value="Submit"></p> </form>
<p><font color="#0000FF" size="2" face="Arial">â2009 by Nguyen Thi Phuong Oanh</font></p>
</tr></td></table> </body>
<file vidu22.mlsp>
<html> <head>
<%@ include file="/Scripts/header.inc" %> <title>Tinh toan doi voi so phuc</title> </head>
<body bgcolor="#FFFFFF">
<table align="left" width="30%"/> <tr><td align=center>
<p><font color="#000000" size="3" face="Arial"><i>
Thuc hien phep cong, tru, nhan, chia hai so phuc</i></font></p> <Matlab:Engine> <Matlab:Command cmd="a=${param.sp1}"/> <Matlab:Command cmd="b=${param.sp2}"/> <Matlab:MultiCommand> if imag(a)>=0 sa=sprintf('a = %6.2f + %6.2fi',real(a),imag(a)); else sa=sprintf('a = %6.2f - %6.2fi',real(a),-imag(a)); end if imag(b)>=0 sb=sprintf('b = %6.2f + %6.2fi',real(b),imag(b)); else sb=sprintf('b = %6.2f - %6.2fi',real(b),-imag(b)); end tong=a+b;hieu=a-b;tich=a*b;thuong=a/b; if imag(tong)>=0 stong=sprintf('a+b= %6.2f + %6.2fi',real(tong),imag(tong)); else stong=sprintf('a+b=%6.2f - %6.2fi',real(tong),-imag(tong)); end if imag(hieu)>=0 shieu=sprintf('a-b= %6.2f + %6.2fi',real(hieu),imag(hieu)); else shieu=sprintf('a-b=%6.2f - %6.2fi',real(hieu),-imag(hieu)); end if imag(tich)>=0 stich=sprintf('a*b= %6.2f + %6.2fi',real(tich),imag(tich)); else stich=sprintf('a*b=%6.2f - %6.2fi',real(tich),-imag(tich)); end if imag(thuong)>=0
sthuong=sprintf('a/b = %6.2f+%6.2fi', real(thuong),imag(thuong)); else
sthuong=sprintf('a/b=%6.2f - %6.2fi',real(thuong),-imag(thuong)); end
</Matlab:MultiCommand>
<table><tr><td><i><b>Hai so phuc</i></b><br> <Matlab:WriteData name="sa"/><br>
<Matlab:WriteData name="sb"/></td></tr>
<tr><td><i><b>Ket qua phep tinh +,-,*,/ 2 so phuc</i></b><br> <Matlab:WriteData name="stong"/><br> <Matlab:WriteData name="shieu"/><br> <Matlab:WriteData name="stich"/><br> <Matlab:WriteData name="sthuong"/><br> </td><tr> </table> </Matlab:Engine>
<p align="center"><font color="#0000FF" size="2" face="Arial">â2009 by Nguyen Thi Phuong Oanh</font></p>
</tr></td></table> </body>
</html>
2.8.3. Xử lý dữ liệu kiểu ma trận thực.
Bài tốn đặt ra là nhập kích thớc ma trận magic, hiển thị ma trận này, nhân ma trận với số thực và hiển thị kết quả của phép nhân. Để thực hiện cần tạo hai trang web. Trang web (vidu31.mlsp) để nhập kích thớc của ma trận (kích thớc của ma trận tối thiểu là 3, tối đa là 20) và số thực k. Trang web (vidu32.mlsp) hiển thị ma trận magic đúng với kích thớc đợc nhập. Sau đó thực hiện phép nhân ma trận này với số thực k, hiển thị kết quả phép nhân.
Giao diện ban đầu nh sau: