no tiene sentido intentar fusionar esos dos códigos. mientras que uno toma la hora local y arreglo a ella muestra una imagen. el otro saca un número aleatorio entre el rango 0-23
tomando tus otros post creo que lo que intentas es que a cada hora tome un elemento aleatorio sin repetición
Código:
var img=[0,1,2,3,4,5,6,7,8,9,10];
function shuffle(i){
i=(i<0)?Math.floor(Math.random()*img.length):(i+Math.floor(Math.random()*(img.length-1)+1))%img.length;
console.log(img[i]);
setTimeout(function(){shuffle(i);},5000);
}
shuffle(-1);