九九乘法表程序

九九乘法表程序
九九乘法表程序

九九乘法表

一、课程设计目的

本课程设计是继《微机系统及应用》课程之后的一次综合性设计、实验训练。根据微机系统及应用课程教学的重点和主要知识点及工程实际需要,设置汇编语言程序设计、PC机内部接口和8086系统接口电路设计等设计题目。要求学生综合本课程和其它相关课程中学到的80X86系统结构、汇编语言设计、典型接口芯片、电路电子技术等相关知识进行程序设计、硬件接口电路设计和调试,系统地掌握微机原理和接口技术的相关知识,实现知识的融会贯通。要求学生通过1.5周的学习,提高设计汇编语言程序的能力和技巧,培养实现一个简单应用系统功能的硬件软件设计能力。

二、课程设计内容

汇编语言程序设计及调试

用汇编语言编写九九乘法表在屏幕上显示出来,而且能按一定规律显示. 1键为横向排列;2键为颜色输出;0键为取消该功能 即退出该程序 。

源程序代码

DATAS SEGMENT

NUM DB 0AH,0DH,0ah,'100900319 FAN YUYU',0dh,'$'

X DB 15 dup(?)

Y DB 15 dup(?)

table1 db 'PLEASE INPUT 0-2:$'

table2 db '---------------------------1:mutli 2:color

0:exit-----------------------------$'

table3 db 'WARNING:PLEASE INPUT 0-2$' ;此处输入数据段代码

col DB 00001000b,00000011b,00000100b,00000111b,00000001b

DB 00000110b,00001111b,00000000b,00000010b,00000101b ;定义显示颜色DATAS ENDS

STACKS SEGMENT STACK ;此处输入堆栈段代码

DW 100H DUP(?)

STACKS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS,SS:STACKS

main proc far ;定义主程序

push ds

sub ax,ax ;清零操作

push ax

mov ax,DATAS ;数据段赋值给AX

mov ds,ax

lea dx,table2 ;自定义数据送给DX

mov ah,9 ;功能号为9 ,显示

int 21h

call back ;调用子程序,实现回显与清除

t: lea dx,table1

mov ah,9 ;功能号为9 ,显示;

int 21h

mov ah,1

int 21h

mov bl,al

call back ;调用子程序,实现回显与清除

cmp bl,30h ;‘0’赋给BL

jz q

cmp bl,31h ;‘1’赋给BL

jz n

cmp bl,32h ;‘2’赋给BL

jz m

lea dx,table3 ;显示table3定义内容mov ah,9 ;功能号为9 ,显示

int 21h

call back

jmp t ;跳转到t

n: call mutli

jmp t

m: call color

jmp t

q: MOV DX,OFFSET NUM

MOV AH,9 ;显示功能

INT 21H

MOV AH,1 ;键盘输入并回显

INT 21H

mov ah,4ch ;中断调用

int 21h

pop ax ;恢复现场

pop ds

ret

main endp

mutli proc near ;九九乘法输出函数push bx ;保护现场

push cx

push dx

SUB AX,BX

PUSH AX

MOV AX,DATAs

MOV DS,AX

MOV BL,0

MOV X,BL ;X=0

MOV BH,1

MOV Y,BH ;Y=1

MOV CL,BL

LOOP1:

ADD BL,1 ;PRINT X

MOV DL,BL

ADD DL,30H

MOV AH,2

INT 21H

MOV DL,'*' ;PRINT *

MOV AH,2

INT 21H

MOV DL,BH ;PRINT Y

ADD DL,30H

MOV AH,2

INT 21H

MOV DL,'=' ;PRINT =

MOV AH,2

INT 21H

MOV AL,BH ;PRINT Z=X*Y IMUL BL

MOV AH,00H

MOV CH,0AH

IDIV CH

MOV DH,AH

CMP AL,0

JZ LOOP3 ;比较后跳转

ADD AL,30H

LOOP2:

MOV DL,AL

MOV AH,2H

INT 21H

ADD DH,30H

MOV DL,DH

MOV AH,2 ;显示输出

INT 21H

MOV DL,20H

MOV AH,2

INT 21H

CMP BL,BH

JL LOOP1

MOV DL,0AH ;键盘输入到缓冲区MOV AH,2

INT 21H

MOV DL,0DH

MOV AH,2

INT 21H

MOV BL,CL

ADD BH,1

CMP BH,10

JL LOOP1

JMP EXIT

LOOP3:

MOV AL,20H

JMP LOOP2

EXIT:

MOV AH,07H ;键盘输入无回显

pop ax

pop dx

pop cx

pop bx ;恢复现场

ret

mutli endp

color proc near ;颜色输出函数push ax

push bx

push cx

push dx

MOV AX,DATAs

MOV DS,AX

;========MAIN()=========== MOV BH,01H

LOP1: MOV BL,01H

LOP2: MOV AL,BH

MUL BL

CALL DISPLAY ;调用显示子程序INC BL

CMP BL,BH

JBE LOP2

CALL CRLF

INC BH

CMP BH,9

JBE LOP1

MOV DX,OFFSET NUM

MOV AH,9

INT 21H

MOV AH,1

INT 21H

;=========================== pop dx ;恢复现场

pop cx

pop bx

pop AX

ret

color endp

;------------------------ CRLF PROC NEAR

PUSH DX

MOV AH,2

MOV DL,0AH ; 键盘输入到缓冲区

INT 21H

MOV DL,0DH ;键盘复位

INT 21H

POP DX

POP AX

RET

CRLF ENDP

OUTX PROC NEAR

PUSH AX

PUSH DX

