coursera 中计算概论的第四周 B-03作业
2014-03-20 23:06
513 查看
1.
2.
3.1
3.2
4.
5.
//你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。 //虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会 //吃另一个,那么经过y小时你还有多少个完整的苹果? #include <iostream> using namespace std; int main() { //一箱n个苹果,虫子每x小时吃掉一个苹果,经过y小时以后剩余的苹果 int n,x,y; cin >> n >> x >> y ; int eaten;//eaten为虫子吃掉的苹果 if(y/x) eaten=y/x+1;//虫子吃剩的也不要了 else eaten=y/x;//刚好吃完 cout << n-eaten << endl; return 0; }
2.
/* *描述 一只大象口渴了,要喝20升水才能解渴,但现在只有一个深h厘米,底面半径为r厘 米的小圆桶(h和r都是整数)。问大象至少要喝多少桶水才会解渴。(设PAI=3.14159) *输入 输入有一行:分别表示小圆桶的深h,和底面半径r,单位都是厘米。 *输出 输出也只有一行,大象至少要喝水的桶数。 */ /* 浮点运算的误差 判断小数是否整除 如果整除 n=x/y;那么y*n==x+THRES&&y*n==x-THRES ; */ #include <iostream> #define PAI 3.14159 #define THRES 0.00001 using namespace std; int main() { int h,r;//桶深h,底面半径r //计算一桶水的体积 cin >> h >> r ; double volum; int totle =20*1000;//统一为ml,可能能减小误差 volum=PAI * r *r *h; int n=totle/volum;//n为需要的桶的数量 if(n==0) { n=1; } else if(n*volum==totle+THRES&&n*volum==totle-THRES) { n=(int)totle/volum; } else n=totle/volum+1; cout << n << endl; return 0; }
3.1
/* 描述 孙老师 讲授的《计算概论》这门课期中考试刚刚结束,他想知道考试中取得的 最高分数。因为人数比较多,他觉得这件事情交给计算机来做比较方便。你能帮 孙老师解决这个问题吗? 输入 输入为二行,第一行为整数n(1 <= n < 100),表示参加这次考试的人数.第二行 是这n个学生的成绩 输出 输出一行,即最高的成绩 样例输入 5 85 78 90 99 60 样例输出 99 */ //使用数组实现 #include <iostream> using namespace std; int main() { int n;//一共有n个分数 cin >> n; int record ; for (int i=0;i<n;i++) { cin >> record[i]; } //使用冒泡排序 降序 int i,j; for(i=0;i<n;i++) for(j=1;j<n-i-1;j++) { if(record[j]>record[j-1]) { int temp =record[j]; record[j]=record[j-1]; record[j-1]=temp; } } cout << record[0] << endl; return 0; }
3.2
/* 描述 孙老师 讲授的《计算概论》这门课期中考试刚刚结束,他想知道考试中取得的 最高分数。因为人数比较多,他觉得这件事情交给计算机来做比较方便。你能帮 孙老师解决这个问题吗? 输入 输入为二行,第一行为整数n(1 <= n < 100),表示参加这次考试的人数.第二行 是这n个学生的成绩 输出 输出一行,即最高的成绩 样例输入 5 85 78 90 99 60 样例输出 99 */ //不用数组实现 #include <iostream> using namespace std; int main() { int n;//n为分数的个数 cin >> n ; int max=0;//temp来存储分数 for(int i=0;i<n;i++) { int temp=0; cin >> temp; if(max<temp) { max=temp; } } cout << max << endl; return 0; }
4.
/* 描述 输入6个正整数,且这6个正整数中至少存在一个奇数和一个偶数。 设这6个正整数中最大的奇数为a,最小的偶数为b,求出|a-b|的值 输入 输入为一行,6个正整数,且6个正整数都小于100 输入保证这6个数中至少存在一个奇数和一个偶数 输出 输出为一行,输出最大的奇数与最小的偶数之差的绝对值 样例输入 1 2 3 4 5 6 样例输出 3 */ //不使用数组实现 #include <iostream> using namespace std; int main() { int maxodd=0,minEven=100;//maxodd为最大的奇数,mineven为最小的偶数 int i; for(i=0;i<6;i++) { int temp; cin >> temp ; if(temp%2)//temp为奇数 { if(temp>maxodd) maxodd=temp; } else//temp为偶数 { if(temp<minEven) minEven=temp; } } if(maxodd>minEven) cout << maxodd-minEven << endl; else cout << minEven-maxodd << endl; return 0; }
5.
/*描述 从键盘输入一个任意的三位整数,要求正确地分离出它的百位、十位和个位数,并分别在屏幕上输出,输出采用每行输出一个数的方式,不带其它符号。 输入 一个任意的三位整数 输出 一个任意的三位整数 样例输入 123 样例输出 1 2 3 */ #include <iostream> using namespace std; int main() { int num;//输入一个数 cin >> num; cout << num/100 << endl; cout << (num%100)/10 << endl; cout << num%10 << endl; return 0; }
相关文章推荐
- SQL的内连接与外连接
- BAT 批处理脚本 教程
- 前 言
- OpenCV学习笔记(四十)——再谈OpenCV数据结构Mat详解
- 跨越国度
- 蓝桥杯 奇怪的比赛
- 如何重新配置Oracle的EM Database Control
- 嵌入式C/C++开发中的代码优化(翻译版)
- POI读取Excel(兼容Excel2003、Excel2007)
- 框架的contentDocument支持问题
- LeetCode | Unique Paths
- WebAppScaner
- ACM 做题过程中的一些小技巧。
- 攻下隔壁女生的路由器后,我都做了什么
- Linux C线程的创建和使用
- PreparedStatement的用法与SQL注入分析
- 第三周实验--简单的签到程序
- Spring多数据源的配置和使用
- 数据结构-红黑树扩张-区间树
- 第六章 指针与const