C語言實現(xiàn)在控制臺打印余弦曲線
需求
在控制臺打印余弦曲線。
余弦曲線又叫余弦波(cosinwave),是一種來自數(shù)學(xué)三角函數(shù)中的余弦比例的曲線。也是模擬信號的代表,與代表數(shù)字信號的方波相對。
標準的純余弦函數(shù)公式為:
實例代碼
/** * @author: 沖哥 @C語言中文社區(qū) * @date: 2023/02/14 * @description: */ #include <stdio.h> #include <math.h> #define PI 3.141592653 #define BIG_SIZE 10 //圖形放大的倍數(shù) int main() { int x;//x軸 double y;//y軸 int m; for (y = 1; y >= -1; y -= 0.1) {//y的取值范圍是-1~1,這里設(shè)置步長為0.1 m = acos(y) * BIG_SIZE;//計算y對應(yīng)的橫坐標的值 for (x = 1; x < m; x++) { printf(" ");//打印*之前的空格 } printf("*");//打印* for (; x < 2 * PI * BIG_SIZE - m; x++) {//打印對稱面的空格和* printf(" "); } printf("*\n"); } }
運行結(jié)果
代碼分析
繪制余弦曲線用到了反余弦函數(shù)acos(),代碼中需要引入#include <math.h>頭文件,acos(y) 通過縱坐標的值來求出橫坐標的值,確定了橫坐標的值,其對稱位置的橫坐標值也就可以確定,即用2 * PI減去求出的橫坐標值,為了讓打印出的曲線更直觀,代碼里給x軸的值擴大了10倍。
補充
除了余弦曲線,當然還能繪制正弦曲線呀,下面就是實現(xiàn)代碼
/****************繪制0~2PI區(qū)間內(nèi)的弦曲線****************/ /***********編者:董炳政******編寫時間2018/07/20**********/ /*******************************************************/ #include <stdio.h> #include <math.h> #define PI 3.14159 int main() { double y; /*縱坐標y*/ int x,m; /*橫坐標x*/ for(y = 1;y >= 0;y -= 0.1) /*先求0~PI,縱軸y從1~0,步長為0.1*/ { m=asin(y)*10; /*利用math.h中的反正弦函數(shù),求對應(yīng)橫坐標的值,此時m為int型變量*/ for(x = 1;x < m;x++) /*開始逐行打點*/ printf(" "); /*在曲線定點右側(cè),打印空格*/ printf("*"); /*第一個曲線定點打印“*”*/ for(;x < 31-m;x++) /*開始打印對稱曲線定點,由于0~PI的對稱性x的終值為31-m*/ printf(" "); /*在兩定點之間打印空格*/ printf("*\n"); /*第二個曲線定點打印“*”,并換行*/ } for(y -= 0.1;y >= -1;y -= 0.1) { m=(PI+asin(-y))*10; for(x=1;x<m;x++) printf(" "); printf("*\n"); for(;x<(62-(m-31));x++) printf(" "); printf("*\n"); } return 0; }
運行結(jié)果
[root@localhost 1_drawingcos]# ./drawingsin
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
* *
**
到此這篇關(guān)于C語言實現(xiàn)在控制臺打印余弦曲線的文章就介紹到這了,更多相關(guān)C語言余弦曲線內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
簡單對比C語言中的fputs()函數(shù)和fputc()函數(shù)
這篇文章主要介紹了簡單對比C語言中的fputs()函數(shù)和fputc()函數(shù),注意其之間的區(qū)別,需要的朋友可以參考下2015-08-08VC++簡單實現(xiàn)關(guān)機、重啟計算機實例代碼
這篇文章主要介紹了VC++簡單實現(xiàn)關(guān)機、重啟計算機實例代碼,很實用的功能,需要的朋友可以參考下2014-07-07C++的static關(guān)鍵字及變量存儲位置總結(jié)
今天看博文時,看到了c++的static關(guān)鍵字的一些總結(jié),還涉及到了一些代碼的存儲位置;接下來為您詳細呈現(xiàn)2012-11-11