首页 > 编程语言 >向上和向下取整(数学和C++实现)

向上和向下取整(数学和C++实现)

时间:2024-04-06 22:04:26浏览次数:27  
标签:150 cout int double C++ 取整 向下 100

例如:

1.向下取整⌊ ⌋

⌊100/150⌋=0,⌊-100/150⌋=-1

(100/150=2/3,并且0<2/3<1,所以向下取整后为0。-100/150=-2/3,并且-1<-2/3<0,所以向下取整之后为-1)

2.向上取整⌈ ⌉

⌈100/150⌉=1,⌈-100/150⌉=0

(100/150=2/3,并且0<2/3<1,所以向上取整后为1。-100/150=-2/3,并且-1<-2/3<0,所以向上取整之后为0)

上C++代码!!!

注意头文件

#include<cmath>

 或者直接用万能头

#include<bits/stdc++.h>

(手动狗头)

//向下取整函数floor( ) 
cout<<floor(1.1)<<" ";
cout<<floor(1.9)<<" ";
cout<<floor(-1.1)<<" ";
cout<<floor(-1.9)<<" ";
cout<<floor(0.0)<<" ";

输出1 1 -2 -2 0

//向上取整函数ceil( ) 
cout<<ceil(1.1)<<" ";
cout<<ceil(1.9)<<" ";
cout<<ceil(-1.1)<<" ";
cout<<ceil(-1.9)<<" ";
cout<<ceil(0.0)<<" ";

输出2 2 -1 -1 0

当然,如果不愿意用这两个函数或者不愿意记/闲的,也可以自己写:

double floor(double x){
	int y=(int)x;
	if(y>x) return y-1;
	else return y;
}
double ceil(double x){
	int y=(int)x;
	if(y<x) return y+1;
	else return y;
}

不喜勿喷。

标签:150,cout,int,double,C++,取整,向下,100
From: https://blog.csdn.net/smx100509/article/details/137438888

相关文章

  • C++基础——字符串(C语言和C++的字符串风格区别)
    C语言风格的字符串字符串通常是以字符数组或字符指针的形式表示的。字符串以空字符('\0')结尾!!!两种形式:(1)字符指针形式的字符串charstr[]="HelloC++";(2)字符数组形式的字符串char*ptr="HelloC++";C风格字符串的运算运算需要使用string函数,需要加入头文件<stri......
  • Android Graphics 多屏同显/异显 - C++示例程序(标准版)
    ”为了理解Android多屏同显/异显的基本原理,我们将从NativeLevel入手,基于GraphicsAPIs写作一个简单的C++版本的多屏显示互动的演示程序。通过这个程序我们将了解常用的多屏显示相关的接口的使用方法。“  01多屏显示C++示例概况 源码下载请查看文章末尾源码下载方......
  • C++基础知识整理
    1.CPP编译链接过程2.new和malloc区别,delete和free区别3.指针和引用4.左值引用和右值引用5.const6.函数重载7.函数调用栈帧开辟过程8.inline内联函数9.static关键字10.定义指向类的成员的指针11.this指针12.常成员方法13.函数模板与类模板函数模板类......
  • C++从入门到精通——初步认识面向对象及类的引入
    初步认识面向对象及类的引入前言一、面向过程和面向对象初步认识C语言C++二、类的引入C++的类名代表什么示例C++与C语言的struct的比较成员函数访问权限继承默认构造函数默认成员初始化结构体大小总结前言面向过程注重任务的流程和控制,适合简单任务和流程固定的......
  • c++算法学习笔记 (20) 哈希表
    1.模拟散列表//拉链法#include<bits/stdc++.h>usingnamespacestd;constintN=100003;inth[N];inte[N],ne[N],idx;//存链voidinsert(intx){intk=(x%N+N)%N;//让负数的余数变成正数(若直接加N,则可能溢出)e[idx]=x;ne[idx]......
  • c++算法学习笔记 (21) STL
    1.vector:        变长数组,倍增的思想        size()返回元素个数        empty()返回是否为空        clear()清空        front()/back()元素        push_back()/pop_back()        begin()/end()迭代器 ......
  • c++算法学习笔记 (19) 堆
    1.堆排序:(1)插入一个数:heap[++size]=x;up(size);//在最后插入,再往上移(2)求集合中最小值:heap[1](3)删除最小值:swap(heap[1],heap[size]);size--;down(1);//将最小值移到最后直接删除,再将heap[1]下移到合适位置(4)删除任意一个元素:swap(heap[k],heap[size]);size--;down(1)orup(1);/......
  • C/C++预处理过程
    目录前言:1.预定义符号2. #define定义常量3. #define定义宏4.带有副作用的宏参数5.  宏替换的规则6. 宏和函数的对比7.#和##8. 命名约定9. #undef10. 命令行定义11. 条件编译12. 头文件的包含13. 其他预处理指令总结:。前言:本篇介绍c/c+......
  • C++模版简单认识与使用
    目录前言:1.泛型编程2.函数模版3.类模版为什么要有类模版?使用typedef不行吗?类模版只能显示实例化:注意类名与类型的区别:注意类模版最好不要声明和定义分离:总结:前言:正如标题而言,这里只是对模版的简单认识与使用,方便后面博客介绍stl中一些容器的实现,更复杂详细的模版......
  • QT和C++排列组合
    界面比较简洁,如有需要请大家自行完善!!!头文件#pragmaonce#include<QtWidgets/QMainWindow>#include"ui_text.h"classtext:publicQMainWindow{  Q_OBJECTpublic:  text(QWidget*parent=nullptr);  ~text();  voidParseStringToVector(con......