[java] som+=(float)1/i;

domxaline -  
 domxaline -
Bonjour,
package Application1;
import java.util.Scanner;
public class Racine
{
  public static void main (String[] args)
  {
    Scanner sc=new Scanner(System.in);
    int nt;   //nombre de termes de la serie harmonique
    int i;
    float som;//pour la somme de la serie
    do
	 {
	  System.out.println("combien de termes:");
        nt=sc.nextInt();
	 }
	 while(nt<1);
       for(i=1,som=0;i<=nt;i++)som+=(float)1/i;
	 System.out.println("Somme des: "+nt+" premiers termes="+som);
  }
}


dans ces codes quelqu'un peut expliquer la ligne suivantes
for(i=1,som=0;i<=nt;i++)som+=(float)1/i;

surtout ceci
som+=(float)1/i;
A voir également:

3 réponses

Vinc
 
som+=(float)1/i;
revient a faire :
som = som + (float)1/i
0
latoopa Messages postés 278 Date d'inscription   Statut Membre Dernière intervention   32
 
for(i=1,som=0;i<=nt;i++)


Alors ca c'est une déclaration de boucle for, les conditions étant séparée par des ;

i=1 => c'est l'initialisation de ta variable de boucle (som=0 met som a 0 mais j'ai jamais vu une double opération au départ...)

i<=nt => la boucle "reboucle" tant que i est inférieur ou égal à nt

i++ => in ajoute 1 à la valeur de i a chaque fois qu'on reboucle

som+=(float)1/i;


Ca c'est (comme dit précédemment) : som = som + (float)1/i
0
domxaline
 
ça veut dire
le som converti en float et puis fait l'opération 1/i n'est ce pas?
0