Do //внешний цикл - изменение аргумента
{
temp = 1.0; //первое слагаемое
s = 1.0; //начальное значение суммы
n = 1; //количество итераций на каждом шаге
f = cos(x); //точное значение функции
//внутренний цикл - вычисление суммы ряда
while (fabs(temp) > eps)
{
//очередное слагаемое
temp *= - x * x / (2.0 * n * (2.0 * n - 1.0));
s += temp; //очередная сумма
n++; //количество итераций
}
printf("\n%5.3f %d %0.6f %0.6f", x, n, s, f);
x += delta_x; //увеличение аргумента на шаг delta_x
}
while (x <= x_kon);
printf("\n--------------------------------------");
return 0;
}
3.3. На языке Java:
package javaapplication3;
// Импорт библиотеки графических компонентов Swing
import javax.swing.*;
import java.util.*;
public class JavaApplication3 // задание нового класса
{
// описание главного метода main этого класса
public static void main(String[] args)
{
//описание переменных:
// действительного типа
Double x, s, f, x_nach, x_kon, delta_x, eps, temp;
Int n; // целого типа
String input, text; // строк класса String
//консольный вывод
System.out.println("Лабораторная работа №3");
System.out.println("Вариант №0");
System.out.println("ПО-11-1");
System.out.println("Пупкин Василий");
System.out.println();
// вызов диалогового окна ввода исходных данных
input=JOptionPane.showInputDialog("x_nach=");
// преобразование из строкового значения в вещественное
x_nach=Double.parseDouble(input);
//консольный вывод
System.out.printf("x_nach=%5.2f\n", x_nach);
input=JOptionPane.showInputDialog("x_kon=");
x_kon=Double.parseDouble(input);
//консольный вывод
System.out.printf("x_kon=%5.2f\n", x_kon);
input=JOptionPane.showInputDialog("delta_x=");
delta_x=Double.parseDouble(input);
//консольный вывод
System.out.printf("delta_x=%5.2f\n", delta_x);
input=JOptionPane.showInputDialog("eps=");
eps=Double.parseDouble(input);
//консольный вывод
System.out.printf("eps=%8.5f\n", eps);
// формирование строки вывода
text="Значения входных переменных:\nx_nach=" + x_nach + "\nx_kon=" + x_kon + "\ndelta_x=" + delta_x + "\neps=" + eps;
// вызов диалогового окна эхо-печати
JOptionPane.showMessageDialog(null, text);
//консольный вывод
System.out.println("--------------------------------------");
System.out.println(" x n s f");
System.out.print("--------------------------------------");
// вычисление значений переменных по заданному алгоритму
x = x_nach;
Do //внешний цикл - изменение аргумента
{
temp = 1.0; //первое слагаемое
s = 1.0; //начальное значение суммы
n = 1; //количество итераций на каждом шаге
f = Math.cos(x); //точное значение функции
//внутренний цикл - вычисление суммы ряда
while (Math.abs(temp) > eps)
{
//очередное слагаемое
temp *= - x * x / (2.0 * n * (2.0 * n - 1.0)); s += temp; //очередная сумма
n++; //количество итераций }
//консольный вывод
System.out.printf("\n%5.3f %d %7.6f %7.6f", x, n, s, f);
x += delta_x; //увеличение аргумента на шаг delta_x
}
while (x <= x_kon);
//консольный вывод
System.out.println();
System.out.println("--------------------------------------");
}
}
3.4. На языке PHP:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
Лабораторная работа №3
</title>
</head>
<body BgColor="silver" text="blue">
<H2>Лабораторная работа №3</h2>
<H3>Циклы, управляемые условиями</h3>
Вариант №0
<br>ПО-11-1
<br>Пупкин Василий
<br>
<br>
<Form name="LabRab_3" action="" method="POST">
Начальное значение аргумента:<br>
<input type="text" name="x_nach" size="5"><br>
Конечное значение аргумента:<br>
<input type="text" name="x_kon" size="5"><br>
Шаг изменения аргумента:<br>
<input type="text" name="delta_x" size="5"><br>
Точность вычислений:<br>
<input type="text" name="eps" size="5"><br>
<input type="submit" value="Вычислить"><br>
</form>
<?php
// получение значения переменной из формы
$x_nach=$_POST['x_nach'];
$x_kon=$_POST['x_kon'];
$delta_x=$_POST['delta_x'];
$eps=$_POST['eps'];
if (($x_nach!='') && ($x_kon!='') && ($delta_x!='') && ($eps!=''))
{
//эхо-печать
echo "<br>Для x=$x_nach до $x_kon с шагом $delta_x и точностью $eps";
echo '<br>-----------------------------------------<br>';
echo '...x..........n...............s....................f';
echo '<br>-----------------------------------------';
// вычисление переменных по заданному алгоритму
$x = $x_nach;