[ sasha_kg @ 23.12.2008. 09:14 ] @
Imam veliki problem oko izrade ovog zadatka

Treba da se napise aplikacija koja iscrtava grafik zadate funkcije f(x). Za ulaznu funkciju napravitii rutinu koja prepoznaje o kojoj je funkciji rec a zatim rutinu koja crta funkciju u optimalno iscrtanim granicama . Uraditi kompletan korisnicki interfejs za ovu aplikaciju i ponuditi vise opcija korisniku. Preporucuje se razvojno okruzenje programskog jezika Visual C++ ili Visual Studio.


Svaka pomoc je dobro dosla.

Unapred zahvalan
[ X Files @ 23.12.2008. 09:30 ] @
(23.12.2008. - 11:30) Tema je premeštena iz foruma C++ programiranje u forum C++ za početnike.
[ Ice-D @ 24.12.2008. 15:47 ] @
Sad nije navedeno koji grafičkim bibliotekam moraš to iscrtat ( vjerovatno GDI+ preko čistog WinAPI-a http://msdn.microsoft.com/en-u...y/ms533798(VS.85).aspx).Neznam se tim služiti ( baš se priprema ovih dana to proći ) ali to je sasvim jednostavno, u ostalom to ste valjda učili kad vam je profesor dao takvam zadatak. Inače ako se netraži način kako se iscrtaje možeš napraviti običnu kozolnu aplikaciju i sve iscrtati pomoću simbola.

Koliko znam odnosno ne znam matematiku mislim da graf možeš dobiti na dva načina:
1. Službeni način:
Prvo trebaš prepoznat o kakvoj je funkciji riječ ( linerna , kavdratna, racionalna...), a ond uradiš potrebne radnje . Recimo:
y = 1 / (1-x^2)
Domena = R\{-1,1}
Vertikalna asimptota kad limes teži u -1 i 1 = beskončno je -1, 1
Horizontaln kad limes teži u +-bekončno = 0 je 0

minimum ( 0, 1 )

dakle, getline ( cin, input );
If ( input ) sadrži '/' vrst = racionalna
If ( input ) sadrži '^' vrst = eksonencijalna
If ( input ) sadrži "sin" OR "tgn" OR ''ctgn" vrst = trigonometrijska
If........

Onda switch ( vrsta )
{
case racinalan:
FunkcijaRacionalna()
break;
case ....
..
...
...
FunkcijaRacinalna ()
{
Odredi što je nazivnik a što brojnik u inputu
dobij nultočke
uvrsti nultočke u limes i dobij asimptote
oderdi ekstreme
...
pozovi funkciju Crtaj()
}
Crtaj ()
{
Ovisno o udaljenostima između asimptota i ekstrema simbolima ću npravit pad ili rast grafa..
}

2. Lagani način ( bar mislim da se ovako može dobit graf funkcije )

samo uvrštavš u jednoj petlji točke u X i dobivaš y
x|-3|-2|-1|0 |0,5 |1 |2 |.......
y| 0,125|0,33|nema y|1|1.33|nema y|0,33|.....

Sad samo napraviš nekakvi kordinatni x,y sustav na konzoli ili formi i simbolima ili GDI+ nacrtaš točkice





Code:


                                        |
                                        |
                                        |
                                        |
                                        |
                                        |
                                        |
                                        |
                                        |
                         |              |           |
                           |            |          |
                             |          |         |
                               |        |       |
                                 |      |     |
                                    |   |   |
                                      | | |
                                       |||
                                        |
                                        |
                                        |
                                        |
     .............................................................................
       |                                |                                 * *  
           |                            |                             * 
                 |                      |                         * 
                      |                 |                    *
                                        |                 *                 
                       *               |               *      
                         *             |            *        
                          *            |         *
                           *                   *
                             *                *
                              *               *
                              *               *
[ Ice-D @ 24.12.2008. 16:08 ] @
evo naletio sam na neki c++ tutorial ( konzoli graf )
http://forum.codecall.net/c-tu...tions-console-application.html
ovaj fajl visualisation ti je je kompletni c# program... morat ćeš ga sam prebacit u c++...a možeš ga prebact u Managed C++ (C++.net) trebat će ti 20 minuta..
[ Nedeljko @ 26.12.2008. 07:54 ] @
Citat:
sasha_kg: Treba da se napise aplikacija koja iscrtava grafik zadate funkcije f(x).


Pretpostavljam da je funkcija data izrazom poput sin(2*x+exp(x^2))-sqrt(2*log(x+77)) koji se ukucava u nekom edit polju.

Citat:
sasha_kg: Za ulaznu funkciju napravitii rutinu koja prepoznaje o kojoj je funkciji rec


Sta ovo znaci? Kako bi prepoznao funkciju koju sam naveo? Jel mislis na parsiranje?

Citat:
sasha_kg: crta funkciju u optimalno iscrtanim granicama.


Koje su optimalne granice za funkciju koju sam naveo?


Meni iznad svega nije jasno koji deo tebi zapinje. C++, GUI, parsiranje, odredjivanje granica... Sta? Nije valjda da ocekujes ceo program?
[ Cale90buk @ 13.06.2014. 14:49 ] @
Ja imam za seminarski rad isti zadatak, pa ako je sasha_kg aktivan jos uvek neka mi se javi na meil [email protected]

Hvala