一、实验目的
通过上机编程,复习巩固以前所学程序设计语言;
通过上机计算,了解舍入误差所引起的数值不稳定性。
通过上机计算,了解运算次序对计算结果的影响,从而尽量避免大数吃小数的现象。
二、实验内容
通过正反两个实例的计算,了解利用计算机进行数值计算中舍入误差所引起的数值不稳定性,深入理解初始小的舍入误差可能造成误差积累从而对计算结果的巨大影响。
通过实际编程,了解运算次序对计算结果的影响,了解实数运算符合的结合律和分配律在计算机里不一定成立。
概要
舍入误差在计算方法中是一个很重要的概念。在实际计算中,如果选用了不同的算法,由于舍入误差的影响,将会得到截然不同的结果。因此,选取稳定的算法,在实际计算中是十分重要的。
程序与实例
例 1 对 n = 0,1,2,…,20 计算定积分
三、算法描述
算法 1 利用递推公式
算法 2 利用递推公式
四、源程序
#include <iostream>
#include <math.h>
#include <iomanip>
using namespace std;
int main()
{
double y1[41]