palindrome checker 2

by Tobias Beuving

JavaScript

var woord = "bobob";
var omgedraaidWoord = "";

// kijken of een ingevoerd woord (teCheckenWoord) achterstevoren hetzelfde is. (een palindroom)

// mogelijkheden:

// MOGELIJHEID 1
// door midden hakken (slice of split function)


// MOGELIJKHEID 1
// bij het woord abba zijn er 4 letters
// bij het woord ababa zijn er 5 letters 

// eerste versie van draaiWoordOm:
function draaiWoordOm(woordIn) {

	var omgedraaidWoord = "";
  var letter = "";
  
	for (var i = 0; i < woordIn.length; i++) {
    letter = woordIn.substr(i,1);
    console.log('de i-ste letter', letter);
  	omgedraaidWoord = letter + omgedraaidWoord;
  }	
  return omgedraaidWoord;
}



var lengte = woord.length;
// modulo procent teken %; 
// uitkomst van 'iets modulo aantal' = de rest van 'iets gedeeld door aantal'
if (woord.length % 2 == 0) {
 // even
  console.log('boeie');
} else {
 // oneven
 // woord = "aboba" = 5 karakters
 var aantalKarakters = (woord.length - 1) / 2;
 // aantalKarakters = 2
 var eersteDeel = woord.substr(0, aantalKarakters);
 // is twee karakters vanaf (inclusief) 0 dus karakter op pos 0 en karakter op pos 1 
 var tweedeDeel = woord.substr(aantalKarakters + 1);
 // aantalkarakers = 2, 2 + 1 = 3

 var omgedraaideAndereHelft = draaiWoordOm(tweedeDeel);
 console.log('omgedraaideAndereHelft is ', omgedraaideAndereHelft);
 
if (eersteDeel == omgedraaideAndereHelft) {
	console.log('Yes! het is een palindroom');
} else {
	console.log('poep, niet');
}
 

}