MOV AH,2

INT 21H

POP DX

POP AX

RET

OUTX ENDP

;----------------------------

DISPLAY PROC NEAR

PUSH DX

CMP AL,10

JAE DISP1

MOV DL,' ' ;打印空格

CALL OUTX

JMP DISP2

DISP1: MOV DL,10

MOV AH,0

DIV DL

MOV DL,AL

ADD DL,'0'

;--------------------------------------

cmp bl,bh

jne show5

call writecc

jmp show1

show5: cmp bl,1 ;小于或等于比较后跳转 ;结果为正就转移jne show6

call writecc

jmp show1

show6: cmp bh,9

jne show

call writecc

jmp show1

;----------------------------------------------- show: CALL OUTX

show1: MOV AL,AH

DISP2: MOV DL,AL

ADD DL,'0'

;------------------------------------------------ cmp bl,bh

jne show4

call writecc

jmp show3

show4: cmp bl,1

jne show7

call writecc

jmp show3

show7: cmp bh,9

jne show2

call writecc

jmp show3

;-------------------------------------------------- show2: CALL OUTX

show3: MOV DL,' '

CALL OUTX

CALL OUTX

pop dx

RET

DISPLAY ENDP

WriteCC PROC near

push AX

push bx

push cx

push dx

push si

xor AH,AH ;清零操作

MOV dh,9

MOV AL,dh

MOV si,AX

MOV AH,9 ; 显示字符串

MOV AL,DL

MOV bh,0

MOV bl,col[si] MOV cx,1

INT 10h

MOV AH,3

INT 10h

MOV AH,2 ;显示输出inc DL ;自加

INT 10h

pop si

pop dx

pop cx

pop bx

pop AX

ret

WriteCC ENDP

back proc near mov dl,0Ah

mov ah,2

int 21h

mov dl,0Dh

mov ah,2

int 21h

ret

back endp

MOV AH,4CH

INT 21H

CODES ENDS

END

Matlab程序命令

Matlab程序命令(四)数据处理及空间自回归模型参数估计 一、教材实例 Matlab操作过程(注意:在进行空间计量模型参数估计时,要把空间计量软件包jplv7和fanzuan、lYhbzh函数添加到Matlab程序文件夹中,否则,所有与Matlab相关的程序、函数等都能够被Matlab识别并使用) %空间自回归模型设立 %移项、矩阵变换 %估计结果 (一)构造变量矩阵 y=[42;37;30;26;30;37;42] %7行1列矩阵 x=[10,30;20,20;30,10;50,0;30,10;20,20;10,30] %7行2列矩阵 (二)构建已经行标准化的空间权重矩阵 W=zeros(7) %建立7×7零矩阵 W(1,2)=1 %赋W第1行第2列为1的值 W(2,1)=0.5 %赋W第2行第1列为0.5的值 W(2,3) =0.5 %赋W第2行第3列为0.5的值 W(3,2) =0.5 %赋W第3行第2列为0.5的值 W(3,4) =0.5 %赋W第3行第4列为0.5的值 W(4,3) =0.5 %赋W第4行第3列为0.5的值 W(4,5) =0.5 %赋W第4行第5列为0.5的值 W(5,4) =0.5 %赋W第5行第4列为0.5的值 W(5,6) =0.5 %赋W第5行第6列为0.5的值 W(6,5) =0.5 %赋W第6行第5列为0.5的值 W(6,7) =0.5 %赋W第6行第7列为0.5的值 W(7,6) =1 %赋W第7行第6列为1的值 (三)估计空间自回归模型Matlab程序命令 results = sar(y,x,W) %估计估计空间自回归模型参数 prt(results) %格式化 二、教材实例(续) (一)引进函数lyhbzh的Matlab程序命令

php九九乘法表

"; for($j = 1;$j <= 9;$j++){ echo ""; for($z = 0;$z <9 - $j;$z++){ echo " "; } for($i = $j;$i >= 1;$i--){ echo "$i*$j=".$i*$j.""; } echo ""; } echo "";*/ //第三种 /*echo "

"; for($j = 9;$j >= 1;$j--){ echo ""; for($z = 1;$z <= 9 - $j;$z++ ){ echo ""; //echo "$i*$j=".$i*$j."";

} for($i = 1;$i <= $j;$i++){ echo "

"; } echo ""; } echo "
$i*$j=".$i*$j."
";*/ /*第二种 for($j = 9;$j >= 1;$j--){ for($i = 1; $i <= $j; $i++){ //echo "$i x $j = ".$i * $j; //echo " "; echo "$i x $j =".$i*$j."  "; } echo "
"; } */ /*第一种 for($j = 1;$j <= 9;$j++){

matlab运算函数与命令

Matlab符号运算介绍 Matlab符号运算是通过符号数学工具箱(Symbolic Math Toolbox)来实现的. Matlab符号运算(二) 符号对象的建立:sym 和syms 例: >> syms x y z >> x=sym('x'); >> y=sym('y'); >> z=sym('z'); 符号对象建立时可以附加属性: real,positive 和unreal >> k=sym('k','positive') >> x=sym('x','real') >> x=sym('x','unreal') 表明x 是实的 Matlab符号运算(二) 表明k 是正的 去掉x 的附加属性 符号表达式的建立 >> f2=sym('sin(x)+cos(x)') >> syms x >> f1=sin(x)+cos(x) >> f3='sin(x)+cos(x)' 用这种方法创建的符号表达式对空格很敏感,不要在字符间随意添加空格! Matlab符号运算(二) 推荐! 符号变量与符号常量 >> a=sym('a'); >> b=sym('5'); >> c=sym(5); b,c有区别吗 hint:help sym 相关函数 findsym: 查找符号表达式中的符号变量 findsym(f) 按字母顺序列出符号表达式 f 中的所有自由变量findsym(f,N) 列出f 中距离x 最近的N 个自由变量(i,j 除外) 默认自变量=findsym(f,1) Matlab符号运算(二) >> a=sym('a');x=sym('x');k=sym('3'); >> f=k*x+a; >> findsym(f) 例: ans=a,x

matlab循环语句

matlab 基本语句 1.循环语句for for i=s1:s3:s2 循环语句组 end 解释:首先给i赋值s1;然后,判断i是否介于s1与s2之间;如果是,则执行循环语句组,i=i+s3(否则,退出循环.);执行完毕后,继续下一次循环。 例:求1到100的和,可以编程如下: sum=0 for i=1:1:100 sum=sum+i end 这个程序也可以用while语句编程。 注:for循环可以通过break语句结束整个for循环. 2.循环语句while 例:sum=0;i=1; while(i<=100) sum=sum+i;i=i+1; end 3.if语句 if(条件) 语句 end if(条件) 语句 else 语句 end if(条件) 语句 elseif 语句 end 4.关系表达式:

=,>,<,>=,<=,==(精确等于) 5.逻辑表达式:|(或),&(且) 6.[n,m]=size(A)(A为矩阵) 这样可以得到矩阵A的行和列数 n=length(A),可以得到向量A的分量个数;如果是矩阵,则得到矩阵A的行与列数这两个数字中的最大值。 7.!后面接Dos命令可以调用运行一个dos程序。 8.常见函数: poly():为求矩阵的特征多项式的函数,得到的为特征多项式的各个系数。如 a=[1,0,0;0,2,0;0,0,3],则poly(a)=1 -6 11 -6。相当于poly(a)=1入^3+(-6)入^2+11入+(-6)。 compan():可以求矩阵的伴随矩阵. sin()等三角函数。 MATLAB在数学建模中的应用(3) 一、程序设计概述 MATLAB所提供的程序设计语言是一种被称为第四代编程语言的高级程序设计语言,其程序简洁,可读性很强,容易调试。同时,MATLAB的编程效率比C/C++语言要高得多。 MATLAB编程环境有很多。常用的有: 1.命令窗口 2.word窗口 3.M-文件编辑器,这是最好的编程环境。 M-文件的扩展名为“.m”。M-文件的格式分为两种: ①λ M-脚本文件,也可称为“命令文件”。 ② M-函数文件。这是matlab程序设计的主流。λ 保存后的文件可以随时调用。 二、MATLAB程序结构 按照现代程序设计的观点,任何算法功能都可以通过三种基本程序结构来实现,这三种结构是:顺序结构、选择结构和循环结构。其中顺序结构是最基本的结构,它依照语句的自然顺序逐条地执行程序的各条语句。如果要根据输入数据的实际情况进行逻辑判断,对不同的结果进行不同的处理,可以使用选择结构。如果需要反复执行某些程序段落,可以使用循环结构。 1 顺序结构 顺序结构是由两个程序模块串接构成。一个程序模块是完成一项独立功能的逻辑单元,它可以是一段程序、一个函数,或者是一条语句。 看图可知,在顺序结构中,这两个程序模块是顺序执行的,即先执行<程序

九九乘法表的C语言代码

九九乘法表的C语言代码,黄路平编写与2012.3.6 代码一:#include int main() { int i=1,j; for (i=1,j=1;j<=9;j++) { if( j==1) printf("%d*%d=%d\n",i,j,i*j); else {for (i=1;i<=j;i++) printf("%d*%d=%d\t",i,j,i*j); printf("\n"); } } } 代码二:switch语句 #include int main() { int i=1,j; for (i=1,j=1;j<=9;j++) { switch(j) { case 1:printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; case 2: for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; case 3:for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; case 4:for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; case 5:for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break;

case 6:for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; case 7:for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; case 8:for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; case 9:for (i=1;i<=j;i++) printf ("%d*%d=%d\t",i,j,i*j); printf("\n"); break; } } }

第1章 MATLAB

第1章MATLAB 7.x概述 MATLAB是目前世界上最流行的、应用最广泛的工程计算和仿真软件。MATLAB是Matrix Laboratory的缩写,它的产生是与数学计算紧密联系在一起的。MATLAB是一个交互式开发系统,其基本数据要素是矩阵。 本门课程以MATLAB 7.3和simulink 6.5版为平台进行全面地介绍。 1.1 MATLAB 7.3 简介 1.1.1 MATLAB的系统结构 MATLAB系统由MATLAB开发环境、MATLAB语言、MATLAB数学函数库、MATLAB图形处理系统和MATLAB应用程序接口(API)五大部分组成。 (1)MATLAB开发环境是一个集成的工作环境。 (2)MATLAB语言具有程序流程控制、函数、数据结构、输入输出和面向对象的编程特点,是基于矩阵/数组的语言。 (3)MATLAB的数学函数库包含了大量的计算算法。 (4)MATLAB的图形处理系统能够将二维和三维数组的数据用图形表示出来。 (5)MATLAB应用程序接口使MATLAB语言能与C或FORTRAN等其他编程语言进行交互。 1.1.2 MATLAB的特点 1. 运算功能强大 2. 编程效率高 3. 强大而智能化的作图功能 4. 可扩展性强 5. Simulink动态仿真功能 1.1.3 MATLAB工具箱 MATLAB的工具箱(Toolbox)是一个专业家族产品,工具箱实际上是MATLAB 的M文件和高级MATLAB语言的集合,用于解决某一方面的专门问题或实现某一类的新算法。 包括应用数学类、控制类、信号处理类等工具箱。 1.2 MATLAB 7.3的开发环境 1.2.1 MATLAB 7.3的环境设置 1.2.3 菜单和工具栏 1. 菜单 MATLAB 7.3还会根据不同的窗口,增加一些浮动菜单。 (1)File菜单 (2)Edit菜单 (3)Debug菜单 (4)Desktop菜单 (5)Windows菜单 (6)Help菜单 (7)开始菜单 在MATLAB操作界面的左下角有一个按钮,是MATLAB的快捷菜单。

