Conjugating the strong verbs in the Präsens
Topics

--><!-- Nothing works without HTML -->

<div>

<h1>Get the strong verbs conjugated through javascript - the Präsens</h1>

<img src="images_July_2015/stark.jpg" width="799" height="404" alt="conjugation of the strong verbs, learn German online free" />
<h2>Click on the table. To see the script, scroll down and press the "sneak peek" anchor.</h2>



<p>
The rules for the Präsens are the simplest. Let's go through the rules
(or the javascript algorithm used for that matter) to conjugate in the
Präsens. We set the following for the suffixes. And we can see that
the code is the same as the "code" (rules) we need to learn in order to
master the Präsens,
<a href="http://www.primitivecode.com/index.php?topic=-German+course-part+4-tables-declension-of-nouns-cases-of-possessive-pronouns-determiners-adjectives-complete-conjugation-verbs-form-case-#conjugation_Table" target="_blank">the same that we have already outlined</a>:
</p>


<pre>

var PersonSG = {
"erste" : "e",
"zweite": "st",
"dritte": "t"
}
var PersonPL = {
"erste": "en",
"zweite": "t",
"dritte": "en"
}

</pre>



<div>

<br />

Rules:
<ol>
<li>If you remove the infinitive suffix (-en) and the last letter is "t" or "d", we need to add an "e" in the second person plural (exception: "halten --&gt; du hältst").</li>
<li>If you remove the infinitive suffix (-en) and the last letter is "s" or "ss" then we omit one "s" because the suffix has already got the "s". You have to learn these forms anyway.</li>
<li>If you remove the infinitive suffix (-en) and the last letter is "ß", the suffix of the second person singular is not "-st", but "-t".</li>
</ol>
</div>


<br />




<button onclick="analyze()">Press this or click on the table</button>

<br />



<div id="label1"></div>

<br />

<script type="text/javascript">
var Wort = [];
var Wort2 = [];

function analyze() {
var types="";
var Woerterliste = window.document.getElementsByTagName("tr");//all <tr> tags as objects in an array
var amount_of_nodes = Woerterliste.length;//how many <tr>-s?
var i;
var counter;
var amountofchildren;
var currentElement;
for (i=0; i<amount_of_nodes; i++) {
amountofchildren = Woerterliste[i].childNodes.length;//how many children has this <tr> got ?
for (counter=0; counter<amountofchildren; counter++) {//looping through the children
if((Woerterliste[i].childNodes[counter].nodeName == "TD") && (i % 2 === 0)&& (counter == 1)){
Wort [i] = Woerterliste[i].childNodes[counter].childNodes[0].nodeValue;
}
if((Woerterliste[i].childNodes[counter].nodeName == "TD") && (i % 2 === 0)&& (counter == 3)){
Wort2 [i] = Woerterliste[i].childNodes[counter].childNodes[0].nodeValue;
}
}
}
konjugiere();
}//function analyze() end



var PersonSG = {
"erste" : "e",
"zweite": "st",
"dritte": "t"
}
var PersonPL = {
"erste": "en",
"zweite": "t",
"dritte": "en"
}


