Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Modelarea in C++ a obiectului numar complex sub forma algebrica si

c




Modelarea în C++ a obiectului numar complex sub forma algebrica si

sub forma trigonometrica(conversie).

 


FUNDAMENTE TEORETICE

Prin introducerea numerelor reale se pot exprima rezultatele oricaror masuratori,dar problema solutiilor ecuatiilor de orice tip , cu coeficienti reali,nu este rezolvata.Ecuatii simple ca x2+1=0,x2+x+1=0 nu au solutii in multimea R a numerelor reale.

De aceea,se pune in mod necesar problema extinderii in continuare a notiunii de numar.Aceasta extindere conduce la notiunea de numar complex.Vom arata in acest capitol ca multimea numerelor complexe este suficient de larga ,incat orice ecuatie de gradul al II-lea cu coeficienti reali sa aiba solutii in aceasta multime.

Numerele complexe nu reprezinta rezultatul unor masuratori si de aceea teoria numerelor complexe are un caracter mai abstract, mai formal decat teoria numerelor reale. Remarcam ca,in pofida acestui grad de abstractizare a notiunilor, teoria numerelor complexe, prin implicatiile sale, are multiple aplicatii practice(de exemplu:in mecanica, electrotehnica, fizica atomica s.a.).

Multimea numerelor complexe

1.Definirea numerelor complexe

Fie produsul cartezian RxR=,adica multimea perechilor ordonate de numere reale.

Precizam ca doua perechi (a,b) si (a',b') sunt egale daca si numai daca a=a' si b=b'.

Astfel ,egalitatea (a,b)=(a',b') este echivalenta cu doua egalitati de numere reale a=a' si b=b'.

Definim pe multimea RxR doua operatii algebrice:adunarea si inmultirea.

Daca z=(a,b) si z'=(a',b') apartin multimii RxR , atunci definim:

z+z'=(a+a',b+b')

Elementul (a+a',b+b') se numeste suma dintre z si z', iar operatia prin care oricaror elemente z si z' din multimea RxR li se asociaza suma lor se numeste adunare.

De asemenea, definim :

z*z'=(a*a'-b*b',a*b'+a'*b).

Elementul (a*a'-b*b',a*b'+a'*b) se numeste produsul dintre z si z' ,iar operatia prin care oricaror elemente z si z' din multimea RxR li se asociaza suma lor se numeste inmultire.

Proprietatile adunarii nmerelor complexe:

a)Adunarea este comutativa,adica oricare ar fi z si z' din C , avem

z+z'=z'+z

b)Adunarea este asociativa ,adica oricare ar fi z, z' si z" din C ,avem

(z+z')+z"=z+(z'+z")

c)Element neutru .Numarul complex 0=(0,0) este element neutru pentru adunare , adica oricare ar fi z din C .

Avem :

z+0=0+z=z.

d)Orice numar complex are un opus, adica oricare ar fi z din C , exista un numar complex notat cu -z astfel incat

z+(-z)=(-z)+z=0.

Proprietatile inmultirii numerelor complexe:

a)Inmultirea este comutativa , adica oricare ar fi z si z' din C ,avem

zz'=z'z

b)Inmultirea este asociativa ,adica oricare ar fi z,z' si z" din C,avem

(zz')z"=z(z'z").

c)Element neutru.Numarul complex 1=(1,0) este element neutru pentru inmultire ,adica oricare ar fi z din C,avem:

z*1=1*z=z.

d)Orice numar complex diferit de 0are un invers,adica oricare ar fi z 0,exista un numar complex notat cu z-1 astfel incat

zz-1=z-1z=1.