九九乘法表源代码(vb)

Private Sub Command1_Click() For i = 1 To 4 For j = 1 To 6 Print "*"; Next j Print Next i End Sub Private Sub Command2_Click() For i = 1 To 4 Print Tab(i); For j = 1 To 6 Print "*"; Next j Print Next i End Sub Private Sub Command3_Click() For i = 1 To 4 Print Tab(5 - i); For j = 1 To 6 Print "*"; Next j Print Next i End Sub Private Sub Command4_Click() For i = 1 To 9 For j = 1 To 9 Print i; "*"; j; "="; i * j; Next j Print Next i End Sub Private Sub Command5_Click() Dim se As String Print Tab(35); "乘法表" For i = 1 To 9 For j = 1 To 9 se = i & "*" & j & "=" & i * j

Print Tab((j - 1) * 9); se; Next j Picture1.Print Next i End Sub Private Sub Command6_Click() End End Sub Private Sub Command7_Click() Print Tab(35); "乘法表" For i = 1 To 9 For j = i To 9 se = i & "*" & j & "=" & i * j Print Tab((j - 1) * 9); se; Next j Print Next i End Sub Private Sub Command8_Click() Print Tab(35); "乘法表" For i = 1 To 9 For j = 1 To i se = i & "*" & j & "=" & i * j Print Tab((j - 1) * 9); se; Next j Print Next i End Sub Private Sub Command9_Click() Cls End Sub Private Sub Picture1_Click() Dim se As String Picture1.Print Tab(35); "乘法表" For i = 1 To 9 For j = 1 To 9 se = i & "*" & j & "=" & i * j Picture1.Print Tab((j - 1) * 9); se; Next j

VB程序设计-九九乘法表

VB程序设计-九九乘法表 (作者:草原飞狼 2014年5月31日) 声明:仅供学习与交流使用,高手请飘过,谢谢!所有代码都是个人亲自编写并调试成功。 布局

运行界面(1) 运行界面(2) 源代码如下: Private Sub Command1_Click() Rem 乘法表算法一 Dim i, j As Integer For i = 1 To 9 For j = 1 To i expss = i & "*" & j & "=" & i * j Form1.Picture1.Print Tab((j - 1) * 8 + 1); '控制每个输出表达式的输出位置 Form1.Picture1.Print expss; Next j Form1.Picture1.Print Next i End Sub Private Sub Command2_Click() Rem 乘法表算法二 Dim i, j As Integer For i = 9 To 1 Step -1 For j = 1 To i expss = j & "*" & i & "=" & i * j

Form1.Picture1.Print Tab((j - 1) * 10 + 1); '控制每个输出表达式的输出位置 Form1.Picture1.Print expss; Next j Form1.Picture1.Print Next i End Sub Private Sub Command3_Click() Rem 清空 Form1.Picture1.Cls End Sub Private Sub Command4_Click() Rem 退出 Dim int_msg As Integer int_msg = MsgBox("单击“是”退出程序,单击“否”返回程序!", vbYesNo + vbQuestion + vbDefaultButton1, "退出提示") If int_msg = vbYes Then Unload Me End If End Sub Private Sub Form_Load() Rem 初始化 With Picture1 .FontName = "宋体" .FontSize = 12 .FontBold = True .ForeColor = &H80FF& End With End Sub

九九乘法表

作业要求:题目,任务分析,实施思想,实施算法,流程图,程序,注释,程序代码长度(汇编),内存消耗量,程序运行消耗机时数 一.请分析以下变量 int a=0; //全局初始化区 char *p; //全局未初始化区 void main() { int b; //栈区 char s[]="abc"; //栈区 char *p2; //栈区 char *p3="123456"; //123456在常量区,p3在栈区 //如果是调用,结束后p3会清楚,而123456不会清除 static int c=0; //全局初始化区 p1=(char *)malloc(10); p2=(char *)malloc(20); p1 = new char[10]; p2 = new char[20]; //分配得来的字节的区域就在堆区 strcpy(p1,"123456"); //123456放在常量区,编译器可能会将它 //与p3所指向的“123456”优化到一个地方 } a,*p1为全局变量,存在全局数据区,初始化的和未初始化的分别保存在一起。 b,*p2,*p3,为局部变量,普通局部变量保存在堆栈中。 c为静态局部变量,存在全局数据区。 char []=”abc”存在非初始化数据段。 一个程序在内存中一下几个部分组成。 1.代码段(Code或Text) 代码段由程序中执行的机器代码组成。在C语言中,程序语句进行编译后,形成机器代码。在执行程序的过程中,CPU的程序计数器指向代码段的每一条机器代码,并由处理器依次运行。 2.只读数据段(RO data) 只读数据段是程序使用的一些不会被更改的数据,使用这些数据的方式类似查表式的操作,由于这些变量不需要更改,因此只需要放置在只读存储器中即可。

matlab实验报告

