⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 polymultip.cpp

📁 何光渝所著《计算机常用数值算法与程序(C++版)》的随书源代码。 是想学习C++科学计算的人士的必看代码。
💻 CPP
字号:
//PolyMultip.cpp		两一维实(复)多项式相乘示例

#include <iostream>			//输入输出流头文件
#include <polynomials.h>	//多项式头文件
using namespace std;		//名字空间

void main()
{
	cout << "PolyMultip()" << endl << endl;

	//多项式系数为实数
	cout << "Coefficients are real. Result is real: " << endl;
	
	double dCoffP[6] = {4.2, -6.1, 5.4, 2.5, -1.8, 3.6};
    double dCoffQ[4] = {2.92, 3.71, -6.45, 2.64};
    
	valarray<double> vdCoffP(dCoffP,6);
	valarray<double> vdCoffQ(dCoffQ,4);
	valarray<double> vdCoffS(9);
		
	cout.setf(ios::fixed|ios::left);	//输出数据为定点法,靠左对齐
	cout.precision(4);					//精度4位
	
	PolyMultip(vdCoffP, vdCoffQ, vdCoffS);
    for (size_t st = 0; st < 9; st++)
	{
		cout << "dCoffS(" << st << ") = " << vdCoffS[st] << endl;

	}
	
	cout << endl;

	//多项式系数为复数
	cout << "Coefficients are complex. Result is complex: " << endl;
	
	complex<double> cdCoffP[7] = 
	{
		complex<double>(1.2,  3.4), 
		complex<double>(-3.2, -4.8), complex<double>( 2.7, -6.4),
		complex<double>(3.1,   5.9), complex<double>( 3.5,  3.9),
		complex<double>(12.1, -5.4), complex<double>(-2.5,  8.4),
	};

	complex<double> cdCoffQ[6] = 
	{ 
		complex<double>( 0.9,  1.4), complex<double>(-0.5,  1.4),
		complex<double>(-0.9, -1.8), complex<double>(-1.1, -1.4),
		complex<double>( 1.1,  1.9), complex<double>(-1.5,  1.9),
	};

	valarray<complex<double> > vcdCoffP(cdCoffP,7);
	valarray<complex<double> > vcdCoffQ(cdCoffQ,6);
	valarray<complex<double> > vcdCoffS(12);
	
	//complex<double> cdCoffS[12];
	
    PolyMultip(vcdCoffP, vcdCoffQ, vcdCoffS);
    for (st = 0; st < 12; st++)
	{
		cout << "cdCoffS(" << st << ") = " << vcdCoffS[st] << endl;
	
	}
	
	cout << endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -