Programeer opdrachtenOpdracht : opdr2b_Flash.txt

Terug naar de inzendingen
Opdracht 2b,Michiel van den Berg
25 Jan 2005
 Heb maar ff een php shell opdracht gemaakt voor 2b Ga mischien ook nog aan 2 werken, maar zo slim ben ik denk ik niet Razz
 
 (Hij is niet helemaal crossplatform, omdat debian eigenwijs is, eerste regel 'php' vervangen door php4 om op debian te gebruiken)
 1 
*****palindroom.php*****
  
 2#!/usr/bin/php
 3
 4
 5// Michiel van den Berg (c) 2005 GNU/GPL
 6// Programmeer opdracht 2b
 7
 8// De string
 9$string = "In deze programeer opdracht lepel staan naast gewone nepapen woorden ook een paar topspot palindromen meeneem droogoord";
 10
 11// Eerst alles lowercase maken
 12$string = strtolower($string);
 13
 14// Array bouwen
 15$array = explode(" ",$string);
 16
 17// Met een for loop door alle woorden heen lopen en deze omdraaien en evt uppercasen
 18for ($i=0; $i
 19
 20  // Woord omdraaien
 21  $newword = strrev($array[$i]);
 22
 23  //Controleren of output woord hetzelfte is als input
 24  if ($array[$i] == $newword) {
 25
 26    // We halen het laatste karacter van het woord op (mag ook de eerste zijn, ze zijn toch hetzelfte) en maak dit een hoofdletter
 27    $char = strtoupper(substr($newword, -1));
 28
 29    // Bereken de lengte van het woord
 30    $len = strlen($newword);
 31    // 2 eraf (eerste en laatste letter)
 32    $len = $len - 2;
 33    $string = substr($newword, 1, $len);
 34
 35    //Bouw het woord weer op
 36    $newword = $char . $string . $char;
 37
 38  }
 39  // Print het woord.
 40  echo "$newword ";
 41}
 42
 43// Newline :P
 44echo "\n";
 45
 46?>
 
 
Mijn commentaar
 
 Michiel,
 Netjes en tamelijk efficient gedaan.
 Ook naar volle tevredenheid gedocumenteerd.
 Puntje van kritiek,
 Alles naar lowecase omzetten in regel 10-11 is volgens door mij niet gespecificeerd en dus toegestaan.
 Netjes vind ik het echter niet !
 Verder stel ik vast dat jij elk woord omdraait, ook als het een palindrome betreft.
 Dat verbruikt kostbare rekentijd (Die je voor werkelijk belangrijke zaken zoals een chatprogramma kunt gebruiken).
 Je werkwijze in regel 25-35 vind ik wat complex, maar ik weet niet of je in php gemakelijk een bepaalde positie binnen een string kunt aanduiden.