Matlab实验报告 ——定积分的近似计算 学生姓名: 学号: 专业:数学与应用数学专业

数学实验报告 实验序号:1001114030 日期:2012年10月20日 班级应一姓名陈璐学号1001114030 实验名称:定积分的近似运算 问题背景描述: 利用牛顿—莱布尼茨公式虽然可以精确地计算定积分的值,但它仅适合于被积分函数的原函数能用初等函数表达出来的情形。如果这点办不到或不容易办到, 这就有必要考虑近似计算的方法。在定积分的很多应用问题中,被积函数甚至没 有解析表达式,可能只是一条实验记录曲线,或者是一组离散的采样值,这时只 能应用近似方法去计算相应的定积分。 实验目的: 本实验将主要研究定积分的三种近似计算算法:矩形法、梯形法、抛物线发。对于定积分的近似数值计算,Matlab有专门函数可用。 实验原理与数学模型: 1.sum(a):求数组a的和。 2.format long:长格式,即屏幕显示15位有效数字。 3.double():若输入的是字符则转化为相应的ASCII码;若输入的是整型数之则转化为 相应的实型数值。 4.quad():抛物线法求数值积分。格式:quad(fun,a,b)。此处的fun是函数,并且

为数值形式,所以使用*、/、^等运算时要在其前加上小数点。 5.trapz():梯形法求数值积分。格式:trapz(x,y)。其中x为带有步长的积分区间;y为数 值形式的运算。 6.fprintf(文件地址,格式,写入的变量):把数据写入指定文件。 7.syms 变量1变量2……:定义变量为符号。 8.sym('表达式'):将表达式定义为符号。 9.int(f,v,a,b):求f关于v积分,积分区间由a到b。 10.subs(f,'x',a):将a的值赋给符号表达式f中的x,并计算出值。若简单地使用subs (f),则将f的所有符号变量用可能的数值代入,并计算出值。 实验所用软件及版本:Matlab 7.0.1

用WPS表格数组制作九九乘法表

用WPS表格数组制作九九乘法表 九九乘法表大家都见过,小学的时候老师要求背诵的。 其实,用工作表也可以轻松的制作“九九乘法表”,下面我们用数组的方法来制作。 1.在新建一个工作表,在B1:J1横向输入1、2、3直到9,然后,在A2:A10纵向输入1、2、3直到9。

2.选中B2:J10区域,在编辑栏中输入公式 =B1:J1&"×"&A2:A10&"="&B1:J1*A2:A10 按ctrl+shift+enter三键组合,这样得到了“九九乘法表”的基本数据。 3.进行格式设置。 (1)让乘法表显示成阶梯状, 把右上部分的文字颜色设置为白色,这样就相当于对右上部分进行了隐藏。这里我们利用条件格式,在条件格式里设置公式 选中B2:J10区域,设置条件格式公式 =COLUMN(B2)>ROW(B2) 把格式设置为,字体为白色 (2)设置左下部分边框和底色 选中B2:J10区域,设置条件格式公式 =COLUMN(B2)<=ROW(B2) 格式设置为,边框为黑色,填充为黄色 (3)隐藏第1行和第1列,效果如下

普通公式制作“九九乘法”表 当然我们也可以用普通公式法,构建“九九乘法”表,方法如下: 在左上角第一个单元格中输入公式: =IF(ROW()>=COLUMN(),ROW(I6)&"×"&COLUMN(I6)&"="&ROW (I6)*COLUMN(I6),"") 选中,向右拉填充柄,填充到第9列,然后选中第一行,向下填充到第9行。 要点回顾: 1.这两种防法都比较简单,但是,有利于我们掌握数组的使用方法以及公式组合利用。 2.有效利用条件格式,可以达到良好的显示效果。

(第2章)MATLAB软件包使用精要

第2章MATLAB软件包使用精要 2.1 MATLAB通用命令介绍 2.1.1 管理命令与函数 一、指定搜索路径 path( ),addpath( ),rmpath( ):指定、增加、删除搜索路径。语法格式为: p=path:将搜索路径字符串值返回给字符串变量p path(‘newdir’):将搜索路径改变为字符串’newdir’指定的路径 rmpath(‘directory’):删除’directory’路径 addpath(‘directory’):增加’directory’路径 addpath(‘dir1’, ‘dir1’, ‘dir1’,…) addpath(…,‘-flag’):flag值为0或begin表示将目录加在原搜索路径之前;1或end表示将目录加在原搜索路径之后 二、doc命令:读入超文本文件 三、help命令:MATLAB函数和M文件的在线式帮助。语法格式为: helpl topic:topic为要取得帮助的主题,可省略topic。 四、type命令:在命令窗口显示文件内容。语法格式为: type filename:filename为文件名,缺省扩展名为“.m”。 五.what命令:列出给定目录下的所有M文件、MAT文件、MEX文件。语法格式为:what dirname:列出给定目录dirname下的上述文件,其中dirname可不用全部路径名称,可用最后一层或两层路径代替。 2.1.2 变量和工作空间管理命令与函数 一、工作空间的概念及操作 1.概念:当MATLAB启动后,系统自动在内存中开辟一块存储区域用于存储用户在MATLAB 命令窗口中定义的变量、运算结果和有关数据。此内存空间称为MATLAB的工作空间。 工作空间在MATLAB刚启动时为空,此后,用户所定义的变量、运算结果和有关数据均存储在该空间。但一旦退出系统,工作空间的内存将不再保留。为了能够将工作空间的内容长期保留下来,MATLAB为用户提供了将工作空间以MAT文件保存到磁盘的功能,具体步骤如下: (1)保存工作空间:单击MATLAB命令窗口菜单栏的文件(【File】)菜单, 选择【Save Worspace as】菜单选项。 (2)装载工作空间:单击MATLAB命令窗口菜单栏的文件(【File】)菜单, 选择【Save Worspace as】菜单选项,系统打开工作空间装载设置对话框。 在该对话框中选定已保存的工作空间的文件名,单击【打开】按钮,即可 将已保存的工作空间的内容装载到当前工作空间。 二、管理命令与函数 1.clear命令:清除内存中的对象。语法格式为: clear:清除工作空间中的全部变量

