高中典型算法题?1. 设窗台(窗户的下底边)到屋檐的距离是H,水滴落到窗台的时间是T。窗户高是 h=1.4米,t =0.2秒 H=g*T^2 / 2 H- h =g*(T-t )^2 / 2 即H=10*T^2 / 2 H- 1.4 =10*(T-0.2 )^2 / 2 以上二式联立得T=0.8 秒,那么,高中典型算法题?一起来了解一下吧。
题目需要补充
且AB=BC=2,AA1=2根号2,球的直径d=根号[2^2+2^2+(2根号2)^2]=4
R=2在三角形AOB中,OA=OB=AB=2
三角形AOB为等边三角形,角AOB=π/3
则A、B两点之间的球面距离为:是经过A,B两点的大圆被A,B所截得的劣弧的弧长,
大圆半径为2,大圆周长C=2πR=4π,圆心角AOB=π/3,占大圆周长的1/6
弧长为4π*1/6=2π/3
则A、B两点之间的球面距离为2π/3
百钱买百鸡问题——一百个铜钱买了一百只鸡,其中公鸡一只5钱、母鸡一只3钱,小鸡一钱3只,问一百只鸡中公鸡、母鸡、小鸡各多少)。
这是一个古典数学问题,设一百只鸡中公鸡、母鸡、小鸡分别为x,y,z,问题化为三元一次方程组:
这里x,y,z为正整数,且z是3的倍数;由于鸡和钱的总数都是100,可以确定x,y,z的取值范围:
1) x的取值范围为1~20
2) y的取值范围为1~33
3) z的取值范围为3~99,步长为3
对于这个问题我们可以用穷举的方法,遍历x,y,z的所有可能组合,最后得到问题的解。
数据要求
问题中的常量:
无
问题的输入:
无
问题的输出:
int x,y,z /*公鸡、母鸡、小鸡的只数*/
初始算法
1.初始化为1;
2.计算x循环,找到公鸡的只数;
3.计算y循环,找到母鸡的只数;
4.计算z循环,找到小鸡的只数;
5.结束,程序输出结果后退出。
算法细化
算法的步骤1实际上是分散在程序之中的,由于用的是for循环,很方便的初始条件放到了表达式之中了。
步骤2和3是按照步长1去寻找公鸡和母鸡的个数。
步骤4的细化
4.1 z=1
4.2 是否满足百钱,百鸡
4.2.1 满足,输出最终百钱买到的百鸡的结果
4.2.2 不满足,不做处理
4.3 变量增加,这里注意步长为3
流程图
图5-8 程序执行流程图
程序代码如下
#include "stdio.h"
main()
{
int x,y,z;
for(x=1;x<=20;x++)
for(y=1;y<=33;y++)
for(z=3;z<=99;z+=3)
{
if((5*x+3*y+z/3==100)&&(x+y+z==100))/*是否满足百钱和百鸡的条件*/ printf("cock=%d,hen=%d,chicken=%d\n",x,y,z);
}
}
分析
程序运行结果如下:
cock=4,hen=8,chicken=78
cock=8,hen=11,chicken=81
cock=12,hen=4,chicken=84
对于这个问题实际上可以不用三重循环,而是用二重循环,因为公鸡和母鸡数确定后,小鸡数就定了,即 。
!是从此数一直乘到一为止例5!=5*4*3*2*1
先假设一对称点
再让PQ两点中点M在直线上
求出直线PQ斜律
让两直线斜律相乘得-1
联立方程组即可解出
希望我的回答能帮到你!!
这两个跟顺序没关系,你排列算也可以(有顺序),组合算也可以(无顺序),但是分子分母要统一,分子按排列算,分母也需按排列算。用排列的话分子分母可以约掉,最后就跟用组合一样,所以一般用组合算。
比如第2题,6*5就是按排列算的,分子也要按排列就是2*3*2
组合就是C2,1*C3,1 / C6,2= 2*3 / ( 6*5 /2 ) ,与排列相比就是约掉了2的排法(先黑后白或先白后黑)
具体的你没写清楚,有问题再提。
浓硫酸的物质的量=1000*1.84*98%/98=18.4mol/L
稀释问题:稀释前、后,溶质的物质的量不变
浓硫酸的浓度*浓硫酸的体积=稀硫酸的浓度*稀硫酸的体积
需要浓硫酸的体积=100*1/18.4=5.4mL
以上就是高中典型算法题的全部内容,初始算法 1.初始化为1;2.计算x循环,找到公鸡的只数;3.计算y循环,找到母鸡的只数;4.计算z循环,找到小鸡的只数;5.结束,程序输出结果后退出。算法细化 算法的步骤1实际上是分散在程序之中的,由于用的是for循环,很方便的初始条件放到了表达式之中了。