㈠ 請問韓信點兵用c語言怎麼編寫啊
用枚舉法即可,在最大帶兵范圍內循環計算,直至找到合適的數。
題主的具體題目是什麼?我這里先按最核心的內容編寫代碼吧。
題目:韓信帶兵1500人,戰死大約400-500,剩餘兵力,3人一排多2人,5人一排多4人,7人一排多6人,求韓信剩餘多少兵力。
#include<stdio.h>
intmain(void){
intn;
for(n=1000;n<1100;n++)/*戰死大約400-500,循世肢兄環范圍即飢梁在1000-1100之間*/
if((n%3==2)&&(n%5==4)&&(n%7==6))/*循環找尋某數符合除3餘2且除5餘4且除7餘6*/
printf("韓信剩餘兵力為搜襲%d人!",n);
getch();
return0;
}
運行結果
㈡ c語言編程序:韓信點兵,韓信有一隊伍,你想知道有多少人,就讓士兵報數,按從1至5報數,最末一個士兵報的
韓信缺擾沖點兵不是按3人一排,5人一排,7人一排嗎?如果是這樣的話
# include<stdio.h>
int main()
{
int n,a,b,c;
scanf("%d%d%d"伏殲,&a,&b,&c);
for(n=10;n<=200;n++)
{
if (n%3==a && n%5==b && n%7==c)
{
if(n<李森=100)
{
printf("%d",n);
break;
}
else
{
printf("No answer");
}
}
}
}
㈢ 韓信點兵(c語言)
你完全羨早沒有按照題目要求做。
#include<stdio.h>
voidmain(){
longlongi,A,B,C,D,E,F,G,H,a,b,c,d,e,f,g,h;
scanf("%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld%lld",&A,&B,&C,&D,&E,&F,&G,&H,&a,&b,&c,&d,&e,&f,&g,&h);
for(i=A;;i++)
if(i%A==a&&i%B==b&&i%C==c&&笑耐i%D==d&&i%E==e&&i%F==f&&碰派春i%G==g&&i%H==h)
{printf("%lld",i);break;}
}
運行示例:
㈣ 關於大一的C語言問題,韓信點兵。。
intx=1;
while(x%5!=1||x%6!=5||x%7!=4||x%11!=10)x++;
printf("%d",x);
㈤ C語言韓信點兵(容易超時)
遞歸的思想,1個
隊列
的話,3餘1,明顯就是3x+1,最小x=1;和為4
兩個隊攔鎮列,5餘2,,首先他要滿足4+3x的形式,才能滿足1,辯帆找最小的x使3x+4%5=2;5次以內必找到,和為7;
三個隊列7+(3*5)x%7=4;7次必找到;可以得出最多隻要計算A+B+C+D+E+F+G+H次的乘法和
除簡灶粗法
,不可能超1000MS。