九九乘法表-九九乘法口诀

×1 2 3 4 5 6 7 8 九九乘法口诀表(全)—数字版 123456789 1×1=1 1× 2=2 1×3=3 1×4=4 1×5=5 1×6=6 1×7=7 1×8=8 1×9=9 1×2=2 2×2= 4 2×3=6 2×4=8 2×5=10 2×6=12 2×7=14 2×8=16 2×9=18 1×3=3 2×3= 6 3×3= 9 3×4=12 3×5=15 3×6=18 3×7=21 3×8=24 3×9=27 1×4=4 2×4= 8 3×4=12 4×4=16 4×5=20 4×6=24 4×7=28 4×8=32 4×9=36 1×5=5 2×5=10 3×5=15 4×5=20 5×5=25 5×6=30 5×7=35 5×8=40 5×9=45 1×6=6 2×6=12 3×6=18 4×6=24 5×6=30 6×6=36 6×7=42 6×8=48 6×9=54 1×7=7 2×7=14 3×7=21 4×7=28 5×7=35 6×7=42 7×7=49 7×8=56 7×9=63 1×8=8 2×8=16 3×8=24 4×8=32 5×8=40 6×8=48 7×8=56 8×8=64 8×9=72 91×9=9 2×9=18 3×9=27 4×9=36 5×9=45 6×9=54 7×9=63 8×9=72 9×9=81

九九乘法口诀表(简)—数字版 1×1=1 1×2=2 2×2=4 1×3=3 2×3=63×3=9 1×4=4 2×4=83×4=12 4×4=16 1×5=5 2×5=103×5=15 4×5=20 5×5=25 1×6=6 2×6=123×6=18 4×6=24 5×6=306×6=36 1×7=7 2×7=143×7=21 4×7=28 5×7=356×7=42 7×7=49 1×8=8 2×8=163×8=24 4×8=32 5×8=406×8=48 7×8=56 8×8=64 1×9=9 2×9=183×9=27 4×9=36 5×9=456×9=54 7×9=63 8×9=72 9×9=81

matlab程序设计与应用实验指导书

附件2 《matlab程序设计与应用》实验指导书 山东建筑大学信息与电气工程学院

前言 一、实验目的 本课程是电气工程及其自动化、自动化、电力工程与管理专业本科生的 学科基础选修课,它在线性代数、信号分析和处理、控制系统设计和仿真等 方面有着广泛的应用。主要是学习MATLAB的语法规则、基本命令和使用环境,使学生掌握MATLAB的基本命令和基本程序设计方法,提高使用该语言 的应用能力,具有使用MATLAB语言编程和调试的能力,以便为后续多门课 程使用该语言奠定必要的基础。 通过上机实验,使学生掌握MATLAB在线帮助功能的使用、熟悉MATLAB运行环境和MATLAB语言的主要特点,掌握MA TLAB语言的基本 语法规则及基本操作命令的使用,学会M文件的建立和使用方法以及应用MATLAB实现二维和三维图形的绘制方法,具有使用MATLAB语言编程和 调试的能力。 二、实验前预习 每次实验前,学生须仔细阅读本实验指导书的相关内容,明确实验目的、要求;明确实验步骤、测试数据及需观察的现象;复习与实验内容有关的理论知识;预习仪器设备的使用方法、操作规程及注意事项;做好预习要求中提出的其它事项。 三、实验注意事项 1.实验开始前,应先检查本组电脑设备是否工作正常,matlab软件工作是否正常。 2.实验时每位同学应独立完成实验任务,避免抄袭。 3.实验后应及时将实验数据进行记录与存盘,避免因电脑故障或其它原因造成实验数据的丢失。 4.实验中严格遵循电脑操作规程,如电脑发生异常现象,应立即切断电源,

报告指导教师检查处理。 5.测量数据或观察现象要认真细致,实事求是。 6.未经许可,不得对电脑进行软件及硬件的更改操作。 7.实验结束后,实验记录交指导教师查看并认为无误后,方可关掉电脑离开。 8.爱护公物,发生仪器设备等损坏事故时,应及时报告指导教师,按有关实验管理规定处理。 9.自觉遵守学校和实验室管理的其它有关规定。 四、实验总结 每次实验后,应对实验进行总结,即实验数据进行整理,绘制波形和图表,分析实验现象,撰写实验报告。实验报告除写明实验名称、日期、实验者姓名、同组实验者姓名外,还包括: 1.实验目的; 2.实验内容 3.实验流程图; 4.程序命令清单; 5.运行结果; 6.实验的收获与体会; 7.回答每项实验的有关问答题。

九九乘法表程序设计

