1、MATLAB2009MATLAB2009从入门到精通从入门到精通2022-8-82课程主要内容课程主要内容 第1章 MATLAB简介 第2章 数值运算 第3章 单元数组和结构 第4章 字符串 第5章 符号运算 第6章 MATLAB绘图基础 第7章 程序设计 第8章 计算方法的MATLAB实现 第9章 优化设计 第10章 SIMULINK仿真初探2022-8-83第第7章章 程序设计程序设计 MATLAB作为一种广泛应用于科学计算的工具软件,不仅具有强大的数值计算、符号计算、矩阵运算的能力和丰富的绘图功能,还可以像C语言、FORTRAN等计算机高级语言一样进行程序设计,编写扩展名为.m的M文件,
2、实现各种复杂的运算,同时MATLAB自带的许多函数就是M文件函数,用户也可以利用M文件来生成和扩充自己的函数库。2022-8-847.1 脚本和函数 所谓M文件,简单来说就是用户把要实现的命令写在一个以.m作为扩展名的文件中,然后由MATLAB系统进行解释,最后运行出结果。M文件有函数和脚本两种格式。两者只是在语法和使用上有些不同。脚本式M文件没有输入参数或输出参数,而函数式M文件有输入参数和输出参数;函数可以有零个或多个输入或输出变量。2022-8-857.1.1 脚本 脚本是一个扩展名为.m的文件,其中包含了MATLAB的各种命令,与批处理文件很类似,在MATLAB命令窗口下直接输入此文件
3、的主文件名,MATLAB可逐一执行在此文件内的所有命令,和在命令窗口逐行输入这些命令一样。脚本式M文件运行产生的所有变量都是全局变量,运行脚本后,所产生的所有变量都驻留在MATLAB基本工作空间,只要用户不使用clear命令加以清除,且MATLAB指令窗口不关闭,这些变量将一直保存。基本空间随MATLAB的启动而产生,在关闭MATLAB软件时该基本空间被删除。例:huitu0.m2022-8-86huitu0程序结果2022-8-877.1.2 函数 MATLAB中许多常用的函数都是函数式M文件,使用时,MATLAB获取传递给它的变量,利用操作系统所给的输入,运算得到要求的结果,然后返回这些结
4、果。函数文件类似于一个黑箱,由函数执行的命令以及这些命令所创建的中间变量都是隐含的。运算过程中的中间变量都是局部变量(除特别声明外),存放在函数本身的工作空间内,不会和MATLAB基本工作空间的变量相互覆盖,对用户来说,可见的只是输入和输出,因此易于使程序模块化,特别适合于大型程序代码。例:huitu.m2022-8-88huitu(1,2,3)程序结果2022-8-897.2 M文件的程序结构 程序结构一般分为顺序结构、循环结构、分支结构三种。理论上讲,只要有以上三种结构就可以构造功能强大的程序。与大多数计算机语言一样,MATLAB也提供了上述三种程序结构。虽然MATLAB没有C语言那样具有
5、丰富的控制结构,但是MATLAB自身的强大功能弥补了这个不足,使用户在编程时几乎感觉不到困难。下面分别对这三种结构进行介绍。2022-8-8107.2.1 顺序结构 顺序结构就是依次顺序地执行程序的各条语句。顺序结构一般不含有其他子结构或控制语句,批处理文件就是典型的顺序结构的文件。例:jizhi.m2022-8-811jizhi程序结果2022-8-8127.2.2 循环结构 在实际计算中,经常会碰到许多有规律的重复计算,此时就要对某些语句进行重复执行。一组被重复执行的语句称为循环体,每个循环语句都要有循环条件,以判断循环是否要继续进行下去。MATLAB中的循环语句包括for循环与while
6、循环。2022-8-8131、for循环 for循环允许一组命令以固定的和预定的次数重复执行,for循环的一般形式如下所示:for 循环变量=数组 循环体(执行语句);end 在for与end语句之间的执行语句是按矩阵(或数组)中的每一列执行一次,即在每一次循环中,矩阵(或数组)元素一个一个地被赋给循环变量,然后由执行语句执行。例:for1.m,specmat.m2022-8-814程序结果 for1 x=Columns 1 through 7 2.0304 1.8008 1.5131 1.4165 1.7183 2.5111 3.7462 Columns 8 through 10 5.262
7、0 6.8587 8.38912022-8-815 specmat(6)ans=1 1 1 1 1 1 1 2 3 4 5 6 1 3 6 10 15 15 1 4 10 10 15 15 1 5 15 15 15 15 1 6 15 15 15 152022-8-816 用for循环语句需要注意以下事项:(1)不能在for循环体内重新对循环变量n赋值来终止循环的执行。(2)for循环可以进行嵌套循环。(3)循环语句内的“;”可防止中间变量的输出。2022-8-8172、while循环 与for循环固定的次数求一组命令的值相反,while循环以不定的次数来求一组命令的值。while循环的一般形
8、式如下:while 表达式 循环体();n+1;(自增)end 只要表达式中的元素为真,就执行while和end语句之间的命令。通常,表达式给出的是一个标量值,但数组(或矩阵)同样有效。若为数组(或矩阵),则要求所有的元素都必须为真。例:while1.m2022-8-818程序结果 while1 a=2.46192022-8-819程序实例 问题描述:根据统计学的基础知识分析样本的平均值和标准差。例:for2.m和while2.m1121121NNxxNsxNxNiiNiiNii2022-8-820程序结果 for2 Enter the number of the points:6 Enter
9、 the value:1 Enter the value:3 Enter the value:5 Enter the value:7 Enter the value:9 Enter the value:0 The mean of this data set is:4.166667 The standard deviation is:3.488075 The number of data is:62022-8-821 while2 Enter the first value:1 Enter the first value:3 Enter the first value:5 Enter the f
10、irst value:7 Enter the first value:9 Enter the first value:0 Enter the first value:-1 The mean of this data set is:4.166667 The standard deviation is:3.488075 The number of data is:62022-8-8227.2.3 分支结构 在程序设计中,经常要根据一定的条件来执行不同的语句。当某些条件满足时,只执行其中的某个语句或某些语句。在这种情况下,分支结构就会是很好的选择了。在MATLAB中的分支结构语句包括if-else-
11、end语句与switch-case-otherwise语句。2022-8-8231、if-else-end选择语句 if-else-end选择语句的结构如下所示:if条件式1 表达式1;elseif条件式2 表达式2;.else 表达式n;end 哪一个if后的表达式中值为真,就执行该if后的表达式,否则跳过该表达式进行其它判断。例:ff.m2022-8-824程序结果 ff(-1)ans=1 ff(2)ans=0.5000 ff(8)ans=0.9894 ff(16)ans=42022-8-825 采用plot(x,ff(x)绘分段函数图。x1=-2:0.01:0;x2=0.5:0.01:5
12、;x3=5.01:0.01:10;x4=10.01:0.01:12;plot(x1,ff(x1)hold on plot(x2,ff(x2)hold on plot(x3,ff(x3)hold on plot(x4,ff(x4)grid on2022-8-826程序结果2022-8-827 MATLAB中的选择语句switch-case-otherwise,是特别让熟悉C等高级语言的用户方便地编写M文件而专门添加的。switch-case-otherwise语句的通用格式如下:swith expression case value1 statements1;.case valuen state
13、mentsn;otherwise statements;end2、switch-case-otherwise分支语句2022-8-828 其中,switch-expression给出了开关条件,当有case-expression与之匹配时,就执行其后的语句,如果没有case-expression与之匹配,就执行otherwise后面的语句。在执行过程中,只有一个case命令被执行,当执行完命令后,程序就跳出分支结构,执行end下面的语句。例:fm.m2022-8-829程序结果 fm(0)ans=20 fm(1)ans=40 fm(2)ans=60 fm(3)ans=80 fm(5)ans=1
14、002022-8-830工程实例 问题描述:向上斜抛的小球,具有如下的运动模型,仿真小球的运动轨迹。例:ball.mgvytvxgvtvvvvyxyyx22sincos20max0max000002022-8-831程序结果 ball Enter the initial velocity:20 Range versus angle theta:0 0.0000 5 7.0732 10 13.9316 15 20.3666 20 26.1828 25 31.2034 30 35.2760 35 38.2767 40 40.11442022-8-832 45 40.7332 50 40.1144
15、55 38.2767 60 35.2760 65 31.2034 70 26.1828 75 20.3666 80 13.9316 85 7.0732 90 0.0000 Max ranges is 40.7332 at 45 degrees.2022-8-833图形结果2022-8-8347.3 程序流控制 在许多程序设计语言中,经常要碰到提前终止循环、跳出程序、显示出错信息等,此时就需要用到控制程序流的命令。在MATLAB中,同样有这样的程序控制流命令。下面逐一介绍MATLAB中的程序流的控制命令。2022-8-8351、continue命令 continue命令经常与for或while语
16、句一起使用,其作用是结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判断。注:注:当条件满足时,continue语句才被调用,跳出后面的语句,循环继续,条件不满足则继续执行后面的程序。例:continue1.m2022-8-836程序结果 continue1 3 5 7 9 11 4 6 8 10 12 5 7 9 11 13 6 8 10 12 14 7 9 11 13 15 8 10 12 14 16 9 11 13 15 17 10 12 14 16 18 11 13 15 17 19 12 14 16 18 20 2022-8-8372、break命令 br
17、eak命令也经常与for或while等语句一起使用,其作用是终止本次循环,跳出最内层的循环。使用break命令可以不必等到循环的自然结束,而是根据条件,强制退出循环。这在很多情况下是必须的。注:注:当条件满足时,break语句才被调用,系统将在循环尚未结束时跳出当前循环,条件不满足则继续执行后面的程序。例:jitu.m2022-8-838程序结果 jitu The number of chicken is 22.The number of rabbit is 14.2022-8-8393、return命令 return命令能使当前正在运行的函数正常退出,并返回调用它的函数,继续运行。这个语句经
18、常用于函数的末尾,以正常结束函数的运行。当然,也可用于函数的其他地方,对某些条件进行判断,如果条件不符合要求,调用return语句终止当前运行,并返回调用它的函数或环境。实际上,MATLAB中此语句的作用与其他的程序设计语言中的作用相同。例:dreturn.m2022-8-840程序实例 dreturn(2)ans=5 dreturn()ans=5 dreturn()ans=12022-8-8414、echo语句 通常在MATLAB中执行M文件时,在命令窗口是看不到执行过程的。但在特殊情况下,比如需要对M文件演示时,要求M文件的每条命令都要显示出来,此时用echo命令就可以实现这样的操作。对于
19、脚本式M文件与函数式M文件,echo命令略有不同。对于脚本式M文件,可以用以下方式来实现:echo on%显示其后所有执行的命令文件的指令 echo off%不显示其后所有执行的命令文件的指令 echo%在上述两种情况下进行切换 对于函数式M文件,可以用以下方式来实现:echo filename on%使filename指定的M文件的执行指令显示出来 echo filename off%使filename指定的M文件的执行指令不显示出来 echo on all%其后的所有M文件的执行指令显示2022-8-8425、error语句 在进行程序设计时,许多情况下有错误出现,此时如果能把错误信息显示
20、出来,那样就会使用户了解到是什么原因引起错误,以采取适合的方式防止错误的再次发生。MATLAB中的error(错误信息?就用于实现上述功能。此命令能显示错误信息并终止当前函数的运行,将控制信息返回到键盘。该指令用来指示出错信息并终止当前函数的运行。error(message)类似的是warning,区别是warning之后程序继续运行。2022-8-8436、try.catch语句 try.catch语句的作用与上面的error语句类似,是用于对异常进行处理的命令。把有可能引起异常的语句放在try控制块中,这样当try控制块中statement语句引起异常时,catch控制块就可以捕获它,并针
21、对不同的错误类型,进行不同的处理。它与C+程序设计语言中的try.catch命令作用一样。try.catch命令的调用格式如下:try(commands1),catch(commands2),end 组命令1总被执行,当执行出现错误时,catch控制块就可捕获它,执行组命令2,针对不同错误类型进行不同的处理。可用lasterr函数查询出错原因。注意try和catch控制块中的语句之间用逗号隔开。例:chucuo.m2022-8-844程序结果 chucuo a_end=4 9 2 ans=Attempted to access a(4,:);index out of bounds becaus
22、e size(a)=3,3.2022-8-8457、input语句 input命令用来提示用户从键盘输入数据、字符串或表达式,并接受输入值。r=input(prompt)在屏幕上显示提示信息prompt,等待用户输入,并将值赋给r,直接回车则输出空矩阵。r=input(prompt,s)返回的字符串作为文本变量而不作为变量名或者数值。例:test.m2022-8-846程序结果 test Do you want more?Y/NY:Y you have selected the first character test Do you want more?Y/NY:N you have sele
23、cted the second one test Do you want more?Y/NY:s you have selected the second one2022-8-8478、pause命令 pause命令用于暂时终止程序的运行,等待用户按任意键继续进行。pause暂停M文件的执行,按任意键继续 pause(n)终止程序n秒,n是任意实数 pause on允许后面的pause命令起作用 pause off使后面的pause命令不起作用 例:pause1.m2022-8-8487.4 脚本文件 脚本文件只是逐条的解释文件中的程序条,与命令窗口直接输入一样,只是它具有了存储能力,且可以方
24、便的多次运行该程序段,在命令窗口中只需输入存储的文件名即可,且存储的文件名没有特殊要求。脚本文件中可以调用函数,只需调用函数名即可。2022-8-8497.5 函数文件 函数的格式必须加function,并且M文件的存储名必须与函数名相同。一般函数都有输入和输出。2022-8-850谢谢!2022-8-851huitu0.m x=-pi:0.01:pi;y=cos(x);plot(x,y);grid on返回2022-8-852huitu.m function f=huitu(a,b,c)x=-pi:0.01:pi;f=a*sin(b*x+c);plot(x,f);grid on返回2022-
25、8-853jizhi.m x=-pi:0.01:pi;y=sin(x)+sin(2*x)-cos(3*x);h=plot(x,y);x=get(h,XData);y=get(h,YData);imin=find(min(y)=y);imax=find(max(y)=y);hold on text(x(imin),y(imin),minimum=,num2str(y(imin);text(x(imax),y(imax),maximum=,num2str(y(imax);grid on plot(x(imin),y(imin),o)plot(x(imax),y(imax),*)返回2022-8-8
26、54for1.m for n=1:10 x(n)=exp(n/5)+cos(n*pi/5);end x返回2022-8-855specmat.m function A=specmat(n)A=ones(n);for r=1:n for c=1:n if r1&c1 s=A(r-1,c)+A(r,c-1);if s20 A(r,c)=s;else A(r,c)=max(A(r-1,c),A(r,c-1);end end end end返回2022-8-856while1.m n=1;a=0;while n10 a=a+log(n)/n;n=n+1;end a返回2022-8-857for2.ms
27、um1=0;sum2=0;n=input(Enter the number of the points:);if n=0 n=n+1;sum1=sum1+x;sum2=sum2+x2;x=input(Enter the first value:);end xvar=sum1/n;std_dev=sqrt(n*sum2-sum12)/(n*(n-1);fprintf(The mean of this data set is:%fn,xvar);fprintf(The standard deviation is:%fn,std_dev);fprintf(The number of data is:
28、%dn,n);返回2022-8-859ff.m function y=ff(x)if x=0 y=x.2;elseif 0 x&x=5 y=1./x;elseif 5x&x10 y=x./4;end返回2022-8-860fm.m function f=fm(n)switch n case 0 f=20;case 1 f=40;case 2 f=60;case 3 f=80;otherwise f=100;end返回2022-8-861ball.m conv=pi/180;g=-9.82;v0=input(Enter the initial velocity:);range=zeros(1,9
29、1);%计算最大的水平距离。for i=1:91 theta=i-1;vx0=v0*cos(theta*conv);vy0=v0*sin(theta*conv);maxtime=-2*vy0/g;range(i)=vx0*maxtime;end2022-8-862%显示计算水平距离的列表。fprintf(Range versus angle theta:n);for i=1:5:91 theta=i-1;fprintf(%2d%8.4fn,theta,range(i);end%计算最大的角度和水平距离。maxrange index=max(range);maxangle=index-1;fpr
30、intf(n Max ranges is%8.4f at%2d degrees.n,maxrange,maxangle);2022-8-863%绘制轨迹图形。for i=5:10:80 theta=i;vx0=v0*cos(theta*conv);vy0=v0*sin(theta*conv);maxtime=-2*vy0/g;%计算小球轨迹的x,y坐标数值。x=zeros(1,21);y=zeros(1,21);for j=1:21 time=(j-1)*maxtime/20;x(j)=vx0*time;y(j)=vy0*time+0.5*g*time2;end plot(x,y,g)if i
31、=5 hold on;endend2022-8-864%添加图形的标题和坐标轴名称。title(Trajectory of Ball vs Initial Angletheta);xlabel(x(meters);ylabel(y(meters);axis(0 max(range)+5 0-v02/2/g);grid on2022-8-865%绘制最大水平的轨迹图形。vx0=v0*cos(maxangle*conv);vy0=v0*sin(maxangle*conv);maxtime=-2*vy0/g;x=zeros(1,21);y=zeros(1,21);for j=1:21 time=(j
32、-1)*maxtime/20;x(j)=vx0*time;y(j)=vy0*time+0.5*g*time2;end plot(x,y,r,Linewidth,2);返回2022-8-866continue1.m for i=1:10 for j=1:10 if mod(j,2)=1 continue else fprintf(%d ,i+j)end end fprintf(n);end返回2022-8-867jitu.m i=1;while i0 if(i+(100-i*2)/4)=36&rem(100-i*2,4)=0%if rem(100-i*2,4)=0&(i+(100-i*2)/4)
33、=36 break%continue%i=i+1;end i=i+1;n1=i;n2=(100-2*i)/4;%break end fprintf(The number of chicken is%d.n,n1);fprintf(The number of rabbit is%d.n,n2);返回2022-8-868dreturn.m function d=dreturn(a)if isempty(a)d=1;return else d=5;end返回2022-8-869chucuo.m clear;n=4;a=magic(3);try a_n=a(n,:),catch a_end=a(end
34、,:),end lasterr返回2022-8-870test.m function test()r=input(Do you want more?Y/NY:,s);if isempty(r)r=Y;%keyboard end if r=Y disp(you have selected the first character);else disp(you have selected the second one);end返回2022-8-871pause1.m x=0:0.01:4*pi;y=sin(x);z=cos(x);r=y+z;plot(x,y)hold on pause plot(x
35、,z)hold on pause(5)plot(x,r)返回11醉翁亭记 1反复朗读并背诵课文,培养文言语感。2结合注释疏通文义,了解文本内容,掌握文本写作思路。3把握文章的艺术特色,理解虚词在文中的作用。4体会作者的思想感情,理解作者的政治理想。一、导入新课范仲淹因参与改革被贬,于庆历六年写下岳阳楼记,寄托自己“先天下之忧而忧,后天下之乐而乐”的政治理想。实际上,这次改革,受到贬谪的除了范仲淹和滕子京之外,还有范仲淹改革的另一位支持者北宋大文学家、史学家欧阳修。他于庆历五年被贬谪到滁州,也就是今天的安徽省滁州市。也是在此期间,欧阳修在滁州留下了不逊于岳阳楼记的千古名篇醉翁亭记。接下来就让我们
36、一起来学习这篇课文吧!【教学提示】结合前文教学,有利于学生把握本文写作背景,进而加深学生对作品含义的理解。二、教学新课目标导学一:认识作者,了解作品背景作者简介:欧阳修(10071072),字永叔,自号醉翁,晚年又号“六一居士”。吉州永丰(今属江西)人,因吉州原属庐陵郡,因此他又以“庐陵欧阳修”自居。谥号文忠,世称欧阳文忠公。北宋政治家、文学家、史学家,与韩愈、柳宗元、王安石、苏洵、苏轼、苏辙、曾巩合称“唐宋八大家”。后人又将其与韩愈、柳宗元和苏轼合称“千古文章四大家”。关于“醉翁”与“六一居士”:初谪滁山,自号醉翁。既老而衰且病,将退休于颍水之上,则又更号六一居士。客有问曰:“六一何谓也?”
37、居士曰:“吾家藏书一万卷,集录三代以来金石遗文一千卷,有琴一张,有棋一局,而常置酒一壶。”客曰:“是为五一尔,奈何?”居士曰:“以吾一翁,老于此五物之间,岂不为六一乎?”写作背景:宋仁宗庆历五年(1045年),参知政事范仲淹等人遭谗离职,欧阳修上书替他们分辩,被贬到滁州做了两年知州。到任以后,他内心抑郁,但还能发挥“宽简而不扰”的作风,取得了某些政绩。醉翁亭记就是在这个时期写就的。目标导学二:朗读文章,通文顺字1初读文章,结合工具书梳理文章字词。2朗读文章,划分文章节奏,标出节奏划分有疑难的语句。节奏划分示例环滁/皆山也。其/西南诸峰,林壑/尤美,望之/蔚然而深秀者,琅琊也。山行/六七里,渐闻
38、/水声潺潺,而泻出于/两峰之间者,酿泉也。峰回/路转,有亭/翼然临于泉上者,醉翁亭也。作亭者/谁?山之僧/曰/智仙也。名之者/谁?太守/自谓也。太守与客来饮/于此,饮少/辄醉,而/年又最高,故/自号曰/醉翁也。醉翁之意/不在酒,在乎/山水之间也。山水之乐,得之心/而寓之酒也。节奏划分思考“山行/六七里”为什么不能划分为“山/行六七里”?明确:“山行”意指“沿着山路走”,“山行”是个状中短语,不能将其割裂。“望之/蔚然而深秀者”为什么不能划分为“望之蔚然/而深秀者”?明确:“蔚然而深秀”是两个并列的词,不宜割裂,“望之”是总起词语,故应从其后断句。【教学提示】引导学生在反复朗读的过程中划分朗读节
39、奏,在划分节奏的过程中感知文意。对于部分结构复杂的句子,教师可做适当的讲解引导。目标导学三:结合注释,翻译训练1学生结合课下注释和工具书自行疏通文义,并画出不解之处。【教学提示】节奏划分与明确文意相辅相成,若能以节奏划分引导学生明确文意最好;若学生理解有限,亦可在解读文意后把握节奏划分。2以四人小组为单位,组内互助解疑,并尝试用“直译”与“意译”两种方法译读文章。3教师选择疑难句或值得翻译的句子,请学生用两种翻译方法进行翻译。翻译示例:若夫日出而林霏开,云归而岩穴暝,晦明变化者,山间之朝暮也。野芳发而幽香,佳木秀而繁阴,风霜高洁,水落而石出者,山间之四时也。直译法:那太阳一出来,树林里的雾气散
40、开,云雾聚拢,山谷就显得昏暗了,朝则自暗而明,暮则自明而暗,或暗或明,变化不一,这是山间早晚的景色。野花开放,有一股清幽的香味,好的树木枝叶繁茂,形成浓郁的绿荫。天高气爽,霜色洁白,泉水浅了,石底露出水面,这是山中四季的景色。意译法:太阳升起,山林里雾气开始消散,烟云聚拢,山谷又开始显得昏暗,清晨自暗而明,薄暮又自明而暗,如此暗明变化的,就是山中的朝暮。春天野花绽开并散发出阵阵幽香,夏日佳树繁茂并形成一片浓荫,秋天风高气爽,霜色洁白,冬日水枯而石底上露,如此,就是山中的四季。【教学提示】翻译有直译与意译两种方式,直译锻炼学生用语的准确性,但可能会降低译文的美感;意译可加强译文的美感,培养学生的
41、翻译兴趣,但可能会降低译文的准确性。因此,需两种翻译方式都做必要引导。全文直译内容见我的积累本。目标导学四:解读文段,把握文本内容1赏析第一段,说说本文是如何引出“醉翁亭”的位置的,作者在此运用了怎样的艺术手法。明确:首先以“环滁皆山也”五字领起,将滁州的地理环境一笔勾出,点出醉翁亭坐落在群山之中,并纵观滁州全貌,鸟瞰群山环抱之景。接着作者将“镜头”全景移向局部,先写“西南诸峰,林壑尤美”,醉翁亭坐落在有最美的林壑的西南诸峰之中,视野集中到最佳处。再写琅琊山“蔚然而深秀”,点山“秀”,照应上文的“美”。又写酿泉,其名字透出了泉与酒的关系,好泉酿好酒,好酒叫人醉。“醉翁亭”的名字便暗中透出,然后
42、引出“醉翁亭”来。作者利用空间变幻的手法,移步换景,由远及近,为我们描绘了一幅幅山水特写。2第二段主要写了什么?它和第一段有什么联系?明确:第二段利用时间推移,抓住朝暮及四季特点,描绘了对比鲜明的晦明变化图及四季风光图,写出了其中的“乐亦无穷”。第二段是第一段“山水之乐”的具体化。3第三段同样是写“乐”,但却是写的游人之乐,作者是如何写游人之乐的?明确:“滁人游”,前呼后应,扶老携幼,自由自在,热闹非凡;“太守宴”,溪深鱼肥,泉香酒洌,美味佳肴,应有尽有;“众宾欢”,投壶下棋,觥筹交错,说说笑笑,无拘无束。如此勾画了游人之乐。4作者为什么要在第三段写游人之乐?明确:写滁人之游,描绘出一幅太平祥
43、和的百姓游乐图。游乐场景映在太守的眼里,便多了一层政治清明的意味。太守在游人之乐中酒酣而醉,此醉是为山水之乐而醉,更是为能与百姓同乐而醉。体现太守与百姓关系融洽,“政通人和”才能有这样的乐。5第四段主要写了什么?明确:写宴会散、众人归的情景。目标导学五:深入解读,把握作者思想感情思考探究:作者以一个“乐”字贯穿全篇,却有两个句子别出深意,不单单是在写乐,而是另有所指,表达出另外一种情绪,请你找出这两个句子,说说这种情绪是什么。明确:醉翁之意不在酒,在乎山水之间也。醉能同其乐,醒能述以文者,太守也。这种情绪是作者遭贬谪后的抑郁,作者并未在文中袒露胸怀,只含蓄地说:“醉能同其乐,醒能述以文者,太守
44、也。”此句与醉翁亭的名称、“醉翁之意不在酒,在乎山水之间也”前后呼应,并与“滁人游”“太守宴”“众宾欢”“太守醉”连成一条抒情的线索,曲折地表达了作者内心复杂的思想感情。目标导学六:赏析文本,感受文本艺术特色1在把握作者复杂感情的基础上朗读文本。2反复朗读,请同学说说本文读来有哪些特点,为什么会有这些特点。(1)句法上大量运用骈偶句,并夹有散句,既整齐又富有变化,使文章越发显得音调铿锵,形成一种骈散结合的独特风格。如“野芳发而幽香,佳木秀而繁阴”“朝而往,暮而归,四时之景不同,而乐亦无穷也”。(2)文章多用判断句,层次极其分明,抒情淋漓尽致,“也”“而”的反复运用,形成回环往复的韵律,使读者在
45、诵读中获得美的享受。(3)文章写景优美,又多韵律,使人读来不仅能感受到绘画美,也能感受到韵律美。目标导学七:探索文本虚词,把握文言现象虚词“而”的用法用法文本举例表并列1.蔚然而深秀者;2.溪深而鱼肥;3.泉香而酒洌;4.起坐而喧哗者表递进1.而年又最高;2.得之心而寓之酒也表承接1.渐闻水声潺潺,而泻出于两峰之间者;2.若夫日出而林霏开,云归而岩穴暝;3.野芳发而幽香,佳木秀而繁阴;4.水落而石出者;5.临溪而渔;6.太守归而宾客从也;7.人知从太守游而乐表修饰1.朝而往,暮而归;2.杂然而前陈者表转折1.而不知人之乐;2.而不知太守之乐其乐也虚词“之”的用法用法文本举例表助词“的”1.泻出
46、于两峰之间者;2.醉翁之意不在酒;3.山水之乐;4.山间之朝暮也;5.宴酣之乐位于主谓之间,取消句子独立性而不知太守之乐其乐也表代词1.望之蔚然而深秀者;2.名之者谁(指醉翁亭);3.得之心而寓之酒也(指山水之乐)【教学提示】更多文言现象请参见我的积累本。三、板书设计路线:环滁琅琊山酿泉醉翁亭风景:朝暮之景四时之景山水之乐(醉景)风俗:滁人游太守宴众宾欢 太守醉宴游之乐(醉人)心情:禽鸟乐人之乐乐其乐与民同乐(醉情)可取之处重视朗读,有利于培养学生的文言语感,并通过节奏划分引导学生理解文意,突破了仅按注释疏通文义的桎梏,有利于引导学生自主思考;不单纯关注“直译”原则,同时培养学生的“意译”能力,引导学生关注文言文的美感,在一定程度上有助于培养学生的核心素养。不足之处文章难度相对较高,基础能力低的学生难以适应该教学。会员免费下载
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。