2018.11.14信息学奥赛辅导 向上取整

发布时间:2024-11-22 15:30

适时提问:引导谈判方向,获取更多信息 #生活技巧# #谈判技巧# #职场谈判技巧#

ceil函数:

ceil:在英文中,是天花板的意思,有向上的意思,所以,此函数是向上取整。

用 法: double ceil(double x);
功 能: 返回大于或者等于指定表达式的最小整数
头文件: #include<cmath>

说明:
float ceil ( float value )
返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

#include<cstdio>

#include<cmath>

int main()

{

double a = ceil(5.4);

printf("%d",(int)a);

return 0;

}

'

输出结果为:6

#include<cstdio>

#include<cmath>

int main()

{

printf("%d",(int)ceil(5.4));

return 0;

}

'

输出结果:6

#include<iostream>

#include<cmath>

using namespace std;

int main()

{

cout << ceil(5.4);

return 0;

}

输出结果:6 

【注意】下面的这种写法不对

#include<cstdio>

#include<cmath>

int main()

{

printf("%d",ceil(5.4));

return 0;

}

 输出结果:0

原因:因为ceil()函数的返回值为double类型,而我们输出的类型是%d类型,所以会出错。因此我们最好在ceil函数前面加一个强制类型转换,将ceil的值转为int类型。

int

int 是向下取整数.

#include<cstdio>

int main()

{

printf("%lf",5.7);

return 0;

}

输出结果:5.700000

#include<cstdio>

int main()

{

printf("%d",(int)5.7);

return 0;

}

'

 输出结果:5

#include<iostream>

#include<cmath>

using namespace std;

int main()

{

cout << int(5.7);

return 0;

}

输出结果:5 

注意:这样写会报错。

#include<cstdio>

int main()

{

printf("%d",5.7);

return 0;

}

也是因为5.7是小数类型的,而“%d”指的是整数,类型不一致,输出的结果可能是任意的数。

例题:

【苹果和虫子】

描述

你买了一箱n个苹果,很不幸的是买完时箱子里混进了一条虫子。虫子每x小时能吃掉一个苹果,假设虫子在吃完一个苹果之前不会吃另一个,那么经过y小时你还有多少个完整的苹果?

输入

输入仅一行,包括n,x和y(均为整数)。输入数据保证y <= n * x。

输出

输出也仅一行,剩下的苹果个数

样例输入

10 4 9

样例输出

7

提示

注意:是要求完整的苹果数。

代码:

(用ceil函数)

#include<cstdio>

#include<cmath>

int main()

{

double x,y;

int n;

scanf("%d%lf%lf",&n,&x,&y);

int k = ceil(y/x);

printf("%d",n-k);

return 0;

}

(用int强制类型转换)

#include<cstdio>

int main()

{

double n, x, y;

scanf("%lf%lf%lf",&n,&x,&y);

int k = n - y/x;

printf("%d",k);

return 0;

}

或者:

#include<cstdio>

#include<cmath>

int main()

{

double n,x,y;

scanf("%lf%lf%lf",&n,&x,&y);

printf("%d",(int)(n-y/x));

return 0;

}

'

网址:2018.11.14信息学奥赛辅导 向上取整 https://www.yuejiaxmz.com/news/view/193310

相关内容

【能力大赛185】破解案例分析(四)心理辅导类 – 高校辅导员工作室
一对一辅导
“引导学生讲述自身经历”,武汉一高校将叙事取向生涯咨商引入辅导员培训
2024年第21届全国大学生信息安全与对抗技术竞赛 “智能安全赛”通知
关于举办信息管理学院第二届全国大学生职业规划大赛的通知
凡尔赛的极致是在凡尔赛宫看奥运
辅导员工作案例
孩子该不该上课外辅导班
引导学生在信息技术课堂上协作学习
初中生活学习指导:初中家长可5方面辅助孩子转变

随便看看