印度国王蛇罕褒奖宰相达依尔(国际象棋发明者)

本文主要是介绍印度国王蛇罕褒奖宰相达依尔(国际象棋发明者),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

国王只要在国际象棋的棋盘第一格子放一粒麦子,第二格放2粒麦子,第三格放4粒麦子,依此比例每一格增加一倍,一直放到64格(国际象棋棋盘时8*8=64格)

根据估算,1立方米小麦约有1.42*10的8次方粒。

#include<stdio.h>
#include<math.h>
#include<windows.h>
//国王只要在国际象棋的棋盘第一格子放一粒麦子,第二格放2粒麦子,第三格放4粒麦子,依此比例每一格增加一倍,一直放到64格(国际象棋棋盘时8*8=64格)

//根据估算,1立方米小麦约有1.42*10的8次方粒

//错误程序,p,t,为赋值,运算出错,会运算出负数导致结果错误
void test01()
{
    double p, t, v;                      /*p = 麦子粒数,t=麦子总粒数,v为麦子的总体积*/  
    int i;
    for(i = 1; i < 64; i++)       //执行63此循环
    {
        p = p * 2;
        t = t + p;
    }
    v = t / 1.42e8;
    printf("total=%e\n", t);
    printf("volume=%e\n", v);

}
//正确程序如下
void test02()
{
    double p = 1, t  = 1, v;                      /*p = 麦子粒数,t=麦子总粒数,v为麦子的总体积*/  
    int i;
    for(i = 1; i < 64; i++)
    {
        p = p * 2;
        t = t + p;
    }
    v = t / 1.42e8;
    printf("total=%e\n", t);
    printf("volume=%e\n", v);

}

void main()
{
    test01();
    test02();
    system("pause");
}

增加测试类型如下:

#include<stdio.h>
#include<math.h>
#include<windows.h>
//国王只要在国际象棋的棋盘第一格子放一粒麦子,第二格放2粒麦子,第三格放4粒麦子,依此比例每一格增加一倍,一直放到64格(国际象棋棋盘时8*8=64格)

//根据估算,1立方米小麦约有1.42*10的8次方粒

//错误程序,p,t,为赋值,运算出错,会运算出负数导致结果错误
void test01()
{
    double p, t, v;                      /*p = 麦子粒数,t=麦子总粒数,v为麦子的总体积*/  
    int i;
    for(i = 1; i < 64; i++)       //执行63此循环
    {
        p = p * 2;
        t = t + p;
    }
    v = t / 1.42e8;
    printf("total=%e\n", t);
    printf("volume=%e\n", v);

}
//正确程序如下
void test02()
{
    double p = 1, t  = 1, v;                      /*p = 麦子粒数,t=麦子总粒数,v为麦子的总体积*/  
    int i;
    for(i = 1; i < 64; i++)       //可使用这种方法,for循环也可以从1到63次 共循环了63次,得到正确运算结果
    {
        p = p * 2;
        t = t + p;
    }
    v = t / 1.42e8;
    printf("total=%e\n", t);
    printf("volume=%e\n", v);

}

void test03()
{
    double p =1 , t = 1 , v;                      /*p = 麦子粒数,t=麦子总粒数,v为麦子的总体积*/  
    int i;
    for(i = 1; i <= 64; i++)       //执行64此循环的错误结果,多运算一次结果刚好翻倍
    {
        p = p * 2;
        t = t + p;
    }
    v = t / 1.42e8;
    printf("total=%e\n", t);
    printf("volume=%e\n", v);
}


void test04()
{
    double p = 1 , t = 1 , v;                      /*p = 当前一格中麦子粒数,t=当前麦子总粒数,v为麦子的总体积*/  
    int i;
    for(i = 0; i < 64; i++)       //错误循环,for循环也可以从0词到63次 共循环了64次,多了一次结果翻倍,从0循环后面总循环数需要减一
    {
        p = p * 2;
        t = t + p;
    }
    v = t / 1.42e8;
    printf("total=%e\n", t);
    printf("volume=%e\n", v);
}

void test05()
{
    double p = 1 , t = 1 , v;                      /*p = 当前一格中麦子粒数,t=当前麦子总粒数,v为麦子的总体积*/  
    int i;
    for(i = 0; i < 63; i++)       //可使用这种方法,for循环也可以从0词到62次 共循环了63次,多了一次结果翻倍,从0循环后面总循环数需要减一
    {
        p = p * 2;
        t = t + p;
    }
    v = t / 1.42e8;
    printf("total=%e\n", t);
    printf("volume=%e\n", v);
}


void main()
{
    test01();
    test02();
    test03();
    test04();
    test05();
    system("pause");
}

 

这篇关于印度国王蛇罕褒奖宰相达依尔(国际象棋发明者)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/819456

相关文章

国际象棋问题(动态规划)