输出九九乘法表程序设计(附源代码) Rabbit 徐 摘要:本程序主要完成一个输出九九乘法表的程序,主程序实现九九乘法表的输出。程序输出界面为阶梯型,程序设计中主要应用了条件转移指令判断,通过更改字符对应的ASII码达到乘法字符输出。 关键字:汇编;程序;九九乘法表;阶梯行输出 九九乘法表在生活应用非常广泛,本程序利用汇编语言针根据平时生活中的需要对九九乘法表输出。 一、需求分析 在日常生活中,我们经常需要使用到九九乘法口诀,以达到一些计算目的。因此编写一个输出九九乘法表程序能够帮助许多学生学习此口诀。而且本程序通过汇编语言实现,汇编语言具有许多其他语言不可替代的优点,其目标程序占用内存空间少,运行速度快,在一些硬件配置较差的机器上也能大显身手。 二、概要设计 (一)数据类型 程序中主要用了byte型变量,以及cs,ds,ax,bx寄存器。将提示信息存储在byte型变量数组中,然后将偏移地址存储在ax寄存器中,以用于输出信息。用bl暂存乘数,用bh暂存被乘数。 (二)主要类型 程序中主要用byte型变量存储提示信息,用bl寄存器存放乘数,bh寄存器存放被乘数,进行乘法运算。 (三)主要流程

显示1*1=1 是 高于 不高于 返回DOS 程序结束 乘数与9比较大 小,是否结束 开 始 被乘数与乘数比 较大小,是否需换 行 大于不换行 不高于 换 行 显示 置首位 乘数赋值为1 被乘数加1 显 示 乘数加1

三、详细设计 本程序首先是程序代码段开始code segment用main proc far使程序模块化,子程序和调用程序不在同一段,方便数据调用。使各寄存器入栈,初始化,并使用乘法调整指令,将各种字符转换为ASCII码值,方便输出。利用JNA判断,实现判断循环功能。程序的具体代码如下: 输出九九乘法表程序设计 code segment;数据段开始 main proc far;子程序调用时使用的参数 assume cs:code;设定数据放入cs寄存器 push ds;DS寄存器入栈 mov ax,0; push ax;ax寄存器入栈 mov bl,1;乘数赋值为1 lop2: mov bh,1;被乘数赋值为1 lop1: mov al,bh;被乘数存放如al寄存器当中 mul bl;将bl与bh相乘结果送到ax中 aam ; add bh,30h ;变为ASCII的值 add bl,30h mov cx,ax mov dl,bh ; mov ah,2 int 21h mov dl,'*' ;显示乘号 mov ah,2 int 21h mov dl,bl ;显示乘数 mov ah,2 int 21h mov dl,'=' ;显示等号 mov ah,2 int 21h cmp ch,0 ;查看高位有没有值 je tu;等于转移 add ch,30h ;若有则显示 mov dl,ch mov ah,2 int 21h tu:add cl,30h ;否则显示低位 mov dl,cl mov ah,2 int 21h mov dl,' ' ;显示空格

小学数学九九乘法表

小学数学九九乘法表x 小学数学九九乘法表x 1、竖着背 比如,一一得一,一二得二,一直背到一九得九,接着背二二得四,二三得六,一直到二九十八,然后是三三得九,三四十二,一直到三九二十七,如此类推,接下来,依次是四四十六的竖列、五五二十五的竖列、六六三十六的、七七四十九的、八八六十四的、最后九九八十一的。这种方法有个规律,几的竖列,就逐渐增加几,可以按此规律帮助记忆。 2、横着背 比如第一横行,就一句一一得一;第二横行两句,一二得二,二二得四;往下类推,第几行就几句,最后九句,从一九得九到九九八十一。这种方法也有个规律,第几行,后一句就比前一句增加几。 3、拐弯背

比如,首先背一二得二,此时接着背二二得四,这时拐弯向下背二三得六、二四得八、一直到二九十八;然后回到一三得三、二三得六、三三得九,再拐弯往下三四一十二,一直到三九二十七;如此类推,回到一四得四接着拐弯。这样背的一个特点是,从一到九的口诀都有九句,几的口诀就逐渐增加几。 二、理解族的理解记忆法 理解族的精灵擅长逻辑推理。当他们能按顺序熟读口诀后,必然会有若干自己比较熟悉的口诀,例如: 二五一十、九九八十一等,将这些口诀作为参照物,可运用推算的方法很快找到与之相邻的乘法口诀,比如:8×9的结果想不出,则可思考“9个9减去一个9”,也就是“81-9=72”,当然得出结论后不能写上72就算了,还应把“8×9”的口诀在心里默念一遍,那么多经历几次这样的思考后,“八九七十二”这句也将成为铭记于心的口诀了。这样以点带面,从若干口诀辐射到所以口诀,效果应该会比较明显。 三、对比族的对比记忆法 对比族的精灵们擅长观察和比较。于是他们发现了下面的规律。 1、积的得数相同的:(两个乘数不重复的) 一四得四、二二得四 一六得六、二三得六 一八得八、二四得八 二六十二、三四十二 一九得九、三三得九 三六十八、二九十八

Matlab课后习题

