C++ : funzione logaritmo/radice senza includere cmath?

di il
2 risposte

C++ : funzione logaritmo/radice senza includere cmath?

Salve, mi sono iscritto proprio ora perchè non riesco a risolvere un quesito.
Il professore del corso di programmazione ci ha detto di scrivere 2 programmi in c++ molto simili:
1)
Prende in input un numero intero x e restituisce la parte intera della radice quadrata di x;

2)
Prende in input un numero intero x e restituisce la parte intera del logaritmo in base 2 di x;

Ora, includendo la libreria cmath è semplicissimo, ma lui ci ha detto di farlo senza includere la libreria. A me sembra impossibile, perchè in qualche modo devono essere definite la funzione log e sqrt.
Voi come fareste?
P.S.
Non abbiamo neanche iniziato le funzioni, quindi non posso neanche creare una nuova funzione.
Grazie mille in anticipo

2 Risposte

  • Re: C++ : funzione logaritmo/radice senza includere cmath?

    Premesso che si potrebbe realizzare la funzione mysqr e mylog2.

    L'esercizio che hai è ancor più semplice se mi permetti, infatti, devi calcolare la parte intera cioè il numero intero che precede la radice o il logaritmo esatto e il l'intero successivo.

    Ti suggerisco di partire da n=0 incrementando con opportuno ciclo fino a determinare il numero desiderato.

    Radice:
    n * n = tuo_numero;

    Logaritmo in base due:
    2*...*2 n volte = tuo_numero;
  • Re: C++ : funzione logaritmo/radice senza includere cmath?

    SVNiko ha scritto:


    Ti suggerisco di partire da n=0 incrementando con opportuno ciclo fino a determinare il numero desiderato.

    Radice:
    n * n = tuo_numero;

    Logaritmo in base due:
    2*...*2 n volte = tuo_numero;
    Grazie mille, ho capito
Devi accedere o registrarti per scrivere nel forum
2 risposte