Biblioteci Grafice. Functii de Baza

Imagine preview
(7/10 din 1 vot)

Acest laborator prezinta Biblioteci Grafice. Functii de Baza.
Mai jos poate fi vizualizat un extras din document (aprox. 2 pagini).

Arhiva contine 1 fisier doc de 6 pagini .

Profesor: Maria G.

Iti recomandam sa te uiti bine pe extras si pe imaginile oferite iar daca este ceea ce-ti trebuie pentru documentarea ta, il poti descarca.

Fratele cel mare te iubeste, acest download este gratuit. Yupyy!

Domeniu: Grafica Computerizata

Extras din document

Condiţie :

1. Este dată funcţia y=f(x).

Alcatuiţi în C++ funcţia (procedura) proprie ce depinde de 2

parametri şi calculează valoarea funcţiei f pentru argumentul

dat x cu precizia dată epsilon.

2. Creaţi un proiect de tip Single Document în Microsoft Visual C++. Adăugaşi în proiectul dat codul ce desenează cu segmente de linii drepte graficul funcşiei f cu culoarea indicată pe intervalul dat (a,b) cu pasul dat h . Pentru a calcula valoarea funcşiei folosişi procedura proprie cu precizia indicată.

3. Adăugaţi în proiect codul care desenează cu o altă culoare deasupra primului grafic un grafic punctat al aceleiaşi funcţii, însă fiind calculată funcţia cu ajutorul bibliotecii standarte de funcţii matemetice. Graficele trebuie să coincidă.

4. Adăugaţi în proiect codul care creează 2 fişiere de tip text cu un numar egal de linii ce coincide cu un număr de puncte calculate ale funcţiei. Primul fişier trebuie să conţină pentru fiecare linie:

- valoarea argumentului;

- valoarea funcţiei calculată cu ajutorul procedurii proprii;

- valoarea funcţiei calculată cu ajutorul funcţiei standarte (bibliotecii matematice);

- mărimea absolută a valorii tabulate (diferenţa dintre două valori calculate);

- precizia dată.

Acest fişier îl folosim pentru un control vizual al faptului că mărimea absolută a diferenţei fiecărei linii nu întrece valoarea preciziei.

Al doilea fişier îl utilizăm pentru un control suplimentar.

5. De încărcat un program specializat de desenare al graficelor

funcţiilor. De importat al 2-lea fişier textual şi de construit

graficul funcţiei folosind perechile de coordonate. De construit

deasupra graficului graficul aceleiaşi funcţii folosind forma

analitică. De analizat datele obţinute.

6. De prezentat şi de susţinut lucrarea la profesorul de laborator.

2. Lising-ul:

// proiectView.cpp : implementation of the CproiectView class

//

#include "stdafx.h"

#include "proiect.h"

#include "math.h"

#include "proiectDoc.h"

#include "proiectView.h"

#ifdef _DEBUG

#define new DEBUG_NEW

#endif

// CproiectView

IMPLEMENT_DYNCREATE(CproiectView, CView)

BEGIN_MESSAGE_MAP(CproiectView, CView)

// Standard printing commands

ON_COMMAND(ID_FILE_PRINT, &CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_DIRECT, &CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_PREVIEW, &CView::OnFilePrintPreview)

END_MESSAGE_MAP()

// CproiectView construction/destruction

CproiectView::CproiectView()

{

// TODO: add construction code here

}

CproiectView::~CproiectView()

{

}

BOOL CproiectView::PreCreateWindow(CREATESTRUCT& cs)

{

// TODO: Modify the Window class or styles here by modifying

// the CREATESTRUCT cs

return CView::PreCreateWindow(cs);

}

// CproiectView drawing

double myf (double x, double e){

double s,t;

int k;

k=1;

s=t=x;

for (k=2;fabs(t)>e;k++)

{

t=t*x*x/((2*k-1)*(2*k-2));

s+=t;}

return s; }

void CproiectView::OnDraw(CDC* pDC)

{

CproiectDoc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

if (!pDoc)

return;

// TODO: add draw code for native data here

double x,y,a=-6,b=6,s=0.025,scx=60.0,scy=80.0,e=0.0001;

CPen penAxa (PS_SOLID,4,RGB(0,0,200));

CRect rcClient;

GetClientRect(&rcClient);pDC->SelectObject(&penAxa);

pDC->MoveTo(0,rcClient.CenterPoint().y);

pDC->LineTo(rcClient.Width(),rcClient.CenterPoint().y)

Fisiere in arhiva (1):

  • Biblioteci Grafice. Functii de Baza.doc

Alte informatii

UNIVERSITATEA DE STAT DIN MOLDOVA FACULTATEA MATEMATICĂ ŞI INFORMATICĂ