Язык С++ и программирование на нем. Рейзлин В.И. - 28 стр.

UptoLike

Составители: 

30
Здесь вычисляется сумма геометрической прогрессии 1, 10.85,
10.850.85 и т.д., пока ее очередной член не станет меньше 10
-10
.
В следующем примере вычислим и выведем на экран дисплея
таблицу функции
)sin(
2
xy
для
/2] ,0[
x
с шагом
20/
.
#include <iostream.h>
#include <math.h>
#include <conio.h>
void main(){
int n = 10;
double x0 = 0, xk = M_PI_2, y,
h = (xk – x0)/n, xt = xk + h/2;
clrscr();
cout<<” x y\n
for(double x = x0; x < xt; x+ = h){
y = sin(x*x);
cout.width(4); cout.precision(2);
cout<<x;
cout.width(10); cout.precision(4);
cout<<y<<’\n’;
}
}
В этой программе используется константа M_PI_2, представляю-
щая значение
2/
и определенная в заголовочном файле math.h. Об-
ращение к функции cout.width(k) устанавливает ширину поля следую-
щего вывода в k позиций, что позволяет выровнять вид таблицы.
Функция cout.precision(k) задает число цифр, выводимых после деся-
тичной точки. Функция clrscr(), прототип которой находится в conio.h,
очищает экран.
Использовать ли циклы while или for это, в основном дело
вкуса. Цикл for предпочтительнее там, где имеется простая инициали-
зация и реинициализация, поскольку при этом управляющие циклом
операторы наглядным образом оказываются вместе в начале цикла. Это
наиболее очевидно в конструкции
for (i = 0; i < n; i ++),
которая применяется для обработки первых n элементов массива, ана-
логично оператору цикла for Паскаля. Аналогия, однако, не полная, так
как границы цикла могут быть изменены внутри цикла, а понятие