【C++養成計劃】玩轉數字——數學運算函數/隨機數(Day7)

寫在前面:大家好!我是【AI 菌】,一枚愛彈吉他的程序員。我熱愛AI、熱愛分享、熱愛開源! 這博客是我對學習的一點總結與記錄。如果您也對 深度學習、機器視覺、算法、Python、C++ 感興趣,可以關注我的動態,我們一起學習,一起進步~
我的博客地址爲:【AI 菌】的博客

上一篇:【C++養成計劃】深入淺出——函數(Day6)
昨天,我們學習了很重要的一個部分——函數,認識了基本的函數,並學會了使用函數處理不同類型的數據。今天,我們來學習C++中經常會使用到的有關數字的一些操作

1. 定義數字

我們所說的數字通常存儲在變量之中,定義數字本質上就是定義變量。因此在定義數字時,通常會使用到原始的數據類型,比如:int、short、long、float 和 double 等等。每一種數據類型,代表着該數允許的數值範圍和存儲該數分配的內存空間大小。
數據類型在前面已講過,不太熟悉的同學可回顧一下:【C++養成計劃】深入淺出——變量作用域(Day3)

2. 數學運算

爲了方便數學計算,我們可能會自定義一個函數實現相應的計算功能。其實在C++中,一些標準庫中已經內置了豐富的數學函數,可實現各種運算操作。我們在用的時候,直接調用該函數即可,只需要在程序開始引用頭文件,加入下面這行代碼:

#include <cmath>

下表列出了 C++ 中一些有用的內置的數學函數:
在這裏插入圖片描述
下面,我們來實際用一下這些的數學運算函數:

#include<iostream>
#include<cmath>
using namespace std;

int main()
{
	//定義數字 
	int a=1;
	float b=-1.0,c=3.0;
	double d=4.0;
	short e=45;
	float f=4.6;
	
	//調用數學運算函數
	cout<<"tan(45)="<<tan(e)<<endl;  //計算tan,注意默認是弧度制 
	cout<<"log(1)="<<log(a)<<endl;   
	cout<<"pow(1,45)="<<pow(a,e)<<endl;   //計算a的e次方 
	cout<<"hypot(3,4)="<<hypot(c,d)<<endl;   //計算c,d平方和的平方根 
	cout<<"sqrt(4)="<<sqrt(d)<<endl;  //計算平方根 
	cout<<"fabs(-1)="<<fabs(b)<<endl;  //對浮點型數取絕對值 
	cout<<"floor(4.6)="<<floor(f)<<endl;  //向下取整 
	return 0; 
} 

運行結果如下:
在這裏插入圖片描述

3. 隨機數

在有些情況下,需要生成隨機數,比如在做一個搖獎的小遊戲時,可能就會用到。在C++總,我們要生成隨機數,需要用到兩個函數:一個是srand(),用來設置隨機種子;另一個是rand(),用來生成隨機數。設置隨機種子在前,生成隨機數在後
需要注意的是,在使用srand()、rand()函數時,需在程序前添加頭文件:

#include <cstdlib>

下面舉一個簡單的例子,用來依次生成10個隨機數:

#include<iostream>
#include<cstdlib>
using namespace std;

int main()
{
	int j=0; 
	srand(5);   //設置隨機種子 
	for(int i=0;i<10;i++)
	{
		j=rand();   //生成隨機數 
		cout<<"隨機數j="<<j<<endl;
	}
	return 0;
} 

運行結果:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章