首页 > 编程语言 >打卡 c语言趣味编程 舍罕王的失算

打卡 c语言趣味编程 舍罕王的失算

时间:2023-05-22 12:44:06浏览次数:50  
标签:麦子 失算 格放 宰相 64 打卡 棋盘 舍罕王

问题描述:

  相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜爱象棋,决定让宰相自己选择何种赏赐。这位聪明的宰相指着8×8共64格的象棋棋盘说:陛下,请您赏给我一些麦子吧。就在棋盘的第1格中放1粒,第2格放2粒,第3格放4粒,以后每一格都比前一格增加一倍,依此放完棋盘上64格,我就感激不尽了。舍罕王让人扛来一袋麦子,他要兑现他的许诺。请编程求出国王总共需要将多少麦子赏赐给他的宰相。

思路:

  根据题意,麦子的放法是:在棋盘的第1格中放1粒,第2格放2粒,第3格放4粒,以后每一格都比前一格增加一倍,依次放完棋盘上64格。所以实现的公式为

  可通过for循环实现

流程图:

 

代码实现:

 1 #include<stdio>
 2 #include<math.h>
 3 
 4 using namespace std;
 5 
 6 int main (){
 7 double sum =0;    /*定义double型变量sum存放累加和*/
 8 int i;
 9 /*使用循环求累加和*/
10 for(i=1:1<=64:1++)
11     sum=sum+pow (2,i-1);
12 cout << “国王总共需要赏赐给宰相的麦子数为:”<< sum <<endl;
13 return 0;
14 }

 

标签:麦子,失算,格放,宰相,64,打卡,棋盘,舍罕王
From: https://www.cnblogs.com/qmz-znv2/p/17420328.html

相关文章

  • 5.22打卡
      3.程序流程图 4.代码实现#include<bits/stdc++.h>usingnamespacestd;inta[14];main(){inti,j=1,n;printf("ħÊõʦÊÖÖеÄÅÆԭʼ³ÌÐòÊÇ£º\n");for(i=1;i<=13;i++){n=1;do{......
  • 每天打卡一小时 第三十二天
    浅浅复习一下C#include<stdio.h>#include<math.h>intmain(){ intnum; charch; scanf("%d%c",&num,&ch); inthangshu=(int)sqrt((num+1)/2); for(inti=0;i<hangshu;i++) { for(intk=0;k<i;k++) { printf("&quo......
  • 5.21打卡
     一、问题描述:一只兔子躲进了10 个环形分布的洞中的一个。狼在第一个洞中没有找到兔子,就隔一个洞,到第3个洞去找;也没有找到,就隔2个洞,到第6个洞去找;以后每次多一个洞去找兔子……这样下去,如果一直找不到兔子,请问兔子可能在哪个洞中?二、设计思路:首先定义一个数组a[11],其数组元素......
  • 打卡第三十天
     复数类的操作一、1、声明一个复数类Complex(类私有数据成员为double型的real和image)2、定义构造函数,用于指定复数的实部与虚部。3、定义取反成员函数,调用时能返回该复数的相反数(实部、虚部分别是原数的相反数)。4、定义成员函数Print(),调用该函数时,以格式(real,image)输出当......
  • 5月21日打卡
    例5-3题目:具有静态、动态生存期对象的时钟程序。代码部分#include<iostream>usingnamespacestd;classClock{public:Clock():hour(0),minute(0),second(0){}voidsetTime(inta=0,intb=0,intc=0){hour=a;minute=b;s......
  • 5-21打卡:双循环链表(无哨兵)练习
    #include<iostream>usingnamespacestd;typedefstructNode{intdata;Node*next;Node*pre;}Node;Node*initlist(intdata){Node*node=newNode;node->data=data;node->next=node;node->pre=node;......
  • 5-20打卡:qt实现开启关闭窗口
    我想要实现:按下新建窗口,然后新建出一个窗口,这时按钮变成关闭窗口,然后我再点击关闭窗口按钮、那么新建的窗口关闭。//在Widget类里面声明一个QWidget的指针成员变量QWidget*w;Widget::Widget(QWidget*parent):QWidget(parent),ui(newUi::Widget){ui->set......
  • 5-19打卡:lambda表达式
    Lambda表达式是C++11引入的一种非常方便和强大的功能,它允许你创建简洁、匿名的函数对象。在许多情况下,Lambda表达式可以使代码更简洁、易读。接下来,我会详细介绍C++Lambda表达式的基本概念、语法以及一些使用场景。Lambda表达式基本概念Lambda表达式是一个匿名的内联......
  • 5.21打卡
      三、程序流程图 四、代码实现#include<bits/stdc++.h>usingnamespacestd;main(){longn,sum,i;while(scanf("%ld",&n)!=EOF){printf("ÔÚ1-%ldÖ®¼äµÄ½×ÌÝÊýΪ£º\n",n);sum=0;for(i=7;i<=n......
  • 第28天打卡
    问题: 源代码:#include<stdio.h>#include<math.h>intmain(){inta,b,c,count=0;for(a=1;a<=100;a++){c=(int)sqrt(a*a+b*b);if(c*c==a*a+b*b&&a+b>c&&b+c>a&&c<=100){printf("%4d%4d%4d ",a,b,c);cou......