程序设计实习第二讲内容摘要:
高峰不会落在同一天。 对于每个人,我们想知道何时三个高峰落在同一天。 对每个周期,我们都给出了某一个高峰出现的日子(用高峰日是当年的第几天表示, 1月 1日算第 0天 )。 现给定一个日子(也用当年的第几天表示),要求你输出从给定日子开始(不包括给定日子)下一次三个高峰落在同一天的时间(用距给定日子的天数来表示)。 例如:给定日子为当年第 10天 ,如果下次出现三个高峰同日的时间是当年第 12天 ,则输出 2(注意这里不是 3)。 生理周期 输入 输入四个整数: p, e, i和 d。 p, e, i分别表示体力 、 情感和智力高峰出现的日子 ( 即第 p天 , 第 e天和第 d天 )。 d 是给定的日子 ( 第 d天 ), 可能小于 p, e, 或 i。 d 是非负的并且小于 365, 数据保证 所求的日子会在第 21252 天前。 数据以一行 4个 1结束 输出 从给定日子起,下一次三个高峰同天的日子距离给定日子的天数。 生理周期 问题分析 令所求的时间为第 x天 , 则 x具有如下性质: 1) D x = 21252 2) (xp)%23=0 3) (xe)%28=0 4) (xi)%33=0 生理周期 一个最简单直观的做法就是枚举从 d+1 到 21252 之间所有的数字 , 寻找第一个满足条件 2) 3) 4) 的数字 , 注意输出时间减去 d.。 生理周期 可以做的进一步改进是从 d+1开始逐一枚举寻找满足条件 2 的数字 a, 从 a开始每步加 23寻找满足条件 3的数字 b( 这样的 b自然也满足条件 2 ), 然后再从 b开始每步加 23*28寻找满足条件 4 的数字 x(这样的 x同时满足条件 2,3)。 x就是我们要找的数字 , 输出时输出 xd。 生理周期 程序设计 // 读入 p, e, i, d // j从 d+1 循环到 21252, 如果 (jp)%23==0, 跳出循环 // j从上次跳出循环的值循环到 21252, 如果 (je)%28==0, 跳出循环 // j从上次跳出循环的值循环到 21252, 如果 (ji)%33==0, 跳出循环 // 输出 jd includeiostream //生理周期 using namespace std。 int main(){ int p,e,i,d,j,no=1。 cin p e i d。 while(p!=1 amp。 amp。 e!=1 amp。 amp。 i!=1 amp。 amp。 d!=1){ for(j=d+1。 j=21252。 j++) if ((jp)%23 == 0) break。 for(。 j=21252。 j=j+23) if ((je)%28 == 0) break。 for(。 j=21252。 j=j+23*28) if ((ji)%33 == 0) break。 cout Case no。 cout : the next triple peak occurs in。 cout jd days. endl。 cin p e i d。 no++。 } return 0。 } 6*9 = 42 对于十进制来说是错误的,但是对于 13进制来说是正确的。 即 , 6(13) * 9(13) = 42(13), 而 42(13。程序设计实习第二讲
本资源仅提供20页预览,下载后可查看全文
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。
相关推荐
程序语言的现在和未来
+/Java/C Pascal • 过去的辉煌 –完美的结构化使其成为优秀的教学语言 • 现在的辉煌 – Delphi、 Kylix –强大的扩展库 –一直在进步的 IDE • 未来 …… – Borland公司的工作重心已经在 JBuilder,甚至 C Builder C • 仍然是很多高素质程序员 (黑客 )的最爱 • 良好设计的 C程序的重用性、扩展性等并不比面向对象程序
程序设计语言原理principleofprogramminglanguage
2020/11/17 程序设计语言原理 第 16页 元素的类型为 STRINGTYPE,由 STRING(1..10)派生。 内部文件名为: STRINGFILE. 存放文件基本元素的变量为 STRINGVAR. CREAT创建的新文件名为” ”(外部文件) WRITE将字符串” tenletter”写入文件 STRINGFILE CLOSE将 WRITE写入的内容写入外部文件中
程序设计实习第三讲字符串处理
void main( void ) { char *pdest。 int result。 pdest = strchr( string, ch )。 result = pdest string + 1。 if( pdest != NULL ) printf( Result:\tfirst %c found at position %d\n\n, ch, result )。 else
秦俑的发现,可以说是八大奇迹了。不看金字塔不算真正
金字塔是如何建造起来的。 第四段 (第 6自然段 ):点明埃及金字塔是埃及的象征和古代埃及人民智慧的结果。 巍然屹立 傲对碧空 • 金字塔高( )米多,相当于( )层高的摩天大厦。 绕金字塔( )周,差不多要走( )公里的路程。 塔身由( )万块巨石砌成,这些石块平均每块重(