e)Inmultirea este distributiva fata de adunare ,adica oricare ar fi z,z'si z" din C, au loc relatiile :z(z'+z")=zz'+zz" si (z+z')z"=zz"+z'z".

Forma algebrica a numerelor complexe

1.Notatia z=(a,b), introdusa pentru numerele complexe ,nu este prea comoda in calculele cu numere complexe .De aceea ,de obicei, se foloseste o alta scriere a numerelor comlexe.

Convenim sa notam numarul complex (0,1) prin i.Atunci,dupa regulile de adunare si inmultire a numerelor complexe, avem:

(a,b)=(a,0)+(0,b)=(a,0)+(b,0)(0,1).

Deoarece (a,0) si (b,0) se identifica cu a ,respectiv b, iar (0,1) s-a notat cu i,atunci aceasta scriere se reprezinta sub forma (a,b)=a+bi.

Aceasta expresie se numeste forma algebrica a numarului complex (a,b).

Exemple

In continuare vom scrie numerele complexe sub forma lor algebrica.

Numarul complex i se numeste unitate imaginara .Numerele de forma bi, cu b numar real, se numesc imaginare . Daca numarul complex z se scrie sub forma z = a + bi, atunci a se numeste partea reala , iar bi se numeste partea imaginara a numarului z .Numarul b se numeste coeficientul partii imaginare .

Reluam mai jos adunarea si inmultirea a doua numere complexe reprezentate sub forma algebrica.

Astfel:

(a+bi)+(a'+b'i)=(a+a')+(b+b')i; (1')

(a+bi)(a'+b'i)=(aa'- bb')+(ab'+a'b)i. (2')

Deci suma a doua numere complexe este un numar complex a carui parte reala , respectiv imaginara ,este suma partilor reale ,respectiv imaginare ale numerelor date.

Formula (2') care da inmultirea a doua numere complexe este mai greu de retinut si chiar de formulat. Observam insa ca ,daca z=a+bi si z'=a'+b'I sunt numere complexe ,atunci avand in vedere proprietatile operatiilor pe C ,rezulta :

(a+bi)(a'+b'i)=aa'+(ab'+a'b)i+bb'i2

Dar inlocuind i2 cu -1 in ultima relatie ,se obtine formula (2').

Numere complexe conjugate

Daca z=a=bi este numar complex , atunci numarului a-bi,notat prin ,(adica z barat) sau se numeste conjugatul sau .Evident , conjugatul lui este z.De aceea , numerele complexe z si se numesc conjugate.

Daca a este un numar real oarecare ,atunci a=a+0i=, si deci a este egal cu conjugatul sau . Mai mult ,daca a+bi este un numar complex astfel incat a+bi=a-bi,atunci b=-b, de unde b=0.Deci a+bi=a+0i=a este un numar real.

Astfel, am aratat ca : dintre toate numerele complexe ,numerele reale (si numai ele) sunt egale cu conjugatele lor.

Avem urmatoarele proprietati:

a.Suma si produsul a doua numere complexe conjugate sunt numere complexe.

b.Oricare ar fi numerele complexe z si z', avem =, =.

3.Modulul unui numar complex .

Modulul unui numar complex z=a+bi este intotdeauna pozitiv, el fiind egal cu zero daca si numai daca a=b=0.

4.Puterile numarului i.

In general fie n un nu8mar natural oarecare .Atunci numarul n se gaseste intr-una (si numai una) din urmatoarele situatii:

a.      n=4k (k numar natural) si deci in =i4k=1;

b. n=4l +1 (l numar natural) si deci in =i4l+1=i;

c. n=4p+2 (p numar natural) si deci in=i4p+2=-1;

d. n=4q+3 (q numar natural) si deci in=i4q+3=-i;

NUMERE COMPLEXE SCRISE SUB FORMA TRIGONOMETRICA

Fiecarui numar complex z=x+iy (x,yR) ii asociem un punct unic M P de coordonate (x,y) , fata de reperul ales,numit imaginea numarului complex z.

Am definit in acest fel o functie bijectiva f:C-->P.Daca imaginea lui z=x+iy este punctul M,atunci numarul complex z se numeste afixul punctului M.

Daca coordonatele polare ale punctului M sunt r si t*,atunci conform formulelor

x=r cos t*, y=r sin t*

Numarul complex z=x+iy se scrie:

Z=r(cos t* + i sin t*),r0,t*[0,2).

Deoarece r=OM= si |z|=, rezulta ca r=|z|,

Deci raza polara a imaginii lui z este egala cu modulul lui z.Argumentul polat t* al imaginii lui z se numeste argumentul redus al lui z si se noteaza cu arg z.

In concluzie,orice numar complex z poate fi scris sub forma (1),numita forma trigonometrica a lui z.

Daca z0,modul si argumentul redus ale lui z sunt determinate unic.

Daca z=0,modulul este egal cu 0 si pentru argumentul sau redus se poate lua orice numar din (0,2).

Daca schimbam pe t* in t*+2k,kZ, formula (1) ramane variabila.

Asadar exista mai multe valori t pentru care

(3) z=r(cos t + i sin t), r0.

Se pune intrebarea daca pentru un numar dat z0 formula (3) este adevarata si cu valori t diferite de arg z+2k,kZ.

Fie numarul z0,scris sub forma (3).Se stie ca oricare ar fi numarul real t, el poate fi scris ca t1 + 2k cu t1 [0,2)si kZ.Din (3) rezulta

z=r[cos(t1+2k)+i sin(t1+2k)]=r(cos t1+i sin t1) de unde r=z, t1=arg z

Am ajuns la concluzia ca t=argz+2k.

Orice numar real t,pentru care relatiile (3) au loc,se numeste argument al lui z.

Multimea argumentelor lui z se noteaza cu Arg z.Conform celor aratate mai sus putem scrie:

Arg z=, (4)

deci diferenta a doua argumente ale unui numar complex z0 este un multiplu de 2

Exemple.1. Fie umarul complex z=1-i.Sa se determine |z|,arg z ai Arg z.

Solutie. Deoarece x=1 si y=-1,imaginea lui z se afla in cadranul IV,adica si

t*=arg z

r=|z|==, tg t*==-1

deci t*=(pe fig. III.2,)

t* este lungimea arcului mare AC).

Arg z=.

2. Fie z=-i, sa se determine |z|si Arg z.

Solutie.

|z|=r==1.

Deoarece x=0 si y=-1,imaginea lui z se gaseste pe semiaxa negativa a axei de coordonatelor,deci arg z=

Arg z=

3. Conjugatul al numarului complex z=x+iy, cu y0, are argumentul redus

arg =2-arg z. (5)

Intr-adevar,daca |z=r si arg z=t* atunci

||=r cos t*-ir sin t*=r[cos(2-t*)+ i sin (2-t*)]

Deci 2-t*Arg si cum 0<2-t*<2,2-t*=arg .

PROGRAMUL SURSĂ C++

#include<stdio.h>

#include<conio.h>

#include<math.h>

#include<stdlib.h>

#include<time.h>

#include<iomanip.h>

#include<iostream.h>

#include<string.h>

#define N 200

//Functii pentru activarea ferestrelor de citire si afisare

void activ_fereastracitire()

//fereastra pentru afisarea datelor

void activ_fereastradate()

z=a+bi FORMA ALGRBRICA

z=r(cos(t)+i*sin(t)) FORMA TRIGONOMETRICA

r=sqrt(a^2+b^2), r>=0 Raza polara r=|z|

x=r*cos(t) ; y=r*sin(t); tg(t)=y/x

t apart [0,2*PI) , argumentul REDUS notat arg z

z=0 => r=0, pt t se poate lua orice valoare din [0,2*PI)

argumentul lui z Arg z=

MODELAREA OBIECULUI NUMAR COMPLEX SUB FORMA TRIGONOMETRICA

TRECEREA DE LA FORMA ALGEBRICA LA CEA TRIGONOMETRICA

TRECEREA DE LA FORMA TRIGONOMETRICA LA CEA ALGEBRICA

1.-AFISAREA INTR-O FEREASTRA A FORMEI ALGEBRICE

2.-AFISAREA INTR-O FEREASTRA A FORMEI TRIGONOMETRICE CU ARGUMENT NEREDUS si exprimat in radiani

3.-AFISAREA INTR-O FEREASTRA A FORMEI TRIGONOMETRICE CU ARGUMENT NEREDUS si exprimat in multiplu de PI

4.-AFISAREA INTR-O FEREASTRA A FORMEI TRIGONOMETRICE CU ARGUMENT NEREDUS si exprimat in GRADE

5.-AFISAREA INTR-O FEREASTRA A FORMEI TRIGONOMETRICE CU ARGUMENT REDUS si exprimat in radiani

6.-AFISAREA INTR-O FEREASTRA A FORMEI TRIGONOMETRICE CU ARGUMENT REDUS si exprimat in multiplu de PI

7.-AFISAREA INTR-O FEREASTRA A FORMEI TRIGONOMETRICE CU ARGUMENT REDUS si exprimat in GRADE

//definitia obiectului numar cpmplex

typedef struct complex_t

//Constructorul formei trigonometrice a unui numar compex nenul

//pe baza formei algebice

complex_t(char *nume1,double a1,double b1);

// 1.AFISAREA INTR-O FEREASTRA A FORMEI ALGEBRICE

//FUNCTIE MEMBRU PENTRU AFISAREA FORMEI ALGEBRICE

//INTR-O FEREASTRA

void afis_z_algeb();

// 2.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT NEREDUS EXPRIMAT IN RADIANI

void af_trig_nred_rad();

// 3.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT NEREDUS si exprimat in multipli de PI

void af_trig_nred_nPI();

// 4.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT NEREDUS si exprimat in GRADE

void af_trig_nred_grad();

// 5.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT REDUS EXPRIMAT IN RADIANI

void af_trig_red_rad();

// 6.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT REDUS si exprimat in multipli de PI

void af_trig_red_nPI();

// 7.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT REDUS si exprimat in GRADE

void af_trig_red_grad();

//FUNCTIE PT CITIREA unui obiect numar complex algebric z= a+bi

void cit_z_algeb(char nume1[N]);

//FUNCTIE PT CITIREA unui obiect numar complex trigonometric

// z=r(cos t+i sin t)

void cit_z_trigo(char nume1[N]);

}complex_t; //SFARSIT CLASA

//Functie pentru normalizarea argumentului

//Stabileste valoarea argumentului redus t

void complex_t::normaliz() //fct pt normalizare

if(tt<0)

t=tt;

//1.FUNCTIE MEMBRU PENTRU AFISAREA FORMEI ALGEBRICE

//INTR-O FEREASTRA

void complex_t::afis_z_algeb()

// 2.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT NEREDUS EXPRIMAT IN RADIANI

void complex_t::af_trig_nred_rad()

// 3.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT NEREDUS si exprimat in multipli de PI

void complex_t::af_trig_nred_nPI()

// 4.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT NEREDUS si exprimat in GRADE

void complex_t::af_trig_nred_grad()

// 5.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT REDUS EXPRIMAT IN RADIANI

void complex_t::af_trig_red_rad()

// 6.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT REDUS si exprimat in multipli de PI

void complex_t::af_trig_red_nPI()

// 7.FUNCTIE MEMBRU PENTRU AFISAREA INTR-O FEREASTRA A FORMEI

// TRIGONOMETRICE CU ARGUMENT REDUS si exprimat in GRADE

void complex_t::af_trig_red_grad()

//Constructorul formei trigonometrice a unui numar compex nenul

//pe baza formei algebice

complex_t::complex_t(char *nume1,double a1,double b1)

if(a==0&&b>0)

if(a==0&&b<0)

t1=atan(b/a);

//Daca a<0, t=PI+arctg(b/a)

//Daca a>0 si b>0 t=PI+arctg(b/a)

//Daca a>0 si b<0 t=2*PI+arctg(b/a)

if(a<0)

if(b<0)

//FUNCTIE PT CITIREA unui obiect numar complex algebric z= a+bi

void complex_t::cit_z_algeb(char nume1[N])

if(a==0&&b>0)

if(a==0&&b<0)

t1=atan(b/a);

//Daca a<0, t=PI+arctg(b/a)

//Daca a>0 si b>0 t=PI+arctg(b/a)

//Daca a>0 si b<0 t=2*PI+arctg(b/a)

if(a<0)

if(b<0)

gotoxy(2,5);

getch();

//FUNCTIE PT CITIREA unui obiect numar complex trigonometric

// z=r(cos t+i sin t)

void complex_t::cit_z_trigo(char nume1[N])

//FUNCTIE PENTRU AFISAREA MENIULUI de rezolvare

void meniu_op(char aleg)

}

void main(void)

//sf switch

if(alegere=='0')

} //sf for

getch();



Document Info


Accesari: 7478
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )