❶ 浅谈如何在面上中学开展《算法与程序设计》教学
高中信息技术学科选修模块《算法与程序设计》内容枯燥、严谨,对于我们学生来说缺乏相关的知识背景,在高中阶段才开始学习信息技术课难度大,也容易产生畏难情绪。那么对于学生来说怎样才能上好这门课呢?
一、首先教师应根据学生的实际情况,处理教材,分散难点
新课标指出:“学习本模块旨在使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题。”算法是程序设计的灵魂,算法教学是程序设计语言教学的基础,程序设计语言教学是算法教学的必要的延续。
教科版的《算法与程序设计》,使用的编程语言是VisualBasic6.0。它和大多数程序设计语言书籍一样,先花大量的篇幅介绍与VB语言开发环境及语法相关的基础知识和基本概念,而后才开始程序三种基本结构的教学。教师根据学生的实际情况,对教材进行了处理、对内容进行调整,改变了教材中原有知识的逻辑结构顺序。这样学生可以边用边学,以用促学。
教师在每节课教学过程中都以简单有趣的小问题为切入点,通过分析问题、设计算法、编写程序、调试运行,让学生对算法和程序设计有一个感性的认识,以降低学生的学习难度,并激发学生的学习兴趣,观摩、模仿、尝试等阶段逐渐到学生能独立操作。开始选择的例子比较简单,如“在屏幕上输出‘studyVB’”、“已知三边之长求三角形面积”、“计算前100个自然数之和”等。在此过程中适当忽略VB的可视化开发环境,其中数据的输入只要求用inputbox()函数完成,数据的输出直接用print语句在窗体完成,整个事件只要求由命令按钮command1_click()来触发,这样的目的一方面是减少太多新知识对学生学习算法思想的干扰,将难点分散,另一方面控件少的程序也更容易上机调试通过,让学生体验成功的喜悦。
二、其次教师应联系学生的数学知识,进行算法与程序设计练习
算法是解决问题的方法和步骤,计算机解决问题,必须严格地按步骤进行,这和我们平时解决问题是有区别的。因此在算法设计中,应将解题的每一步都想清楚,对学生逻辑思维能力要求较高,许多同学刚开始不太适应。因此教师在教学过程中,精选教学案例,联系学生的数学知识,从学生熟悉的或感兴趣的数学问题出发,进行算法与程序设计的练习。学生刚刚学习过海伦公式,在顺序结构和选择结构的教学中可采用“已知三边长利用该公式来求三角形的面积”这个例子。因为学生有数学基础,只要将解题步骤稍加修改就写出如下算法:
1.输入三边长;
2.求面积;
3.利用海伦公式s=p(p-a)(p-b)(p-c),p=a+b+c2,求出面积s;
4.输出面积s;
5.结束程序。
根据此算法编写好程序,在调试运行中发现如果三边长为10,10,30时就不会输出结果。那么是为什么呢?学生很快就想到这样的三条边是组不成三角形的,怎么改?自然是输入的a、b、c要先满足两边之和大于第三边才能组成三角形的,所以要在第二步之前添加一句,“如果不能同时满足,就输出‘输入数据错误’,转5;否则转2”。通过以上的例子,既体会到了算法的严谨性,学生也学会了顺序和选择两种结构的算法描述。
教师还用趣味数学题来激发学生的兴趣,如在学习过程中老师通过讲解“水仙花数”、“百鸡百钱”、“韩信点兵”、“棋盘上的麦粒”、“鸡兔同笼”等问题来激发学生的学习兴趣,以使大家的积极性得到提高。
三、一题多变,提高学生对知识的理解能力和编程能力
学生固有的认识框框和习惯的思维方式是学好算法与程序设计的一大障碍。只有多实践才能体会和认识到计算机解决问题的过程。然而由于课时限制,不可能有太多的时间来进行这方面的训练。教师如能恰当地运用“一题多变”和“一题多解”等方法,精心选择一道例题,让它由浅入深循序变化,引导学生分析和比较,总结解决问题的一般规律,对弄清基本概念,提高解题能力以及培养思维的灵活性都是有益的。例如,对于“求s=1+2+3+4+5+6的一个算法”就可以拓展以解决一类问题,如s=12+22+32+42+52+62,s=1+12+13+14+15+16,s=1-2+3-4+5-6,s=1×2×3×4×5×6等许多问题。这样引导学生对比for-next以及do-loop循环的语法及适用情况。通过“一题多变”和“一题多解”的教学手段,使课堂效率得到了大大地提高。
四、教师应授之以渔,教会学生自己调试程序
《算法与程序设计》模块是作为计算机应用的技术基础设置的,不能忽视技术,但我们强调的技术不再是以前那种“软件说明书”式的操作。实际上对学生来说,犯的错误具有共性,主要是标点符号错误,比如“:”和“;”,关键词与变量名之间没有空格,语句书写不完整,有if没有endif,有for没有next,变量名、对象名引用时出现拼写错误等,其实学生只要掌握一点调试、运行程序的方法就能大大提高上机效率。通过训练学生不但能自己调试程序,更能加深对程序的理解,尤其是到循环结构以后,这种作用就更明显了,而且这种能力完全可以迁移到今后的学习和生活中去。
新课程目前还处在实验阶段,存在着很大的探索空间。对学生来说,激发他们的学习兴趣、提高他们的积极性、不断进行创新的同时提高教师自身的信息素养水平。教师不再只是教学者,更应该成为研究者和学习者,教师应加强教学反思,才能提高教学水平。
❷ 数据结构和算法高中生能学吗
数据结构和算法是计算机编程的基础内容,也是很重要的内容,一般是熟悉一门编程语言后学习,另外还需要对计算机组成原理有一定的了解,高中生是能够学懂的。不过,虽说能够学懂,从懂到理解,再到活用还有很长一段路走,需要花很多精力的。如果你只是编程玩玩,学的是VB、C#、初级JAVA、Delphi之类的编程语言,暂时用处不大;但如果你是对编程有很高的要求,很感兴趣,使用C/C++等编程,数据结构和算法是必学的内容
另外你也可以考虑先学一些简单的算法,再学数据结构,再学高级算法
亲,绝对原创,售后三包的哦! 求好评!+1
❸ 中学计算机算法题
帮助别人,不求回报!虽然我帮不了你,但是总有人会帮你的!
❹ 关于高中计算机内容
高中计算机内容
《普通高中信息技术课程标准》
通过审议!2003年1月6日,教育部邀请了100多位学者、专家,在北京大兴区国家教育行政学院“校长大厦”召开了“普通高中课程标准(送审稿)审议工作会”。教育部基础教育司司长李连宁主持了全体会议。教育部副部长王湛介绍了基础教育课程改革的情况,讲解了我国普通高中课程改革的历程和普通高中新课程方案的研制过程,提出了对审议工作的意见和建议,希望专家们能“把好指导思想关”、“把好政治关”、“把好科学关”。
据介绍,各课程标准于3月底正式印发!!
全日制普通高中技术领域(信息技术)课程标准内容共有:
一、课程的基本理念;
二、课程设计思路;
三、课程目标;
四、内容标准(信息技术基础、算法与程序设计、多媒体技术应用、网络技术应用、数据管理技术、人工智能初步);
五、实施建议(教学建议、评价建议、教科书编写建议、课程资源的利用与开发);
六、案例
一、课程的基本理念
1、提升信息素养,培养信息时代的合格公民。
2、营造良好的信息环境,打造终生学习的平台。
3、关照全体学生,建设有特色的信息技术课程。
4、强调问题解决,倡导运用信息技术进行创新实践。
5、注重交流与合作,共同建构健康的信息文化。
二、课程设计思路
1、课程设计思路与模块结构
高中信息技术课程内容的设计坚持以下三点:第一、有利于学生个性发展的课程结构形式;第二、切实针对学生身心发展特点的课程内容;第三、信息技术应用能力与人文素养培养相融合的课程目标。
高中信息技术课程包括必修和选修两个部分,共包括六个模块。
必修部分只有一个模块“信息技术基础”(2学分),建议在高中第一、二学期开设。与九年义务教育阶段相衔接,是信息素养的基础,是学习后续选修模块的前提。
选修部分包括“信息技术基础”、“算法与程序设计”、“多媒体技术应用”、“网络技术应用”、“数据管理技术”、“人工智能初步”,每个模块2学分。
在必修模块的基础上,关注技术能力与人文素养的融合建构,是信息素养基础的继续。模块内容设计既注意技术深度和广度的把握、前沿进展的适度反映,同时关注信息文化理念的表述。建议在高中二年级第一、二学期或以后开设。
高中信息技术课程总学分为2+2+(x)其中必修2学分,科目内选修2学分,跨领域选修x学分。每个学生必须修满4学分,才能取得高中毕业资格。
2、标准条例说明
高中信息技术课程标准内容的撰写,采用“内容标准”、“活动建议”相结合并附以例子的形式。内容标准是主体,首先坚持灵活性,既给出每一部分的基本要求,又给教材编写、教学活动和工具的选用等留有多样化的发挥空间;其次注重时效性,以保证在本标准实施期间对信息技术教学的有效指导。例子是对内容的具体诠释。活动建议是对教学活动的引导。
3、学习目标要求与行为动词使用。
三、课程目标
总目标是培养学生的信息素养。信息素养包括:信息的获取、加工、管理、呈现与交流的基本能力;对信息及信息活动的过程、方法、结果进行评价的能力;流畅地发表观点、发表思想、开展合作并解决学习和生活中的实际问题的能力;遵守道德与法律法规,形成与信息社会相适应的价值观和责任感。
高中学生信息素养提升具体体现在以下三个方面的全面发展:
(一)知识与技能
1、理解信息及信息技术的概念与特征,了解利用常用信息技术获取、加工、管理、表达与交流信息的基本工作原理,了解信息技术的发展趋势。
2、能熟练地操作并应用常用信息技术工具,能适应信息技术的发展变化,初步形成自主学习新信息技术的能力。
(二)过程与方法
能从日常生活、学习中发现或归纳需要利用信息和信息技术解决的问题,能通过问题分析确定信息需求。
4、能根据任务的要求,确定所需信息的类型和来源,能评价信息的真实性、准确性和相关性。
5、能选择合适的信息技术进行有效的信息采集、存储和管理。
6、能熟练运用信息技术,通过有计划的、合理的信息加工解决实际问题,辅助其他学科学习,创作信息作品。
7、能采用适当的工具和方式呈现信息、发表观点、交流思想、开展合作。
8、能对自己和他人信息活动的过程和结果进行评价,能归纳利用信息技术解决问题的基本思想方法。
(三)情感态度与价值观
体验信息技术蕴涵的文化内涵,形成和保持对信息技术的求知欲,养成积极主动地学习和使用信息技术、参与信息活动的态度。
10、能辩证地认识信息技术对社会发展、科技进步和日常生活学习的影响。
11、能理解并遵守与信息活动相关的法律法规和道德规范,负责任地、安全地、健康地使用信息技术。
四、基本框架
高中信息技术课程总学分为2+2+(x)其中必修2学分,科目内选修2学分,跨领域选修x学分。每个学生必须修满4学分。
必修2学分:信息技术基础
选修2+(x)学分:算法与程序设计、多媒体技术应用、网络技术应用、数据管理技术、人工智能初步
五、模块简介
必修模块:信息技术基础
包括2个主题:信息处理与交流(信息的获取、信息加工与表达、信息资源管理)、信息技术与社会
(1)能够根据任务需求,熟练使用文字处理、图表处理等工具软件加工信息,表达意图;选择恰当的工具软件处理多媒体信息,呈现主题,表达创意。
(2)合乎规范地使用网络等媒介发布信息、表达思想。
(3)初步掌握用计算机进行信息处理的几种基本方法,认识其工作过程与基本特征。
选修模块1:算法与程序设计
由3个主题组成:计算机解决问题的基本过程、面向对象程序设计语言初步、算法例举
选修模块2:多媒体技术应用
由3个主题组成:多媒体技术与社会生活、多媒体信息采集与加工、多媒体信息表达
选修模块3:网络技术应用
由3个主题组成:因特网应用、网络技术基础、网站设计与评价
选修模块4:数据管理技术
由3个主题组成:数据管理基本知识、数据库建立使用与维护、数据库应用系统
选修模块5:人工智能初步
由3个主题组成:知识及其表达、推理与专家系统、人工智能语言与问题求解
(说明:普通高中课标还没有最后定稿并公布,以上只是根据课标组的介绍材料整理,希望能引起大家的兴趣并参与讨论)
❺ 初中生学计算机最开始要学什么
初中生想学习计算机,首先第一步你应该要了解你自己今后是否打算从事计算机领域的工作。
第二步就是确立自己的计算机兴趣,首先是从入门级的基础学习开始。
C语是必修课,这也是你从事学习计算机的入门。
C是一种编程语言,JAVA是入门基础,用于软件开发,JavaScript是使用人数最多的编程语言,如果你今后有考虑过应用开发,这个是必须要学习的。
在学习JAVA基础入门的计算机专业,你也需要了解这些,比如:计算机的数据结构与算法、计算机的组成和原理、计算机的操作系统、计算机的网络。
在网上实践的同时,也应该提升自我计算机学习知识点。
给你推荐几本入门级计算机书籍:《计算机组成原理与结构》、《算法设计与分析》、《C程序设计语言》、《JAVA编程思想》、《JAVA设计模式》,这几本书是从计算机的结构到编程,对你初学非常有帮助。
在补充:学习计算机是一件很枯燥乏味的事,因为只有你一个在摸索,如果只是爱好,可以学习一些自己感兴趣的编程,不用全部都学习,如果打算今后参加计算机类的工作,那么应该多学习多实践。
❻ 高中计算机课程具体有哪些内容
我是今年毕业的~~前面的同学讲的差不多了,我要么补充一下计算机考试时的情况……希望有所帮助……
计算机考试是通过上机操作进行的,有时间限制。开始有几十道单选题,接下来是一些基本的电脑的使用操作
比如:word文档中对文字字体的选择,颜色的改变,分行,添加下划线等操作。还有excel的表格制作中对数据的处理什么的,总之是一般文员也要用到的程序的考察。这两个对于我们平常只用电脑上网的学生是比较难的……临近考试的几节电脑课,老师也许会教我们。
然后是会叫你打一个网站的地址,连接上后会叫你保存什么的操作,还比较简单。至于选择题,有些很简单,有些就算翻书也找不到……那就只能看命了,因为每个学生的题都不一样……书还是要看的,重点是概念,虽然不能全记下来,但看了会有印象,答题会快一点的。
有时间多可以检查一下,但看看选择就可以了,不要再看操作题,否则会要重新操作,时间可能不够。
大概就这些,考试不会很难,大部分都会通过,放心好了……
❼ 如何理解算法进入中学数学内容的必要性
算法在科学研究中具有普遍意义.解决科学研究中的问题需要一定的方法,但"方法"这一概念含义广泛而不具体,而算法与一般方法相比,则更具体、更精确,因为它是能行的、可操作的.能解决某个科学上的问题,实质上就是意味着掌握了或找到了某种算法.某一问题的可解性意味着能够找到一个适当的算法,而某一问题的不可解性则意味着不可能找到一个适当的算法,或证明这样的算法不存在.在科学史上,很多研究工作的任务和目的,就是要寻找解决某个问题的算法.
在新高中数学课程标准中,我们注意到算法作为必修部分进入了中学数学.标准中写到:“算法是一个全新的课题,已经成为计算机科学的核心,它在科学技术和社会发展中起着越来越重要的作用.算法的思想和初步知识,也正在成为普通公民的常识.在必修课程中学习算法的基本思想和初步知识,算法思想将贯穿高中数学课程的相关部分.”可是,到底算法引进中学的意义是什么?本文
算法学习的意义
“计算机既是数学的创造物,又是数学的创造者”,而算法既是计算机理论和实践的核心,也是数学的最基本内容之一.甚至有人说,数学学习的主要作用是形成“算法思维”.算法有着悠久的发展历史,中国古代数学曾经以算法为特色,取得了举世瞩目的辉煌成就.在已经逐步进入信息化社会的今天,算法的基本知识、方法、思想日益融入人们社会生活的方方面面,已经也应该成为现代人所应具备的一种基本素质.
我们认为学生学习算法有以下几个方面的意义:
算法学习有助于我们全面的理解运算能力
很多时候,人们对运算存在一些误解,认为运算就是按照各种运算法则进行加、减、乘、除,从而学习运算就是背诵书本中给出的计算法则,形成一些基本的计算技巧,也就是说,能够根据熟记的法则,迅速的计算给定式子的正确答案.
实际上,按照算法规则进行逻辑推理而获得正确结果仅仅是计算的很小的一个方面,更重要的是,在运算中构造、设计、选择一个合理的,算法理解相应的算理.在算法学习中,我们要让学生给出一个问题的不同算法,并比较这些算法的优劣,并作出选择,从而提高效率,而这个过程才是一个真正的运算过程,因此算法学习使得我们更加全面的理解运算能力.
算法学习能够培养学生的逻辑思维能力
我们常常说数学是思维的体操,能够训练学生的思维能力.算法作为数学的一个基本内容,在培养学生的逻辑思维能力上能够发挥重要的作用.
算法是解题方法的精确描述.算法一方面具有具体化、程序化、机械化的特点,同时又有高度抽象性、概括性和精确性.因此,将解决具体问题的方法整理成算法的过程是一个条理化,精确化和逻辑化的过程,有助于培养学生的逻辑思维能力.
我们学过一元一次方程的求解,任意给一个一元一次方程,比如说
3 x + 5 = 0
我们都会解这样的方程.它的解是
x = - 5/ 3.
我们说计算机能够帮助人完成很多工作.但是计算机毕竟和人脑有着本质的区别,它是机械的,在没有的指令的情况下,它是不会思维的,不能进行任何判断.算法是连接人和计算机的纽带,这些思维的过程,判断的过程我们都要精心的设计到算法里面,作为指令教给计算机去完成.
比如我们需要写个算法让计算机来解方程.
ax + b = 0
其中参数由键盘任意输入,让计算机输出结果.
我们能说凡是这样的方程就让计算机输出:
“x = - b/ a”就可以了吗?显然,这是有问题的,因为当a = 0 的情形下,这种输出是错误的,也就是说我们需要分情况讨论:
1) 输入a ,b ;
2) 若a ≠0 ,则输出x = - b/ a ;
如果a = 0 实际上方程变成了b = 0 ,这样的方程的解又是什么呢?看来还要看看参数b ,若b = 0 ,则方程为0 = 0 ,若b = 5 ,则方程为5 =0 ,这两种情形显然是不一样的,前者的解是任意实数,而后者则是无实数解,因此继续我们的算法
3) 若a = 0 ,还要对b 进行讨论:
( i) 若b = 0 ,方程的解是全体实数;
( ii) 若b ≠0 ,方程没有实数解.
对于这样一个看似简单的方程还有这么多门道呢?因为,作为一个算法必须是精确的,任何人按照(包括计算机) 这个步骤执行都能得到这个问题的求解.
我们可以从以上例子看出,书写一个算法的过程是一个思维的整理过程,是一个精确化、条理化的过程,因此有助于培养学生的逻辑思维能力.
❽ 高中数学的算法,程序框图
其实你把课好好听、作业认真完成都搞懂就可以了,不要这么紧张。我经验是最后考试题目非常简单。要注重培养逻辑思维,模仿计算机按步骤办事计算。有问题再问我好了。
附上:对高中数学中算法的几点认识(网上找的,意义不大)
算法属于新教材的新增内容,笔者结合自己的教学体会,谈谈对算法的理解和认识,供各位同仁参考:
1、算法的内容
(1)自然语言(2)程序框图(3)算法语句,其中,在每种语言中有各自的结构,如:顺序结构、循环结构、条件结构等。
2、算法在高中课程中的地位:
算法内容的设计分为两部分。
一部分主要介绍算法的基础知识,可以称作算法的“三基”:算法基本思想,算法基本结构,算法基本语句。通过一些具体的案例介绍算法的基本思想,使学生了解:为了解决一个问题,设计出解决问题的系列步骤,任何人实施这些步骤就可以解决问题,这就是解决问题的一个算法。这是对算法的一种广义的理解。对算法的理解,更多地是与计算机联系在一起,计算机可以完成这些步骤。
算法的基本结构一般有三种:顺序结构,分叉结构,循环结构。前两种结构很容易理解,循环结构稍微有点难,这里用到函数思想,难在理解反映循环过程的循环变量。在教学过程中,一定要通过具体的案例,结合具体的情境引入概念,会使问题变得很简单。
介绍算法语句的时候,要区分算法语言和基本的算法语句。我们知道,现在使用的算法语言是很多的,例如,basic 语言,q-basic 语言,c-语言,等等。在高中的数学课程中,不要求介绍算法语言,仅仅需要了解基本语句,例如,输入语句,输出语句,赋值语句,条件语句,循环语句,等等。在不同的语言中,这些语句的表示可能不一样,数学课程要求采用公认的统一表示,称为伪代码。很容易把伪代码翻译成任何一种算法语言。
描述算法有三种语言:自然语言、框图语言、基本算法语句。
算法的另一部分设计,是把算法的思想融入相关数学内容中。实际上,算法思想是贯穿在高中数学课程始终的基本思想。例如,二分法求方程的解;点到直线的距离、点到平面的距离、直线到直线距离;立体几何性质定理的证明过程;一元二次不等式;线性规划;等等内容中,都运用了算法思想。
用算法思想学习和认识数学对于提高数学素养是很有用的,希望老师予以重视。
3、理解赋值语句:
赋值是算法中的难点之一,理解赋值对于理解算法是非常重要的。
赋值就是把数值赋予给定的变量。例如,a:=5,就表示变量a被赋予的值是5,即a=5,这个被赋值的变量可以与其他的值进行运算。对于被赋值的变量a,还可以赋予其它的值取代原来的值。我们可以用磁带录音来比喻赋值,在我们录音时,是把磁带上旧的录音材料冲掉之后,才能把新的录音材料加载上去。同样的道理,我们这里的赋值也是先把原来的值清零之后,再把新的值赋上去。下面我们通过一个例子来说明如何设置变量和给变量赋值。
例:设计一个算法,从4个不同的数中找出最大数。
解:记这5个不同的数分别为a1,a2,a3,a4,a5,算法步骤如下:
1、比较a1与a2将较大的数记作b.
(在这一步中,b表示的是前2个数中的最大数)
2、再将b与a3进行比较,将较大的数记作b.
(执行完这一步后,b的值就是前3个数中的最大数)
3、再将b与a4进行比较,将较大的数记作b.
(执行完这一步后,b的值就是前4个数中的最大数)
4、输出b,b的值即为所求得最大数。
分析:上述算法的4个步骤中,每步都要与上一步中得到的最大数b进行比较,得出新的最大数。b可以取不同的值,b就称之为变量。在第1步到第3步的算法过程中,我们都把比较后的较大数记作b,即把值赋予了b,这个过程就是赋值的过程,这个过程有两个功能,第一,我们可以不断地对b的值进行改变,即把数值放入b中;第二,b的值每变化一次都是为下一步的比较服务。
4、函数在循环结构中的作用:
(1)循环结构是算法的一种基本结构。
例如,设计算法,输出1000以内能被3和5整除的所有正整数。解决这个问题,我们首先要引入变量a表示待输出的数,则a=15n (n=1,2,3,…,66).n从n从1变到66,反复输出a,就能输出1000以内的所有能被3和5整除的正整数。像这样的算法结构称为循环结构,其中反复执行的部分称为循环体。变量n控制着循环的开始和结束,称为循环变量。
(2)循环结构是理解算法的另一个难点,难点在于对于循环变量的理解。
循环结构中的循环变量分为两种形式,一种是控制循环次数的变量,例如,输出1000以内能被3和5整除的所有正整数这个循环结构中,n就是控制循环次数的循环变量。另一种是控制结果精确度的变量,例如用二分法算法求方程f(x)=0在区间[0,1]上的一个近似解的流程图,要求精确度为。在这个算法过程中,精确度就是控制结果精确度的循环变量。
循环变量使得循环体得以“循环”,循环变量控制了循环的“开始”和“结束”,是刻画循环结构的关键。
以上几点是对算法的粗浅认识,不当之处,请批评指正!
❾ 什么是算法 用计算机解题时起什么作用
算法可以理解为有基本运算及规定的运算顺序所构成的完整的解题步骤。或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤和序列可以解决一类问题。
计算机解题时就相当于你的思路,知道怎么去解决问题,剩下的只有如何用代码表达出来而已
❿ 高中数学里的算法跟计算机编程是不是有关系
有关系,但是只是有一点点的关系,这个算法在计算机编程中应该是最简单的了