Oppure

Loading
08/06/08 14:04
alex2thebest
Ecco la mia calcolatrice... tutto funziona correttamente ma ciò che volevo chiedervi è:

come faccio a impostare il logaritmo in modo che la base venga scelta tramite input?
la sintassi è questa:

log<base>(<numero>);

esempio:

log10(1000);


ma come faccio a far stabilire la base con un input da cin, cioè per esempio se faccio:

#include <iostream.h>
#include <math.h>

main()
{
    float num, base, result;
    cout << "inserisci base" << endl;
    cin >> base;
    cout << "Inserisci numero" << endl;
    cin >> num;
    result = log base(num);
    cout << "Il risultato è: " << result << endl;
    _sleep(2000);
return 0;
}


Il compilatore Dev-C++ mi da errore dicendo che dopo log va messo il punto e virgola... e se metto tutto attaccato logbase mi dice che non è dichiarata la variabile logbase perchè la considera tutta insieme...

help me, please!
Ultima modifica effettuata da alex2thebest 08/06/08 14:05
aaa
08/06/08 16:45
Amarath
sbaglio o la base deve essere int e tu invece la dichiari float? :D:k:
aaa
08/06/08 21:20
alex2thebest
Ho capito, ma log e la base devono essere attaccati, esempio:

log10(1000)

e NON devono essere:

log 10(1000)

se no da errore... ma se metto attaccato con la variabile, esempio:

int base;
base = 10;
logbase(1000);

il compilatore dice che logbase non è compilato...
come trovare un alternativa?

risp please!
aaa
09/06/08 5:53
gantonio
Nella libreria standard del C non esiste una funzione che calcoli il logaritmo in qualsiasi base.

E poi, ti faccio notare, che se anche esistesse, dovresti indicarla come parametro della funzione e non come parte del nome che e' un elemento sintattico e quindi modificabile solamente nel sorgente e non a runtime.

Nella libreria standard esiste la funzione logaritmo in base e

log(x)

e, dalla matematica di base, saprai che il logaritmo in base b e' eguale a

log(x) / log(b)

Quindi ti basta usare questa formula o ti puoi costruire tu una funzione che accetti valore e base e restituisca il logaritmo.
aaa
09/06/08 7:10
alex2thebest
Ah grazie... quindi non c'è un istruzione precisa... devo costruirmi una funzione!

Vabbe ci proverò :k:
Ultima modifica effettuata da alex2thebest 09/06/08 7:11
aaa
09/06/08 7:13
gantonio
Postato originariamente da alex2thebest:

Vabbe ci proverò :k:


Niente di particolare ... quella riga e' quello che devi scrivere ...
aaa