function konjugiere(){
var Label = window.document.getElementById("label1");
var konj = "";
var Verb = [];
var Form2 = [];
var zweitePlural ="";
var zweiteSingular ="";
var szet = "";
Verb = Wort.filter(Boolean);
Form2= Wort2.filter(Boolean);
for (i=0; i<Verb.length; i++) {

zweitePlural = Verb[i].slice(0,-2);
zweiteSingular = Form2[i].slice(0,-1);


if ( ((Verb[i].slice(-3)) == "ten") || ((Verb[i].slice(-3)) == "den"))
{zweitePlural = Verb[i].slice(0,-2)+"e"};

if ( ((Form2[i].slice(-3)) == "sst") || ((Form2[i].slice(-2)) == "st") )
{zweiteSingular = Form2[i].substring(0, ((Form2[i].length)-2))};





if ( ((Verb[i]) == "halten"))
{zweiteSingular = "hält"};

szet = Form2[i].substring((Form2[i].length)-2, ((Form2[i].length)-1));
if (szet.charCodeAt(0) == "223") {PersonSG.zweite ="t"};

konj += "<div class=\"kaestchen\"> \n";
konj += "<pre> \n" ;
konj += "ich " + Verb[i].slice (0,-2) + PersonSG.erste + "\n" ;
konj += "du " + zweiteSingular + PersonSG.zweite + "\n" ;
konj += "er, sie, es " + Form2[i].slice(0,-1) + PersonSG.dritte + "\n" ;
konj += " \n" ;
konj += "wir " + Verb[i].slice(0,-2) + PersonPL.erste + "\n" ;
konj += "ihr " + zweitePlural + PersonPL.zweite + "\n" ;
konj += "sie " + Verb[i].slice(0,-2) + PersonPL.dritte + "\n" ;
konj += " \n" ;
konj += "</pre> \n" ;
konj += "</div> \n";
PersonSG.zweite ="st";
}
Label.innerHTML = konj;
}//function
</script>

<table onclick="analyze();">
<colgroup span="4"></colgroup>

<tr>
<td>beginnen</td>
<td>beginnt</td>
<td>begann</td>
<td>begonnen</td>
</tr>

<tr>
<td>begin</td>
<td>begins</td>
<td>began</td>
<td>begun</td>
</tr>


<tr>
<td>bei&szlig;en</td>
<td>bei&szlig;t</td>
<td>biss</td>
<td>gebissen</td>
</tr>

<tr>
<td>bite</td>
<td>bites</td>
<td>bit</td>
<td>bitten</td>
</tr>

<tr>
<td>biegen</td>
<td>biegt</td>
<td>bog</td>
<td>gebogen</td>
</tr>

<tr>
<td>bend</td>
<td>bends</td>
<td>bent</td>
<td>bent</td>
</tr>

<tr>
<td>bieten</td>
<td>bietet</td>
<td>bot</td>
<td>geboten</td>
</tr>

<tr>
<td>offer</td>
<td>offers</td>
<td>offered</td>
<td>offered</td>
</tr>

<tr>
<td>bleiben</td>
<td>bleibt</td>
<td>blieb</td>
<td>geblieben</td>
</tr>

<tr>
<td>stay</td>
<td>stays</td>
<td>stayed</td>
<td>stayed</td>
</tr>

<tr>
<td>brechen</td>
<td>bricht</td>
<td>brach</td>
<td>gebrochen</td>
</tr>

<tr>
<td>break</td>
<td>breaks</td>
<td>broke</td>
<td>broken</td>
</tr>

<tr>
<td>dringen</td>
<td>dringt</td>
<td>drang</td>
<td>gedrungen</td>
</tr>

<tr>
<td>penetrate</td>
<td>penetrates</td>
<td>penetrated</td>
<td>penetrated</td>
</tr>

<tr>
<td>empfinden</td>
<td>empfindet</td>
<td>empfand</td>
<td>empfunden</td>
</tr>

<tr>
<td>feel</td>
<td>feels</td>
<td>felt</td>
<td>felt</td>
</tr>

<tr>
<td>essen</td>
<td>isst</td>
<td>a&szlig;</td>
<td>gegessen</td>
</tr>

<tr>
<td>eat</td>
<td>eats</td>
<td>ate</td>
<td>eaten</td>
</tr>

<tr>
<td>fahren</td>
<td>f&auml;hrt</td>
<td>fuhr</td>
<td>gefahren</td>
</tr>

<tr>
<td>drive</td>
<td>drives</td>
<td>drove</td>
<td>driven</td>
</tr>

<tr>
<td>fallen</td>
<td>f&auml;llt</td>
<td>fiel</td>
<td>gefallen</td>
</tr>

<tr>
<td>fall</td>
<td>falls</td>
<td>fell</td>
<td>fallen</td>
</tr>

<tr>
<td>fangen</td>
<td>f&auml;ngt</td>
<td>fing</td>
<td>gefangen</td>
</tr>

<tr>
<td>catch</td>
<td>catches</td>
<td>caught</td>
<td>caught</td>
</tr>

<tr>
<td>finden</td>
<td>findet</td>
<td>fand</td>
<td>gefunden</td>
</tr>

<tr>
<td>find</td>
<td>finds</td>
<td>found</td>
<td>found</td>
</tr>

<tr>
<td>fliegen</td>
<td>fliegt</td>
<td>flog</td>
<td>geflogen</td>
</tr>

<tr>
<td>fly</td>
<td>flies</td>
<td>flew</td>
<td>flown</td>
</tr>

<tr>
<td>flie&szlig;en</td>
<td>flie&szlig;t</td>
<td>floss</td>
<td>geflossen</td>
</tr>

<tr>
<td>flow</td>
<td>flows</td>
<td>flowed</td>
<td>flowed</td>
</tr>

<tr>
<td>frieren</td>
<td>friert</td>
<td>fror</td>
<td>gefroren</td>
</tr>

<tr>
<td>freeze</td>
<td>freezes</td>
<td>froze</td>
<td>frozen</td>
</tr>

<tr>
<td>geben</td>
<td>gibt</td>
<td>gab</td>
<td>gegeben</td>
</tr>

<tr>
<td>give</td>
<td>gives</td>
<td>gave</td>
<td>given</td>
</tr>

<tr>
<td>gehen</td>
<td>geht</td>
<td>ging</td>
<td>gegangen</td>
</tr>

<tr>
<td>go</td>
<td>goes</td>
<td>went</td>
<td>gone</td>
</tr>

<tr>
<td>genie&szlig;en</td>
<td>genie&szlig;t</td>
<td>genoss</td>
<td>genossen</td>
</tr>

<tr>
<td>enjoy</td>
<td>enjoys</td>
<td>enjoyed</td>
<td>enjoyed</td>
</tr>

<tr>
<td>gewinnen</td>
<td>gewinnt</td>
<td>gewann</td>
<td>gewonnen</td>
</tr>

<tr>
<td>win</td>
<td>wins</td>
<td>won</td>
<td>won</td>
</tr>

<tr>
<td>gie&szlig;en</td>
<td>gie&szlig;t</td>
<td>goss</td>
<td>gegossen</td>
</tr>

<tr>
<td>pour</td>
<td>pours</td>
<td>poured</td>
<td>poured</td>
</tr>

<tr>
<td>graben</td>
<td>gr&auml;bt</td>
<td>grub</td>
<td>gegraben</td>
</tr>

<tr>
<td>dig</td>
<td>digs</td>
<td>dug</td>
<td>dug</td>
</tr>


<tr>
<td>halten</td>
<td>h&auml;lt</td>
<td>hielt</td>
<td>gehalten</td>
</tr>

<tr>
<td>hold</td>
<td>holds</td>
<td>held</td>
<td>held</td>
</tr>

<tr>
<td>h&auml;ngen</td>
<td>h&auml;ngt</td>
<td>hing</td>
<td>gehangen</td>
</tr>

<tr>
<td>hang</td>
<td>hangs</td>
<td>hung</td>
<td>hung</td>
</tr>

<tr>
<td>hei&szlig;en</td>
<td>hei&szlig;t</td>
<td>hie&szlig;</td>
<td>gehei&szlig;en</td>
</tr>

<tr>
<td>be</td>
<td>is</td>
<td>was</td>
<td>been</td>
</tr>


<tr>
<td>helfen</td>
<td>hilft</td>
<td>half</td>
<td>geholfen</td>
</tr>

<tr>
<td>help</td>
<td>helps</td>
<td>helped</td>
<td>helped</td>
</tr>

<tr>
<td>kommen</td>
<td>kommt</td>
<td>kam</td>
<td>gekommen</td>
</tr>

<tr>
<td>come</td>
<td>comes</td>
<td>came</td>
<td>come</td>
</tr>

<tr>
<td>lassen</td>
<td>l&auml;sst</td>
<td>lie&szlig;</td>
<td>gelassen</td>
</tr>

<tr>
<td>let</td>
<td>lets</td>
<td>let</td>
<td>let</td>
</tr>

