Somma armonica

Boogyeman

Nuovo Utente
30 Gen 2018
3
0
1
28
Salve,devo fare un esercizio sulla somma armonica dei numeri e non capisco cosa ci sia che non va.
Utilizzo Java--
Nella foto a destra c'è il codice con in basso i risultati (errati), mentre a sinistra il testo dell'esercizio.
Grazie in anticipo per le risposte, dovrebbe essere semplice perchè sono esercizi facili.
Cattura.PNG
 
visto che non risponde nessuno ....

purtroppo non conosco java e non ho il compilatore a disposizione,
ma ho riscritto il tuo esercizio in php ( si dice, se non è zuppa è pan bagnato .... )

controlla se è corretto nel for di "H" i==k

mentre penso che esca dalla funzione harmonicSum con n incrementato di 1 rispetto al valore atteso

questo lo script php che, immagino puoi ben capire,
PHP:
<?php

function H($k)
{
    $HarmonicNum = 0;
    for( $i=1; $i<=$k; $i++ )
    {
        $HarmonicNum += (float) 1 / $i;
    }
    return $HarmonicNum;
}

function HarmonicSum($x)
{
    $k = 0;
    $HarmonicSum = 0;

    while( $HarmonicSum < $x )
    {
        $k++;
        $HarmonicSum += (float) H($k);
    }
    return $k;
}

echo "<h2>Harmonic Num</h2>";
$HN = 1;    echo "k = ".$HN." : ".H($HN)."<br />";
$HN = 2;    echo "k = ".$HN." : ".H($HN)."<br />";
$HN = 3;    echo "k = ".$HN." : ".H($HN)."<br />";
$HN = 5;    echo "k = ".$HN." : ".H($HN)."<br />";
$HN = 7;    echo "k = ".$HN." : ".H($HN)."<br />";
$HN = 1000; echo "k = ".$HN." : ".H($HN)."<br />";

echo "<h2>Harmonic Sum</h2>";
$HS = 1;    echo "x = ".$HS." : ".HarmonicSum($HS)."<br />";
$HS = 2;    echo "x = ".$HS." : ".HarmonicSum($HS)."<br />";
$HS = 3;    echo "x = ".$HS." : ".HarmonicSum($HS)."<br />";
$HS = 5;    echo "x = ".$HS." : ".HarmonicSum($HS)."<br />";
$HS = 7;    echo "x = ".$HS." : ".HarmonicSum($HS)."<br />";
$HS = 1000; echo "x = ".$HS." : ".HarmonicSum($HS)."<br />";

?>

questo il risultato
upload_2018-1-31_14-51-50.png
 
@Boogyeman
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code.gif
quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box inserisci 2.png.JPG

e non delle immagini al fine di rendere più leggibile e comprensibile tutto il contesto della discussione
Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Mi raccomando per il futuro perché la discussione potrebbe essere chiusa
 
@marino51 Grazie mille! Hai ragione avevo sbagliato la condizione nel for, errore madornale ma ho iniziato a programmare in Java qualche giorno fa.
 

Discussioni simili