Newsgroup: it.comp.lang.visual-basic
Titolo: Vorrei realizzare un programma per disegnare le funzioni senza analisi di stringhe.

Vorrei realizzare un programma per disegnare grafici di funzione senza dover
effettuare alcuna analisi di stringhe.
Questo tipo di programma lo avevo gia' realizzato in un altro linguaggio
d'alto livello (il CA-Realizer) che supportava l'istruzione EXECUTE
<stringa> , che permetteva di eseguire qualsiasi istruzione all'interno
dell'argomento in formato stringa: Per esempio, scrivendo:
    Execute "a = 2 + 2 : Print a"
si otteneva come risultato la scritta 4 sullo schermo e l'assegnazione del
valore 4 alla variabile ' a '.
Purtroppo in VisualBasic non sono riuscito a trovare un'istruzione simile.
Se qualcuno ha gia' risolto un problema simile, magari mediante qualche
funzione API, puo' farmi sapere come ha fatto?
Scrivetemi presto e ciao.

...

Sei costretto a fare l'analisi della stringa.
Sul Sito Comune di questo NG trovi nella sezione Download->Sorgenti, c'e' un
progetto chiamato Eval.zip, (e' in fondo alla lista), spero che ti possa
tornare utile.
http://www.murialdo.it/it_lang_vb
Ciao
By -MES-   Maronese Ettore
http://www.maronese.com/mes
(con OCX per stampare i recordset)
Sito Comune di programmatori Visual Basic
http://www.murialdo.it/it_lang_vb

 wrote in message
86snkp$8en$1...@nslave1.tin.it...


Comunque per disegnare grafici 3d questo metodo è schifosamente lento!
Buona idea lo SC, ma ricordati che puoi fargli gestire degli oggetti esterni
con .AddObject e passargli così la PictureBox sulla quale disegnare
direttamente dall'interno dello sc, senza dover richiamare le funzione come
proprietà per ogni punto.
Ciao

 wrote in message 872drl$4lc$1...@nslave1.tin.it...


 wrote in message
86t5qc$o7$1...@pegasus.tiscalinet.it...




programma?
Si, Possibile, in VB non c'e'.
Lo so che in Eval.zip ci sono solo le funzioni elementari, ma serve come
esempio; tu puoi ampiarlo a piacere per implementare tutte le operazioni che
desideri. Certo, non lo metto in dubbio, e' un bel lavura'... . .


 programma?
Credo sia possibile quando si sta molto attenti al marketing e si ha a
listino un prodotto che si chiama Excel che, se referenziato in un progetto
VB, ti permette di usare Eval. Che ne dite: e' solo una mia malignita' o
ha un reale fondamento?
Puoi sempre arrangiarti col Sinclair ZX Spectrum....
Ciao.
Maurizio

 
Se hai bisogno di valutare la stessa funzione n volte , come per esempio
quando si vuole disegnarne il grafico una possibilita' per velocizzare
il processo e' la seguente:
passo 1: convertire l'espressione della funzione da testo in una forma
intermedia di piu' semplice valutazione e memorizzare questa seconda
codifica
passo 2: calcolrare la funzione cosi rapperesentata tutte le volte che
e' necessario
( questa rappresentazione di chiama guarda caso p-code , e purtroppo a
run-time il VB non e' in grado di farlo )
una possibilta' per il p-code e' la notazione rpn ( reverse polish
notation che tutti gli utenti delle calcoltarici HP conoscono ) in cui 
l'espressione 1+2*4 e per esempio convertita nella sequenza:
push 1
push 2
push 4
*
+
=  ( stampa il risultato )
l'interprete per la RPN e' molto semplice, veloce e facilmente
espandibile infatti ha solo istruzuzioni di push in uno stack di calcolo
su valori nello stack e di pop dallo stack.
Ottenendo quindi un significativo risparmio di tempo di elaborazione
quando bisogna valutare una funzione in molti punti
P.S. e' un bell' "esercizio" quindi buon divertimento




 wrote in message
87a1j4$dml$1...@nslave2.tin.it...


 wrote in message
6Hkm4.60573$C3.6...@news.infostrada.it...


 wrote in message
87kkft$1kp$1...@nslave1.tin.it...


Naturalmente anche sul cd N° 2 di Visual studio.
