问题描述
打靶,打10枪每枪10环打中90环有多少种可能?
解决方案
解决方案二:
是不是打中靶子就10环?是的话就10中可能。。
解决方案三:
打靶,打10枪靶子最高10环打中90环有多少种可能?
解决方案四:
10
解决方案五:
10很明显每枪10环打9次就90至少有一次没打到所以是10种可能没有打到
解决方案六:
不对,不止……还蛮伤脑筋的哦,呵
解决方案七:
voidmain(){longlCount=0;//所有打中90环的情况Shoot(1,0,reflCount);Console.WriteLine(lCount.ToString());}//第n次打靶情况//@paramn第n次打靶//@paramlastMarks上次打靶成绩//@param[out]nCount打中90环的次数privatevoidShoot(intn,intlastMarks,reflonglCount){if(10==n){for(inti=0;i<=10;i++){if(90==lastMarks+i){lCount+=1;}}}else{for(inti=0;i<=10;i++){if(90>lastMarks+i+(10-n)*10){//已经不能达到90环continue;}else{Shoot(n+1,lastMarks+i,reflCount);}}}}
解决方案八:
朝脑袋上打10枪,再想想
解决方案九:
usingSystem;publicclassM{//publicstaticint[]store;//相当于设置了全局变量//这个全局变量sum是包含在M类中的publicstaticintsum;publicM(){intsum=0;//int[]store={1,2,3,4,5,6,7,8,9,0};}//打印函数//符合要求的则把它打印出来publicstaticvoidOutput(int[]store2){for(inti=9;i>=0;--i){Console.Write("{0}",store2[i]);}Console.WriteLine();sum++;}//计算总数,返回sum值publicstaticintsum2(){returnsum;}publicstaticvoidCumput(intscore,intnum,int[]store2){//如果总的成绩超过了90环(也就是score<0),或者如果剩下要打靶//的成绩大于10环乘以剩下要打的次数,也就是说即便后面的都打10环//也无法打够次数,则退出递归if(score<0||score>(num+1)*10)//次数num为0~9{return;}//如果满足条件且达到最后一层if(num==0){store2[num]=score;Output(store2);return;}for(inti=0;i<=10;++i){store2[num]=i;Cumput(score-i,num-1,store2);}//Console.Write("{0}",store2[5]);}}publicclassmyApp{publicstaticvoidMain(){int[]store;store=newint[10];intsum=0;//inta=90;//intb=9;//Output();M.Cumput(90,9,store);sum=M.sum2();//M.Cumput2(a,b,store);//Console.Write("{0}",store[3]);//cout<<"总数:"<<sum<<endl;Console.Write("总数:{0}",sum);}}程序结果一共有92378种可能。
解决方案十:
引用楼主newbdelphi的帖子:
打靶,打10枪每枪10环打中90环有多少种可能?
发现楼主问问的有问题每枪10环怎么打到90????????????????
解决方案十一:
引用8楼xocom的回复:
C#codeusingSystem;publicclassM{//publicstaticint[]store;//相当于设置了全局变量//这个全局变量sum是包含在M类中的publicstaticintsum;publicM(){intsum=0;//int[]store={1,2,3,4,5,6,7,8,9,0};}//打印函数//符合要求的则把它打印出来publicstaticvoidOutput(int[]store2)…
解决方案十二:
引用8楼xocom的回复:
C#codeusingSystem;publicclassM{//publicstaticint[]store;//相当于设置了全局变量//这个全局变量sum是包含在M类中的publicstaticintsum;publicM(){intsum=0;//int[]store={1,2,3,4,5,6,7,8,9,0};}//打印函数//符合要求的则把它打印出来publicstaticvoidOutput(int[]store2){for(inti=9;i>=0;--i){Console.Write("{0}",store2[i]);}Console.WriteLine();…
解决方案十三:
每枪10环怎么打到90????????????????
解决方案十四:
usingSystem;namespaceShot{classShotClass{staticintresoultNum=0;[STAThread]staticvoidMain(string[]args){DoShot(1,0);Console.WriteLine("{0}",resoultNum.ToString());Console.ReadLine();}staticvoidDoShot(intindex,intsum){if(index==11)return;if((index==3)&&(sum<10))return;if((index==4)&&(sum<20))return;if((index==5)&&(sum<30))return;if((index==6)&&(sum<40))return;if((index==7)&&(sum<50))return;if((index==8)&&(sum<60))return;if((index==9)&&(sum<70))return;if((index==10)&&(sum<80))return;intresoult=0;for(inti=0;i<=10;i++){resoult=sum;resoult+=i;if(resoult==90){resoultNum++;return;}else{DoShot(index+1,resoult);}}}}}
解决方案十五:
我算出来也是92378
解决方案:
更简洁点是usingSystem;namespaceShot{classShotClass{staticintresoultNum=0;[STAThread]staticvoidMain(string[]args){DoShot(1,0);Console.WriteLine("{0}",resoultNum.ToString());Console.ReadLine();}staticvoidDoShot(intindex,intsum){if(index==11)return;if(sum<(index-2)*10)return;intresoult=0;for(inti=0;i<=10;i++){resoult=sum;resoult+=i;if(resoult==90){resoultNum++;return;}else{DoShot(index+1,resoult);}}}}}
解决方案:
学习........
解决方案:
打靶,打10枪每枪10环打中90环有多少种可能?你每枪10环...打10枪肯定是100环...所以答案为:0
解决方案:
10*10=100
解决方案:
你好准啊,JF
解决方案:
有歧义啊有歧义
解决方案:
不好意思,我没看懂题目。。。
解决方案:
学习
解决方案:
每一枪都有11种可能0-10环10枪有10*11种可能----求的是这110种可能中10枪的相加值为90的情况的次数可以如下分析第一分值为100只有一种可能,10枪全中10环分值为99只有10中可能,10中的9枪中10环,其中一枪中9环....分值为90转换为,共失分:10分第一种:都失于一枪:10中可能(10枪中的任意一枪)第二种:失于两枪:不方便写数学符号(先从10个里面选2枪,再乘以5种可能性)....--------------以此类推,其实考的是数学
解决方案:
milozy1983写的我咋没看懂?第一次出现90的时候,应该退出for循环了.此时DoShot(index+1,resoult)里,index=10,resoult=90,我跟踪下去,index和resoult每return一次就减1和10,没弄懂?............
解决方案:
逻辑思维太差了.看了半天也没看懂...楼上都是N人啊..
解决方案:
引用楼主newbdelphi的帖子:
打靶,打10枪每枪10环打中90环有多少种可能?
每枪10环打中90环有0种可能,因为每次都10环所以那是不可能事件。
解决方案:
引用26楼niitnanfeng的回复:
引用楼主newbdelphi的帖子:打靶,打10枪每枪10环打中90环有多少种可能?每枪10环打中90环有0种可能,因为每次都10环所以那是不可能事件。
像脑筋急转弯一样的!如果是急转弯题目,我也认为是0种可能!
解决方案:
引用19楼ch_weni的回复:
你好准啊,JF
哈哈
解决方案:
引用27楼sammy_luo的回复:
引用26楼niitnanfeng的回复:引用楼主newbdelphi的帖子:打靶,打10枪每枪10环打中90环有多少种可能?每枪10环打中90环有0种可能,因为每次都10环所以那是不可能事件。像脑筋急转弯一样的!如果是急转弯题目,我也认为是0种可能!