Hi,
Ich habe im Rausch meiner Langeweile angefangen ein Programm zu schreiben, dass Quantitative Elementaranalyse und Molmassenbestimmung ausführt, allerdings ist die Ausgabe mehr als fragwürdig.(Bekomme als Ergebniss der QE immer Infinity und NaN)
Die Rechnung stimmt ganz sicher, ich weiß nur nicht, wo ich einen Fehler eingebaut haben soll.
Wahrscheinlich ist es die Überprüfung, welche Masse kleiner ist.
Vielleicht findet ihr ja den Fehler und es tut mir Leid, dass die Edit Felder nicht bessere Namen haben.;(
Fehlerabfragen habe ich noch keine drin, aber damit konnte ich sowieso nocht nichts machen, da der Fehler damit wohl eher nicht abgefangen wird^^
Hier jetzt der code:
[highlight=Java]
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// Quantitatvie Elementaranalyse und Molmassenbestimmung von Organischen Stoffen:
String C = jEditorPane2.getText();
double c2 = Double.valueOf(C).doubleValue();
double mc = c2*(12/44); //Masse von C
String H = jEditorPane3.getText();
double h2 = Double.valueOf(H).doubleValue();
double mh = h2*(1/9);//Masse von H
String gesamt = jEditorPane1.getText();
double gesamts = Double.valueOf(gesamt).doubleValue();
double mo = gesamts-(mh+mc);
//Nächster Schritt:
double mmc = mc/12;
double mmo = mo/16;
//Initialiserung:
double erg1 = 0;
double erg2 = 0;
double erg3 = 0;
//Hier ist der Fehler nehme ich an:
if (mmc < mmo && mmc < mh){
erg1= mmc/mmc;
erg2= mh/mmc;
erg3= mmo/mmc;
}
else if(mh < mmc && mh < mmo){
erg1= mmc/mh;
erg2= mh/mh;
erg3= mmo/mh;
}
else if(mmo < mh && mmo < mmc){
erg1= mmc/mmo;
erg2= mh/mmo;
erg3= mmo/mmo;
}
System.out.println(erg1);
System.out.println(erg2);
System.out.println(erg3);
String HPAs = jEditorPane6.getText();
double HPA = Double.valueOf(HPAs).doubleValue();
String Temperatur = jEditorPane5.getText();
double Temp1 = Double.valueOf(Temperatur).doubleValue();
double temp = Temp1+273.15;
String Liter = jEditorPane7.getText();
double l = Double.valueOf(Liter).doubleValue();
String stoffg = jEditorPane4.getText();
double stoff = Double.valueOf(stoffg).doubleValue();
double gaskon = 83.144;
double n = (HPA*l)/(gaskon*temp);
double Molmasse = stoff/n;
double c12 = 12;
double o16 = 16;
double n1 = (c12*erg1)+(erg2)+(o16*erg3);
double Ende = Molmasse/n1;
String End = String.valueOf(Ende);
jEditorPane8.setText(End);
}
[/highlight]
Schonmal Danke im Vorraus.:toll:
PS: Ich benutze Netbeans und Eclipse eher selten(eig. nur in der Schule)
edit:
Sorry wollte das ganze eigentlich unter Anfänger posten, denn sowas passt eigentlich da mehr^^
Falls der Drang besteht es zu verschieben, tut euch keinen Zwang an.
Ich habe im Rausch meiner Langeweile angefangen ein Programm zu schreiben, dass Quantitative Elementaranalyse und Molmassenbestimmung ausführt, allerdings ist die Ausgabe mehr als fragwürdig.(Bekomme als Ergebniss der QE immer Infinity und NaN)
Die Rechnung stimmt ganz sicher, ich weiß nur nicht, wo ich einen Fehler eingebaut haben soll.
Wahrscheinlich ist es die Überprüfung, welche Masse kleiner ist.
Vielleicht findet ihr ja den Fehler und es tut mir Leid, dass die Edit Felder nicht bessere Namen haben.;(
Fehlerabfragen habe ich noch keine drin, aber damit konnte ich sowieso nocht nichts machen, da der Fehler damit wohl eher nicht abgefangen wird^^
Hier jetzt der code:
[highlight=Java]
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// Quantitatvie Elementaranalyse und Molmassenbestimmung von Organischen Stoffen:
String C = jEditorPane2.getText();
double c2 = Double.valueOf(C).doubleValue();
double mc = c2*(12/44); //Masse von C
String H = jEditorPane3.getText();
double h2 = Double.valueOf(H).doubleValue();
double mh = h2*(1/9);//Masse von H
String gesamt = jEditorPane1.getText();
double gesamts = Double.valueOf(gesamt).doubleValue();
double mo = gesamts-(mh+mc);
//Nächster Schritt:
double mmc = mc/12;
double mmo = mo/16;
//Initialiserung:
double erg1 = 0;
double erg2 = 0;
double erg3 = 0;
//Hier ist der Fehler nehme ich an:
if (mmc < mmo && mmc < mh){
erg1= mmc/mmc;
erg2= mh/mmc;
erg3= mmo/mmc;
}
else if(mh < mmc && mh < mmo){
erg1= mmc/mh;
erg2= mh/mh;
erg3= mmo/mh;
}
else if(mmo < mh && mmo < mmc){
erg1= mmc/mmo;
erg2= mh/mmo;
erg3= mmo/mmo;
}
System.out.println(erg1);
System.out.println(erg2);
System.out.println(erg3);
String HPAs = jEditorPane6.getText();
double HPA = Double.valueOf(HPAs).doubleValue();
String Temperatur = jEditorPane5.getText();
double Temp1 = Double.valueOf(Temperatur).doubleValue();
double temp = Temp1+273.15;
String Liter = jEditorPane7.getText();
double l = Double.valueOf(Liter).doubleValue();
String stoffg = jEditorPane4.getText();
double stoff = Double.valueOf(stoffg).doubleValue();
double gaskon = 83.144;
double n = (HPA*l)/(gaskon*temp);
double Molmasse = stoff/n;
double c12 = 12;
double o16 = 16;
double n1 = (c12*erg1)+(erg2)+(o16*erg3);
double Ende = Molmasse/n1;
String End = String.valueOf(Ende);
jEditorPane8.setText(End);
}
[/highlight]
Schonmal Danke im Vorraus.:toll:
PS: Ich benutze Netbeans und Eclipse eher selten(eig. nur in der Schule)
edit:
Sorry wollte das ganze eigentlich unter Anfänger posten, denn sowas passt eigentlich da mehr^^
Falls der Drang besteht es zu verschieben, tut euch keinen Zwang an.
Zuletzt bearbeitet: