第三章作业

     实验作业

1.完成课本每一个编程题。要求先画出流程算法图或N-S图,然后编程实现,有可能的话使用两种以上方法;

2.编程求“百钱百鸡”问题。(鸡翁一值钱五,鸡母 一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?)

3.编程输入一个整数,计算它是几位数字,分别输出每一位数字,并输出各个数位上数字之和。

4.在一个平面上,有四个圆柱形塔,塔底圆心坐标分别为(2,2)、(-2,2)、(-2,-2)、(2,-2),塔半径为1,塔高为10米,塔外无建筑物。编程,输入任一个点平面坐标,求该点建筑物的高度。

5.编程计算s=1!+2!+3!+......n!(其中n为整数,n!表示计算n阶乘),要求使用两种以上的方法。

6.猴子吃苹果问题:猴子第一天摘了若干个苹果,当时吃了一半,还不过隐,又多吃了一个。第二天,又吃掉余下的一半,又多吃一个。以后每一天,都是吃掉前一天余下的一半零一个。到第10天,只有一个苹果了。问猴子第一天共摘了多少个苹果?

7.计算s[n]=a+aa+aaa+aa...a(n个)的值。其中a是一个数字,n表示a的位数。例如,当a=1,n=5时,则要计算的表达式为

    s[5]=1+11+111+1111+11111

8.打印九九乘法表。

9.两个羽毛队进行单打比赛,各出3个人。甲队为张三、李四、王五3个队员,已队为陈六、赵七、宋八3个队员。现已经抽签决定比赛名单,有人向队员打听比赛名单,张三说他不和陈六打,王五说他不和陈六和宋八打。请编程找出3对比赛名单。

10.积累调试程序经验,收集错误信息原因(每个同学收集3-5条错误信息原因,并输入电脑形成文字)。

1课本编程题


2.百钱百鸡

#include<iostream>  
using namespace std;  
int main()  
{    
    int x,y,z;  
    cout<<"100钱能买:"<<endl;  
    for(x=0;x<=20;x++)  
    for(y=0;y<=33;y++) 
    	
{    z=100-x-y;
    if(5*x+3*y+z/3.0==100)  
    cout<<x<<"只鸡翁"<<y<<"只鸡母"<<z<<"只鸡雏"<<endl;  
}  
    return 0;  
} 


3.编程输入一个整数,计算它是几位数字,分别输出每一位数字,并输出各个数位上数字之和。

#include<iostream>
using namespace std;
int main()
{
	int i,b,n,j,sum=0;
	cin>>n;
	i=0;
	for(;;)
	{
		sum+=n%10;
		n=n/10;
		i++;
		if(n<1)
			break;
	
	}
	
	cout<<"该数由"<<i<<"位组成"<<endl;
	cout<<"各个位上的数相加为"<<sum<<endl;
	return 0;
}


4求建筑物的高度

#include<iostream>
#include<math.h>
using namespace std;
int main()
{
	float x,y,z;
	cout<<"输入任一平面坐标"<<endl;
	cin>>x>>y;
	z=sqrt((sqrt(x*x)-2)*(sqrt(x*x)-2)+(sqrt(y*y)-2)*(sqrt(y*y)-2));
	if(z<=1&&z>=0)
		cout<<"建筑物的高度为10米"<<endl;
	else
		cout<<"建筑物的高度为0米"<<endl;
	return 0;

}


5计算s=1!+2!+..........n!

#include<iostream>
using namespace std;
int main()
{
	int s,n,i,m,num;
	cin>>num;
	s=0;
	for(n=1;n<=num;n++)
	{
		m=1;
		for(i=1;i<=n;i++)
			m *=i;
		s +=m;
	}
	cout<<"s="<<s<<endl;
	return 0;

}


6猴子吃苹果的问题

#include<iostream>
using namespace std;
int main()
{
	int i=9,n=1;
	for(i;i>=1;i--)
		n=(n+1)*2;
	cout<<"n="<<n<<endl;
	return 0;

}


7

#include<iostream>
#include<math.h>
using namespace std;
int main()
{
	int i,a,b,n,s;    //a是一个数,n为a的位数
	cin>>a>>n;        //输入a和n值
	b=a;
	s=0;
	for(i=0;i<n;i++)
	{
	b=b*10;	
    s=s+a;
    a=b+a;
	}
	cout<<"s["<<n<<"]"<<"="<<s<<endl;
	return 0;

}


8.九九乘法表

#include <iostream>
using namespace std;
int main()
{
   int i,j;
   for(i=1;i<10;i++)
   {
   {
      for(j=1;j<=i;j++)
          cout<<j<<"*"<<i<<"="<<i*j<<" ";
   }
      cout<<endl;
   }
return 0;
}



9



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值