Una specie di fattoriale
Prendiamo in considerazione :
$F(x)=((((((x^(x-1))^(x-2))^(x-3))^...)^3)^2)$
Voglio definirlo su un programma matematico(Derive) in modo che lo calcoli in maniera autonoma,senza che io scriva tutti i numeri nell'operazione.
Come posso fare?
$F(x)=((((((x^(x-1))^(x-2))^(x-3))^...)^3)^2)$
Voglio definirlo su un programma matematico(Derive) in modo che lo calcoli in maniera autonoma,senza che io scriva tutti i numeri nell'operazione.
Come posso fare?
Risposte
Ho risolto tutto ! Grazie ancora
Cmq la funzione come l'avete intesa è corretta!
Ps Secondo me la potenza di calcolo dei software matematici, in questo caso Derive dipende piu dalla potenza di un computer che da altri fattori.
[/quote]
Cmq la funzione come l'avete intesa è corretta!
Ps Secondo me la potenza di calcolo dei software matematici, in questo caso Derive dipende piu dalla potenza di un computer che da altri fattori.
[/quote]
Allora n ed r sono due parametri della funzione. In n è contenuto il valore iniziale mentre in r si troverà il risultato della procedura, che rappresenta il valore di funzione f(n). Per inserire il programma, dalla barra degli strumenti, dal menù Crea, selezioni "Definisci funzione...". Poi nel campo "Nome della funzione ed argomenti:" inserisci f(n,r); nel form "Definizione:" inserisci questo codice:
Per utilizzare la procedura basta scrivere nella stringa di comando di Derive, ad esempio, f(4,r) e il risultato sarà 262144.
PROG( i ≔ 2, r ≔ i, LOOP( IF(r = n, RETURN i), IF(n < 2, RETURN n), i ≔ (r + 1)^i, r ≔ r + 1) )
Per utilizzare la procedura basta scrivere nella stringa di comando di Derive, ad esempio, f(4,r) e il risultato sarà 262144.
Scusate la mia ignoranza ma per inserirla come devo fare?devo andare su crea/definisci funzione?
E poi da quel che ho capito di quel codice si utilizzano due variabili (n,r) ma io ne utilizzo solo una.Mi spiegate perchè?
Grazie
E poi da quel che ho capito di quel codice si utilizzano due variabili (n,r) ma io ne utilizzo solo una.Mi spiegate perchè?
Grazie
f(n, r) ≔ Prog i ≔ 2 r ≔ i Loop If r = n RETURN i If n < 2 RETURN n i ≔ (r + 1)^i r ≔ r + 1
Una modifica al codice "Derive". Credo che sia (salvo errori) simile a quella di signor.nessuno.

Il problema dei software matematici (soprattutto Derive) è che non supportano la potenza espressiva di un linguaggio ad alto livello (tipo C). Infatti il Derive come stile di programmazione è molto simile al LISP, il che non è il massimo!


Forse ho interpretato male la funzione. Io sinceramente non saprei. Deve rispondere blackdie!
No! Anzi ti ammiro. Vedo che hai un'ottima conoscenza del linguaggio C, anche se credo che la potenza di calcolo di software tipo Derive sia superiore.


F(4)=4096 e non 262144

f(n, r) ≔ Prog r ≔ n Loop If n ≤ 2 RETURN r r ≔ r^(n - 1) n ≔ n - 1
Basta definire questa procedura in Derive. Poi chiamarla passando f(n,r) dove n è l'elemento da calcolare e r può essere qualsiasi valore, perchè all'interno della procedura r verrà inizializzata con il valore di n. Se hai bisogno di chiarimenti chiedi pure.
Nessuno sa aiutarmi?
Chiedo scusa. Ho sbagliato a mettere le parentesi:
si ha:
$F(x)=(x^((x-1)^((x-2)^((x-3)^(...^(4^(3^2)))))))
Che è un operazione completamente diversa!
si ha:
$F(x)=(x^((x-1)^((x-2)^((x-3)^(...^(4^(3^2)))))))
Che è un operazione completamente diversa!
Scusa ma se $x$ è intero non basta che scrivi $f(x)=x^{(x-1)!}$. Il calcolo mi sembra più che abbordabile dato che tutti i programmi sanno già calcolare il fattoriale.
Saluti
Mistral
Saluti
Mistral