国产高清在线精品一区a_免费一级淫片aa_一级特黄录像播放_日本中文免费嗨片直播网

大連酷叮貓少兒編程

主營:大連少兒編程教育,大連少兒編程培訓(xùn)學(xué)校,兒童教育中心

免費店鋪在線升級

聯(lián)系方式
  • 公司: 大連酷叮貓少兒編程
  • 地址: 大連沙河口區(qū)民政街433號
  • 聯(lián)系: 陳老師
  • 手機: 18004283934
  • 一鍵開店

如何用編程解決愛因斯坦的數(shù)學(xué)問題

2018-12-26 01:51:36  454 次瀏覽

曾經(jīng)愛因斯坦出了一道這樣的數(shù)學(xué)題:有一條長階梯,若每步跨2階,則后剩1階,若每步跨3階,則后剩2階,若每步跨5階,則后剩4階,若每步跨6階則后剩5階。只有每次跨7階,后才正好一階不剩。請問在 1~N 內(nèi),有多少個數(shù)能滿足?

針對于這個愛因斯坦的數(shù)學(xué)問題,那么我們用編程知識來如何解決它?下面酷叮貓來給您分析一下:

首先來問題分析,假設(shè)用變量x表示階梯數(shù),則x 應(yīng)滿足:

若每步跨2階,則后剩1階 -- x%2=1;

若每步跨3階,則后剩2階 -- x%3=2;

若每步跨5階,則后剩4階 -- x%5=4;

若每步跨6階,則后剩5階 -- x%6=5;

每次跨7階,后一階不剩 -- x%7=0。

因此,階梯數(shù)應(yīng)該同時滿足上面的所有條件。

那么,用編程該怎么做出來呢?

該問題要求輸入N值,求解出在的范圍內(nèi)存在多少個滿足要求的階梯數(shù)。在算法設(shè)計中,使用while循環(huán)以允許重復(fù)讀入多個N值。聲明一個變量假設(shè)為flag,利用語句 while(flag){循環(huán)體} 來進(jìn)行控制,當(dāng)flag的值為1時可以接著輸入,若為0則結(jié)束循環(huán)。

對每一次讀入的N值,都要判斷在 1~N 的范圍內(nèi)存在的滿足要求的階梯數(shù)個數(shù)。判斷時可采用for循環(huán),循環(huán)變量設(shè)為i,由題意,i的初值從7開始取即可,for循環(huán)的循環(huán)條件為 i。for語句的循環(huán)體中使用問題分析中列出的5個條件來檢驗每一個i值,能夠滿足所有5個條件的i值即為所求的階梯數(shù)。

下面是完整的代碼:

#include

int main()

{

long n, sum, i;

int flag=1;

while(flag)

{

printf("輸入N:");

scanf("%ld", &n);

printf("在1-%ld之間的階梯數(shù)為: ", n);

sum=0;

for( i=7; i<=n; i++ )

if( i%7 == 0 )

if( i%6 == 5 )

if( i%5 == 4 )

if( i%3 == 2 )

{

sum++;

printf("%ld ", i);

}

printf("在1-%ld之間,有%ld個數(shù)可以滿足愛因斯坦對階梯的要求。 ", n, sum);

printf("繼續(xù)請輸入1,否則輸入0: ");

scanf("%d", &flag);

}

return 0;

}

運行結(jié)果:

輸入N:123

在1-123之間的階梯數(shù)為:

119

在1-123之間,有1個數(shù)可以滿足愛因斯坦對階梯的要求。

繼續(xù)請輸入1,否則輸入0:

1

輸入N:1234

在1-1234之間的階梯數(shù)為:

119

329

539

749

959

1169

在1-1234之間,有6個數(shù)可以滿足愛因斯坦對階梯的要求。

網(wǎng)友評論
0條評論 0人參與
最新評論
  • 暫無評論,沙發(fā)等著你!
百業(yè)店鋪 更多 >

特別提醒:本頁面所展現(xiàn)的公司、產(chǎn)品及其它相關(guān)信息,均由用戶自行發(fā)布。
購買相關(guān)產(chǎn)品時務(wù)必先行確認(rèn)商家資質(zhì)、產(chǎn)品質(zhì)量以及比較產(chǎn)品價格,慎重作出個人的獨立判斷,謹(jǐn)防欺詐行為。

回到頂部