问题描述:国际象棋中的车可以水平的或竖直的移动,一个车要从一个棋盘的左上角(0,0)移到(n,m)这个坐标,有多少种最短路径? 设走到(i,j)的方法为dp(i,j),那么根据递推可以得到dp(i,j) = dp(i,j - 1) + dp(i - 1, j),边界条件下,dp(i,0) = 1, dp(0,j) = 1; #include<cstdio>#include<cstring

印度再现超级大片,豪华阵容加顶级特效

最近,印度影坛再次掀起了风潮,一部名为《毗湿奴降临》的神话大片强势登陆各大影院,上映首周票房就飙升至105亿卢比,成功占据了票房榜首的位置。之后,这部电影也在北美上映,海外市场的表现同样不俗,收获了相当亮眼的票房成绩。作为一部印度神话科幻大片,《毗湿奴降临》不仅在本土大火,在国际市场上也引发了不小的关注。 《毗湿奴降临》由印度著名导演纳格·阿什温执导,卡司阵容极其豪华,集结了迪皮卡·帕度柯妮

NYOJ 264 国王的魔镜

链接: click here 题意: 国王有一个魔镜,可以把任何接触镜面的东西变成原来的两倍——只是,因为是镜子嘛,增加的那部分是反的。 比如一条项链,我们用AB来表示,不同的字母表示不同颜色的珍珠。如果把B端接触镜面的话,魔镜会把这条项链变为ABBA。如果再用一端接触的话,则会变成ABBAABBA(假定国王只用项链的某一端接触魔镜)。 给定最终的项链,请编写程序输出国王没使用魔镜之前

【自撰写】【国际象棋入门】第5课 常见开局战术组合(一)

第5课 常见开局战术组合(一) 本次课中,我们简要介绍几种常见的开局战术组合。开局当中,理想的情况是,己方的两只(或以上)轻子相互配合,或者与己方的兵配合,在完成布局的同时寻找进攻机会,或者争夺中心格,建立优势。这些组合在白方开局阶段的进攻当中属于常用手段,但黑方只要观察细致,也应具备完全的应对能力。下面对这几种战术组合逐一地进行分析。 一、组合1:白方的马象进攻组合 谱着:1. e4 c5

人工智能和印度大选

人工智能和印度大选 2024年6月5日,印度结束了世界上规模最大的选举,共有超过6.4亿张选票被统计出来,观察人士可以评估各个政党和派别如何使用人工智能技术。 竞选活动大量使用人工智能,包括深度模仿候选人、名人和已故政治家。据估计,数百万印度选民观看了深度造假。 但是,尽管人们担心存在广泛的虚假信息,但在大多数竞选活动中,候选人和活动人士在选举中建设性地使用了人工智能。他们将人工智能用于典型

linux shell实现打印国际象棋棋盘

chess.sh #!/bin/bashfor i in {1..8}dofor j in {1..8}dosum=$[i+j]if [ $[sum%2] -eq 0 ];thenecho -ne "\033[46m \033[0m"elseecho -ne "\033[47m \033[0m"fidoneechodone 验证:

【noip】国王游戏 贪心 高精度

说实话我一开始是不想发这道题的,虽然比较水,但不知道是不是因为我太久都没有写高精度了,还是写错了,才40分,还是发上来吧。 描述 恰逢H国国庆,国王邀请n位大臣来玩一个有奖游戏。首先,他让每个大臣在左、右手上面分别写下一个整数,国王自己也在左、右手上各写一个整数。然后,让这n位大臣排成一排,国王站在队伍的最前面。排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该

【自撰写,国际象棋入门】第2课、取胜规则,谱着和记法

第2课 取胜规则、谱着和记法 一、国际象棋的取胜规则 国际象棋规则中白方先走,黑方后走,以任一方的国王被杀死(Checkmate将杀,棋谱中用**#表示),或者和棋作为棋局结束的标志。若白王被将死,黑方取胜,记法为0-1**;若黑王被将死,白方取胜,记法为1-0;和棋的情况(双方同意和棋或者3次重复局面和棋),记法为1/2-1/2。下一节中我们介绍一个双方同意和棋的例局。 二、国际象棋的谱着

秋招突击——算法打卡——6/3——复习{最低通行费、(状态压缩DP)小国王}——新做:{罗马数字转整数、最长公共前缀}

文章目录 复习背包模型——最低通行费题目内容实现代码 (状态压缩DP)小国王检查状态本身是否存在两个连续的1计算所有的合法状态已经所有合法状态之间的转移动态规划过程 新作罗马数字转整数个人实现实现代码 参考做法实现代码 最长公共前缀个人实现参考思路 总结 复习 背包模型——最低通行费 题目内容 实现代码 首先规定了步数是2n-1,相当于只能往右下那个方向出发,只

文献解读-遗传病-第四期|《来自印度的自称健康个体的 1029 个基因组揭示了流行且临床相关的心脏离子通道病变异》

关键词:应用遗传流行病学;群体测序;群体基因组;基因组变异检测; 文献简介 标题(英文):1029 genomes of self-declared healthy individuals from India reveal prevalent and clinically relevant cardiac ion channelopathy variants标题(中文):来自印度的自