<tr>
<td>laufen</td>
<td>l&auml;uft</td>
<td>lief</td>
<td>gelaufen</td>
</tr>

<tr>
<td>run</td>
<td>runs</td>
<td>ran</td>
<td>run</td>
</tr>

<tr>
<td>lesen</td>
<td>liest</td>
<td>las</td>
<td>gelesen</td>
</tr>

<tr>
<td>read</td>
<td>reads</td>
<td>read</td>
<td>read</td>
</tr>

<tr>
<td>nehmen</td>
<td>nimmt</td>
<td>nahm</td>
<td>genommen</td>
</tr>

<tr>
<td>take</td>
<td>takes</td>
<td>took</td>
<td>taken</td>
</tr>

<tr>
<td>riechen</td>
<td>riecht</td>
<td>roch</td>
<td>gerochen</td>
</tr>

<tr>
<td>smell</td>
<td>smells</td>
<td>smellt</td>
<td>smellt</td>
</tr>

<tr>
<td>schlafen</td>
<td>schl&auml;ft</td>
<td>schlief</td>
<td>geschlafen</td>
</tr>

<tr>
<td>sleep</td>
<td>sleeps</td>
<td>slept</td>
<td>slept</td>
</tr>

<tr>
<td>schlagen</td>
<td>schl&auml;gt</td>
<td>schlug</td>
<td>geschlagen</td>
</tr>

<tr>
<td>hit</td>
<td>hits</td>
<td>hit</td>
<td>hit</td>
</tr>

<tr>
<td>schlie&szlig;en</td>
<td>schlie&szlig;t</td>
<td>schloss</td>
<td>geschlossen</td>
</tr>

<tr>
<td>close</td>
<td>closes</td>
<td>closed</td>
<td>closed</td>
</tr>

<tr>
<td>schreiben</td>
<td>schreibt</td>
<td>schrieb</td>
<td>geschrieben</td>
</tr>

<tr>
<td>write</td>
<td>writes</td>
<td>wrote</td>
<td>written</td>
</tr>

<tr>
<td>sehen</td>
<td>sieht</td>
<td>sah</td>
<td>gesehen</td>
</tr>

<tr>
<td>see</td>
<td>sees</td>
<td>saw</td>
<td>seen</td>
</tr>

<tr>
<td>sprechen</td>
<td>spricht</td>
<td>sprach</td>
<td>gesprochen</td>
</tr>

<tr>
<td>speak</td>
<td>speaks</td>
<td>spoke</td>
<td>spoken</td>
</tr>

<tr>
<td>stehen</td>
<td>steht</td>
<td>stand</td>
<td>gestanden</td>
</tr>

<tr>
<td>stand</td>
<td>stands</td>
<td>stood</td>
<td>stood</td>
</tr>

<tr>
<td>tragen</td>
<td>tr&auml;gt</td>
<td>trug</td>
<td>getragen</td>
</tr>

<tr>
<td>carry</td>
<td>carries</td>
<td>carried</td>
<td>carried</td>
</tr>

<tr>
<td>vergessen</td>
<td>vergisst</td>
<td>verga&szlig;</td>
<td>vergessen</td>
</tr>

<tr>
<td>forget</td>
<td>forgets</td>
<td>forgot</td>
<td>forgotten</td>
</tr>

<tr>
<td>verlieren</td>
<td>verliert</td>
<td>verlor</td>
<td>verloren</td>
</tr>

<tr>
<td>lose</td>
<td>loses</td>
<td>lost</td>
<td>lost</td>
</tr>

<tr>
<td>waschen</td>
<td>w&auml;scht</td>
<td>wusch</td>
<td>gewaschen</td>
</tr>

<tr>
<td>wash</td>
<td>washes</td>
<td>washed</td>
<td>washed</td>
</tr>


<tr>
<td>ziehen</td>
<td>zieht</td>
<td>zog</td>
<td>gezogen</td>
</tr>

<tr>
<td>pull</td>
<td>pulls</td>
<td>pulled</td>
<td>pulled</td>
</tr>
</table>

<br />
</div>

Sneak peek of the server side code