- •Алгоритмічні мови та програмування Методичні вказівки
- •Алгоритмічні мови та програмування Методичні вказівки
- •03056, Київ, вул..Політехнічна, 12, корп. 17
- •Порядок виконання роботи
- •Загальні відомості для виконання лабораторної роботи
- •0X число (шістнадцяткове),
- •0 Число(число (вісімкове),
- •Результат виконання
- •Порядок виконання роботи
- •Порядок виконання роботи
- •Порядок виконання роботи
- •Додаток 1
- •Додаток 2
- •Порядок виконання роботи
- •Порядок виконання роботи
- •Доступ до елемента масиву
- •Запис вектора у стовпець (рядок) масиву
- •Зміна стовпців масиву
- •Додаткові засоби
- •Теоретична частина
- •Порядок виконання роботи
- •Теоретична частина
- •Порядок виконання роботи
- •Додаток
- •Порядок виконання роботи
- •Результати виконання програми
- •Результати виконання програми
- •Порядок виконання роботи
- •Добирання формул за дослiдними даними згiдно методу найменших квадратiв
- •Порядок виконання роботи
- •Порядок виконання роботи
- •Додаток 1
- •Додаток 2
- •Додаток 3
- •Порядок виконання роботи
- •//Функція
- •//Динамічні масиви
- •Порядок виконання роботи
- •Порядок виконання роботи
- •Порядок виконання роботи
- •Порядок виконання роботи
Результати виконання програми
v1 = (5)+j*(-2) //результат додавання x1 і y1
v1 = (19)+j*(7) //результат множення x1 і y1
v2 = (5)+j*(-2) //результат додавання x1 і y1
v2 = (5)+j*(-2) //результат додавання x1 і y1
v2 = (5.385165)*(0.371391 + j*(-0.928477)) //тригонометричний запис
Введiть масив C1 (n комплексних чисел)
//із клавіатури вводяться такі числа 1 2 4 3 6 5 7 8
control1 1+j*2 4+j*3 6+j*5 7+j*8
Пошук номера першого елемента массиву,
y якого дiйсна частина перевищує уявну
Простий цикл (C1) im1=1
Цикл FOR (C2) im2=1
Цикл WHILE (C3) im3=1
Цикл DO WHILE (C3) im4=1
Програма COMPLEX2.CPP
#include <iostream.h>
#include <complex.h>
#include <conio.h>
#define n 4
void main ()
{
int i, imax;
double norm_max, t;
complex x = complex(3, 4), y = complex(4, -3),
z = complex(-3, 2), w = complex(1.5, -4), v, xconj;
v = (x + y - z*w)/x; v = v*v;
cout << "\n v=" << v;
getch(); clrscr();
//функцiї бiблiотеки complex.h
double xre, xim, xnorm, x
cout << "\n x = " << x;
xre = real(x); cout << " xre = " << xre; //дiйсна частина
xim = imag(x); cout << " xim = " << xim; //уявна частина
xnorm = norm(x); cout << " xnorm = " << xnorm; //норма
xabs = abs(x); cout << " xabs = " << xabs; //абсолютне значення
xfi = arg(x); cout << " xfi = " << xfi; //кутовий аргумент
xconj = conj(x); cout << "\n xconj = " << xconj;
//трiгонометричний запис х
cout << “\n x = (" << xabs << ")*(cos(" << xfi << “) + j*sin(" << xfi << "))";
//показниковий запис
cout << "\n x = (" << xabs << ")* exp(j*" << xfi <<")";
//z = exp(x) = exp(real(x))*(cos(imag(x)) + j * sin(imag(x)))
t = exp(real(x)); z = complex (t*cos(imag(x)), t*sin(imag(x)));
cout << "\n\tz = " << z;
complex c3[n]; void prnt3(complex *com);
cout << "\n\n Введiть масив C3 (n комплексних чисел) \n";
for (i = 0; i < n; i ++)
cin >> c3[i];
prnt3(c3);
/*Циклiчний обчислювальний процес*/
/*Пошук елемента массиву iз найбiльшою нормою*/
cout<<"\n\n\tПошук елемента массиву iз найбiльшою нормою";
norm_max=0;
cout << "\n\n\t Простий цикл (C1) ";
i=0;
m: if (norm(c3[i]) > norm_max)
{
norm_max = norm(c3[i]); imax = i;
}
i++; if (i < n) goto m;
cout << "\tc3max = " << c3[imax];
getch();
cout << "\n\n\t Цикл FOR (C2)";
norm_max = norm(c3[0]); imax = 0;
for (i = 1; i < n; i ++)
{
if (norm(c3[i]) > norm_max)
{
norm_max = norm(c3[i]); imax = i;
}
}
cout << "\t c3max = " << c3[imax];
getch();
cout << "\n\n\t Цикл WHILE (C3)";
i = 1; norm_max = norm(c3[0]); imax = 0;
while (i < n)
{
if (norm(c3[i]) > norm_max)
{
norm_max = norm(c3[i]); imax = i;
}
i++;
}
cout << "\t c3max = " << c3[imax];
getch();
}
/*Функцiя виведення масиву*/
void prnt3 (complex *com)
{
cout << " control34 ";
for (int i = 0; i < n; i ++)
cout << *com++ << " ";
}