Matlab变量名是以字母开头,后接字母、数字或下划线的字符序列,最多63个字符.在MATLAB中,变量名区分字母的大小写. 赋值语句: 变量=表达式或表达式 其中表达式是用运算符将有关运算量连接起来的式子,其结果是一个矩阵. clear命令用于删除MATLAB工作空间中的变量.who和whos这两个命令用于显示在MATLAB工作空间中已经驻留的变量名清单.who命令只显示出驻留变量的名称,whos在给出变量名的同时,还给出它们的大小、所占字节数及数据类型等信息. 利用MAT文件可以把当前MATLAB工作空间中的一些有用变量长久地保留下来,扩展名是.mat.MAT文件的生成和装入由save和load 命令来完成.常用格式为: save 文件名 [变量名表] [-append][-ascii] load 文件名 [变量名表] [-ascii] 其中,文件名可以带路径,但不需带扩展名.mat,命令隐含一定对.mat文件进行操作.变量名表中的变量个数不限,只要内存或文件中存在即可,变量名之间以空格分隔.当变量名表省略时,保存或装入全部变量.-ascii选项使文件以ASCII格式处理,省略该选项时文件将以二进制格式处理.save命令中的-append选项控制将变量追加到MAT文件中. (1) 向量的创建 用步长生成法: 数组=初值:步长(增量):终值 >> a=1:0.5:3 a = 1.0000 1.5000 2.0000 2.5000 3.0000 用linspace生成: 数组=linspace(初值,终值,等分点数目) >> b=linspace(1,3,5) b = 1.0000 1.5000 2.0000 2.5000 3.0000 列向量用分号(;)作为分行标记: >> c=[1;2;3;4;] c = 1 2 3 4 若不想输出结果,在每一条语句后用分号作为结束符,若留空或用逗号结束,则在执行该语句后会把结果输出来. >> a+b; >> a+b ans = 2 3 4 5 6 (2) 矩阵的创建 直接输入——最简单的建立矩阵的方法是从键盘直接输入矩阵的元素.具体方法如下:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔. >> A=[1 2 3;4 5 6;2 3 5] A = 1 2 3 4 5 6 2 3 5 利用矩阵函数创建: >> B=magic(3)%魔方阵 B = 8 1 6 3 5 7 4 9 2 >> C=hilb(3)%3阶Hilbert矩阵 C = 1.0000 0.5000 0.3333 0.5000 0.3333 0.2500 0.3333 0.2500 0.2000 Matlab中用%引导注释 其它创建矩阵函数还有: eye(m,n):生成m行n列单位矩阵. zeros(m,n):生成m行n列全零矩阵. ones(m,n):生成全1矩阵. rand(m,n):生成随机矩阵. rand:生成一个随机数. diag(A):取A的对角线元素. tril(A):取A的下三角元素. triu(A):取A的上三角元素. hilb(n):生成n维Hilbert矩阵. randn(n):产生均值为0,方差为1的标准正态分布随机矩阵. vander(V):生成以向量V为基础向量的范得蒙矩阵. invhilb(n): 求n阶的希尔伯特矩阵的逆矩阵. toeplitz(x,y): 生成一个以x为第一列,y为第一行的托普利兹矩阵 compan(p): 生成伴随矩阵, p是一个多项式的系数向量,高次幂系数排在前,低次幂排在后. pascal(n): 生成一个n阶帕斯卡矩阵. compan: 生成伴随矩阵 (3) 矩阵运算 MATLAB的基本算术运算有:+(加)、-(减)、*(乘)、/(右除)、\(左除)、^(乘方). 加法:>> A+B ans = 9 3 9 7 10 13 6 12 7 减法:>> B-A ans = 7 -1 3 -1 0 1 2 6 -3 乘法:>> A*B ans = 26 38 26 71 83 71 45 62 43

(整理)matlab命令.

将excel数据导入 直接将下面三句话导入 [filename, pathname]= uigetfile('*.xls'); %寻找源文件 file=[pathname filename]; %赋名 x=xlsread(file); %格式转换为矩阵 之后就用x来代表导入的这个矩阵。 如excel 里输入了 1 2 3 4 5 6 如下命令 x(1,:) ans = 1 2 3 Matlab提供了从磁盘文件或剪贴簿转载数据至工作区(数据导入)和将工作区变量存入磁盘文件(数据导出)的多种途径。 最简单的办法是使用界面导入向导,打开文件菜单中的导入数据而后按提示操作。Matlab 支持的主要数据文件类型和对应函数如下: 导入文本文件 文本文件需要具备统一的行列模式,使用分隔符作为数据项间隔,这些分隔符包括空格、逗号、tab、分号或其它。数据文件可能附带标题行和行列头标签。 数值数据 对于数值数据可以直接使用load函数装载,例如my_data.txt中数据如下: 1 2 3 4 5 6 7 8 9 10 命令A = load('my_data.txt')装载该文本文件数据。 如果数值数据使用其它分隔符,可以使用dlmread读入,假设my_data.txt中数据如下:7.2;8.5;6.2;6.6

5.4;9.2;8.1;7.2 命令A = dlmread('my_data.txt', ';')读入该数据。 包含行列标签的数值数据 例如: Grade1 Grade2 Grade3 78.8 55.9 45.9 99.5 66.8 78.0 89.5 77.0 56.7 fid = fopen('grades.dat', 'r'); grades = textscan(fid, '%f %f %f', 3, 'headerlines', 1); fclose(fid); 包含字符和数值的混合数据 使用textread函数读入。 导出文本文件 save函数 A = [ 1 2 3 4 ; 5 6 7 8 ]; save my_data.out A –ASCII dlmwrite函数 dlmwrite('my_data.out',A, ';') MS-Excel电子表格文件 xlsinfo获得文件信息 使用命令[type, sheets] = xlsfinfo(filename)返回文件类型type和工作表信息。如:[type, sheets] = xlsfinfo('tempdata.xls') Xlswrite导出数据 d = {'Time', 'Temp'; 12 98; 13 99; 14 97} 命令xlswrite('tempdata.xls', d, 'Temperatures', 'E1')将单元格数组d的数据写出至tempdata.xls 文件,新建工作表'Temperatures',从该工作表的E1单元格开始写入。 Xlsread读入数据 ndata = xlsread('tempdata.xls', 'Temperatures') [ndata, headertext] = xlsread('tempdata.xls', 'Temperatures' )

相关文档
最新文档