wiwiRI
-
22 sept. 2012 à 00:44
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 2012
-
25 sept. 2012 à 18:56
salut;
j'ai deux fichiers qui contiennent des valeurs comme suit
1
22
32
43
54
le premier fichier contient les valeurs de n
et le deuxième celle de r
je veux récupérer les valeurs de ces deux fichiers et l'utiliser pour calculer le poids de terme voila mon code
public static double main(String[] args)
{
double n;
double r;
double R= 26;
int N= 79919;
String chaine = null;
// lecture du fichier texte
try {
InputStream ips = new FileInputStream("d:/n.txt");
InputStream ips = new FileInputStream("d:/r.txt");
InputStreamReader ipsr = new InputStreamReader(ips);
BufferedReader br = new BufferedReader(ipsr);
String ligne;
int numLigne = 0;
int nombreDeLignes = 30; // par exemple
int[] var = new int[nombreDeLignes ];
while ((ligne = br.readLine()) != null)
{
numLigne++;
System.out.println(ligne);
chaine += ligne + "\n";
}
for (int i = 0; i < var.length; i++)
{
}
br.close();
}
catch (Exception e) {
System.out.println(e.toString());
}
poids_terme = java.lang.Math.log ((( r+0.5)/( R - r+0.5))/
(n - r + 0.5)/((N - n- ( R- r)+0.5)));
ensuite enregistrer les poids dans un nouveau fichier.
merci pour votre aide.
1) La méthode main est obligatoirement void et donc ne retourne rien :
public static void main(String[] args)
{
.....
}
2) Il nous manque pas mal d'infos concernant les deux fichiers n et r:
- l'exemple que tu nous donnes est celui d'un des deux fichier, tu as un exemple du deuxième?
- est-ce qu'il y a autant de lignes dans l'un que dans l'autre ?
(je suppose que oui...)
...
Ensuite on arrivera peut-être à voir comment lire une ligne de chacun des deux fichiers, calculer un 1er poids_terme (c'est quoi ?), l'enregistrer dans un nouveau fichier. lire une autre ligne de chacun des deux fichiers etc ...
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 25 sept. 2012 à 18:56
salut,
Aussi ;o) je vois déjà au moins une erreur à la compilation (en plus du void sur main) ;o) et surement un nullpointer ;o) ...
Pourquoi fixer le nombre de ligne à 30 ;o) ??? utilise plutot une liste...
Tes noms de variables ne doivent pas être en majuscule et ne pas comporter de "_", éviter aussi les variables d'une lettre (et meme 2) en dehors des itérations.
Si R et N sont des constantes : décrit les comme telle ;o) ...
Ces recommendations, de base, passé ;o) ...
normalement il te suffit de faire 3 itérations pour obtenir ton résultat :
-la premiere pour extraire tes valeur de 'n'
avec BufferedReader cela passe tres bien...
-la seconde pour extraire tes valeur de 'r'
exactement la meme manipe que pour la premiere ;o)
(enviseage donc de faire une methode/fonction pour éviter 2 fois le même code)
-et la 3ieme pour ecrire ton fichier résultat ;o)
avec un BufferedWriter cela doit le faire tres bien...
pour le nombre d iteration tu peux te baser sur ta liste la plus courte, et donc une petite alternative ;o)