function berechnen()
{
/* zu befüllende Felder prüfen */

if (document.Unterhalt.JahrS.value == "") {
    alert ("Geben Sie zumindest das Jahr des Stichtages ein!");
    document.Unterhalt.JahrS.focus();
    return; }

var Komma;
var Komma1;
Komma = document.Unterhalt.Km1.value.indexOf(",") + document.Unterhalt.Km2.value.indexOf(",") + document.Unterhalt.Km3.value.indexOf(",") + document.Unterhalt.Km4.value.indexOf(",") + document.Unterhalt.Km5.value.indexOf(",");
Komma1 = document.Unterhalt.BEinkommen.value.indexOf(",");
if(Komma != -5 || Komma1 != -1)
{ alert("Geben Sie Kommas als Punkte ein!");
Return(); }

if (document.Unterhalt.Km1.value == "" && document.Unterhalt.Km2.value == "" && document.Unterhalt.Km3.value == "" && document.Unterhalt.Km4.value == "" && document.Unterhalt.Km5.value == "") {
alert ("Geben Sie den monatlichen Unterhalt ein!");
document.Unterhalt.Km1.focus();
return; }

if (document.Unterhalt.BEinkommen.value == "") {
alert ("Geben Sie die Steuerbemessungsgrundlage ein!");
document.Unterhalt.BEinkommen.focus();
return; }


/* Variablen */

/* Unterhalt jährlich */
var KjS;

/* UAB jährlich */
var UABjS;

/* zu versteuerndes Einkommen */
var ETeil1;
var ETeil2;
var ETeil3;
var ETeil4;
var ETeil5;
var ETeilS;

/* Unterhaltsteile */
var UTeil1;
var UTeil2;
var UTeil3;
var UTeil4;
var UTeil5;

/* halbe Unterhaltsteile */
var U2Teil1;
var U2Teil2;
var U2Teil3;
var U2Teil4;
var U2Teil5;

/* halbe Unterhaltsteile * Steuersatz */
var Quote1;
var Quote2;
var Quote3;
var Quote4;
var Quote5;
var QuoteS;

/* Kürzungsfaktor */
var KF;

/* gekürzter Unterhaltsbetrag */
var UHS;


/* Berechnungen */

/* Summe Unterhalt jährlich */
KjS = (document.Unterhalt.Km1.value * 12) + (document.Unterhalt.Km2.value * 12) + (document.Unterhalt.Km3.value * 12) + (document.Unterhalt.Km4.value * 12) + (document.Unterhalt.Km5.value * 12);

/* UAB monatlich und jährlich */
var UAB1K = 25.50;
var UAB2K = 38.20;
var UAB3K = 50.90;

if (document.Unterhalt.Km1.value != "" && document.Unterhalt.Km1.value != 0)
   UABjS = UAB1K * 12;
if (document.Unterhalt.Km2.value != "" && document.Unterhalt.Km2.value != 0)
   if (document.Unterhalt.Km1.value == "")
   { alert("Befüllen Sie bitte die Felder von oben nach unten!");
     return; }
   else
   UABjS = UABjS + (UAB2K * 12);
if (document.Unterhalt.Km3.value != "" && document.Unterhalt.Km3.value != 0)
   if (document.Unterhalt.Km2.value == "")
   { alert("Befüllen Sie bitte die Felder von oben nach unten!");
     return; }
   else
   UABjS = UABjS + (UAB3K * 12);
if (document.Unterhalt.Km4.value != "" && document.Unterhalt.Km4.value != 0)
   if (document.Unterhalt.Km3.value == "")
   { alert("Befüllen Sie bitte die Felder von oben nach unten!");
     return; }
   else
   UABjS = UABjS + (UAB3K * 12);
if (document.Unterhalt.Km5.value != "" && document.Unterhalt.Km5.value != 0)
   if (document.Unterhalt.Km4.value == "")
   { alert("Befüllen Sie bitte die Felder von oben nach unten!");
     return; }
   else
   UABjS = UABjS + (UAB3K * 12);

/* Stichtag = vor 1.1.2005 oder danach - unterschiedliche Berechnung der Steuer */

if (document.Unterhalt.JahrS.value < 2005)
{
                /* Jahreseinkommen */
                var E1 = 3640;
                var EP1 = 0;
                var E2 = 3630;
                var EP2 = 17;
                var E3 = 14530;
                var EP3 = 25;
                var E4 = 29070;
                var EP4 = 33;
                var E5 = E1 + E2 + E3 + E4;
                var EP5 = 40;
                var JE = document.Unterhalt.BEinkommen.value;

                /* zu versteuerndes Einkommen */
                if (JE - E1 > 0) ETeil1 = E1;
                else ETeil1 = JE;
                if (JE - ETeil1 - E2 > 0) ETeil2 = E2;
                else ETeil2 = JE - ETeil1;
                if (JE - ETeil1 - ETeil2 - E3 > 0) ETeil3 = E3;
                else ETeil3 = JE - ETeil1 - ETeil2;
                if (JE - ETeil1 - ETeil2 - ETeil3 - E4 > 0) ETeil4 = E4;
                else ETeil4 = JE - ETeil1 - ETeil2 - ETeil3;
                ETeil5 = JE - ETeil1 - ETeil2 - ETeil3 - ETeil4;

                /* Summe zu versteuerndes Einkommen */
                ETeilS = (ETeil1 * 1) + (ETeil2 * 1) + (ETeil3 * 1) + (ETeil4 * 1) + (ETeil5 * 1);

                /* Unterhaltsteile */
                if (KjS - ETeil5 > 0) UTeil5 = ETeil5;
                else UTeil5 = KjS;
                if (KjS - UTeil5 - ETeil4 > 0) UTeil4 = ETeil4;
                else UTeil4 = KjS - UTeil5;
                if (KjS - UTeil5 - UTeil4 - ETeil3 > 0) UTeil3 = ETeil3;
                else UTeil3 = KjS - UTeil5 - UTeil4;
                if (KjS - UTeil5 - UTeil4 - UTeil3 - ETeil2 > 0) UTeil2 = ETeil2;
                else UTeil2 = KjS - UTeil5 - UTeil4 - UTeil3;
                UTeil1 = KjS - UTeil5 - UTeil4 - UTeil3 - UTeil2;

                /* halbe Unterhaltsteile */
                U2Teil1 = UTeil1 / 2;
                U2Teil2 = UTeil2 / 2;
                U2Teil3 = UTeil3 / 2;
                U2Teil4 = UTeil4 / 2;
                U2Teil5 = UTeil5 / 2;

                /* halbe Unterhaltsteile * Steuersatz */
                Quote1 = U2Teil1 * EP1 / 100;
                Quote2 = U2Teil2 * EP2 / 100;
                Quote3 = U2Teil3 * EP3 / 100;
                Quote4 = U2Teil4 * EP4 / 100;
                Quote5 = U2Teil5 * EP5 / 100;

                /* Summe halbe Unterhaltsteile * Steuersatz */
                QuoteS = (Quote1 * 1) + (Quote2 * 1) + (Quote3 * 1) + (Quote4 * 1) + (Quote5 * 1);
}
/* ab 1.1.2005 */
else
{
                /* Jahreseinkommen */
                var JE = document.Unterhalt.BEinkommen.value;
                var E1 = 10000;
                var EP1 = 0;
                var E2 = 15000;
                var EP2x = 5750 / 15000 * 100;
                var EP2 = EP2x - (EP2x * 0.2);
                var E3 = 26000;
                var EP3x = 11335 / 26000 * 100;
                var EP3 = EP3x - (EP3x * 0.2);
                var E4 = E1 + E2 + E3;
                var EP4x = 50;
                var EP4 = EP4x - (EP4x * 0.2);

                /* zu versteuerndes Einkommen */
                if (JE - E1 > 0) ETeil1 = E1;
                else ETeil1 = JE;
                if (JE - ETeil1 - E2 > 0) ETeil2 = E2;
                else ETeil2 = JE - ETeil1;
                if (JE - ETeil1 - ETeil2 - E3 > 0) ETeil3 = E3;
                else ETeil3 = JE - ETeil1 - ETeil2;
                ETeil4 = JE - ETeil1 - ETeil2 - ETeil3;

                /* Summe zu versteuerndes Einkommen */
                ETeilS = (ETeil1 * 1) + (ETeil2 * 1) + (ETeil3 * 1) + (ETeil4 * 1);

                /* Unterhaltsteile */
                if (KjS - ETeil4 > 0) UTeil4 = ETeil4;
                else UTeil4 = KjS;
                if (KjS - UTeil4 - ETeil3 > 0) UTeil3 = ETeil3;
                else UTeil3 = KjS - UTeil4;
                if (KjS - UTeil4 - UTeil3 - ETeil2 > 0) UTeil2 = ETeil2;
                else UTeil2 = KjS - UTeil4 - UTeil3;
                UTeil1 = KjS - UTeil4 - UTeil3 - UTeil2;

                /* halbe Unterhaltsteile */
                U2Teil1 = UTeil1 / 2;
                U2Teil2 = UTeil2 / 2;
                U2Teil3 = UTeil3 / 2;
                U2Teil4 = UTeil4 / 2;

                /* halbe Unterhaltsteile * verringerter Steuersatz */
                Quote1 = U2Teil1 * EP1 / 100;
                Quote2 = U2Teil2 * EP2 / 100;
                Quote3 = U2Teil3 * EP3 / 100;
                Quote4 = U2Teil4 * EP4 / 100;

                /* Summe halbe Unterhaltsteile * Steuersatz */
                QuoteS = (Quote1 * 1) + (Quote2 * 1) + (Quote3 * 1) + (Quote4 * 1);
}

/* Kürzungsfaktor berechnen */
KF = QuoteS - UABjS;

if (KF < 0) KF = 0;

/* gekürzten Unterhaltsbetrag berechnen */
UHS = KjS - KF;

/* neuer monatlicher Unterhalt */
document.Unterhalt.NEUm1.value = parseInt((UHS * document.Unterhalt.Km1.value / KjS) + 0.5);
document.Unterhalt.NEUm2.value = parseInt((UHS * document.Unterhalt.Km2.value / KjS) + 0.5);
document.Unterhalt.NEUm3.value = parseInt((UHS * document.Unterhalt.Km3.value / KjS) + 0.5);
document.Unterhalt.NEUm4.value = parseInt((UHS * document.Unterhalt.Km4.value / KjS) + 0.5);
document.Unterhalt.NEUm5.value = parseInt((UHS * document.Unterhalt.Km5.value / KjS) + 0.5);

}