什么是算法?试从日常生活中找3个例子,描述它们的算法。
什么叫结构化的算法?为什么要提倡结构化的算法?
试述3种基本结构的特点,请另外设计两种基本结构(要符合基本结构的特点)。
用传统流程图表示求解以下问题的算法。
(1)有两个瓶子A和B,分别盛放醋和酱油,要求将它们互换(即A瓶原来盛醋,现改盛酱油,B瓶则相反)。
(2)依次将10个数输入,要求输出其中最大的数。
(3)有3个数a,b,c,要求按大小顺序把它们输出。
(4)求1+2+3+…+100。
(5)判断一个数n能否同时被3和5整除。
(6)将100~200之间的素数输出。
(7)求两个数m和n的最大公约数。
(8)求方程式ax2+bx+c=0的根。分别考虑:
①有两个不等的实根;
②有两个相等的实根。
用N-S图表示第4题中各题的算法。
(1)有两个瓶子A和B,分别盛放醋和酱油,要求将他们互换(即A瓶里面盛醋先改盛酱油,B瓶则相反)。
(2) 依次将10个数输入,要求将其中最大的数输出。
(3) 有3个数a,b,c,要求按大小顺序把它们输出。
(4) 求1+2+3+…+100。
(5) 判断一个数n能否同时被3和5整除。
(6) 将100~200的素数输出。
(7) 求两个数m和n的最大公约数。
(8)求方程式ax2+bx+c=0的根。分别考虑:①有两个不等的实根;②有两个相等的实根。
用伪代码表示下列各题的算法。
(1)有两个瓶子A和B,分别盛放醋和酱油,要求将它们互换(即A瓶原来盛醋,现改盛酱油,B瓶则相反)。
(2)依次将10个数输入,要求将其中最大的数输出。
(3)有3个数a,b,c,要求按大小顺序把它们输出。
(4)求1+2+3+…+100。
(5)判断一个数n能否同时被3和5整除。
(6) 将100~200的素数输出。
(7) 求两个数m和n的最大公约数。
(8)求方程式ax2+bx+c=0的根。分别考虑:①有两个不等的实根;②有两个相等的实根。
什么叫结构化程序设计?它的主要内容是什么?
用自顶向下、逐步细化的方法进行以下算法的设计:
(1)输出1900~2000年中是闰年的年份,符合下面两个条件之一的年份是闰年:
①能被4整除但不能被100整除;
②能被100整除且能被400整除。
(2)求ax2+bx+c=0的根。分别考虑d=b2-4ac大于0、等于0和小于0这3种情况。
(3)输入10个数,输出其中最大的一个数。