Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Javascript - udělejte za mě domácí úkol!

Moju češtinu ber s rezervou, ale toto by mohlo byť to, čo chceš:

<!DOCTYPE html>
<html><head>
	<meta charset="utf-8">
	<title>Čas</title>
</head><body>
	<script>
function inflect(texts, n) {
	return texts[n == 1 ? 0 : (1 < n && n < 5 ? 1 : 2)];
}
var numbers = [
	['nula', 'jedna', 'dvě', 'tři', 'čtyři', 'pět', 'šest', 'sedm', 'osm', 'devět', 'deset', 'jedenáct', 'dvanáct', 'třináct', 'čtrnáct', 'patnáct', 'šestnáct', 'sedmnáct', 'osmnáct', 'devatenáct'],
	['', '', 'dvacet', 'třicet', 'čtyřicet', 'padesát']
];
var texts = {
	info: ['Právě je', 'Právě jsou ', 'Právě je'],
	hours: ['hodina', 'hodiny', 'hodin'],
	minutes: ['minuta', 'minuty', 'minut'],
	seconds: ['sekunda', 'sekundy', 'sekund']
};
function toWords(n) {
	var n0 = n % 10;
	var n1 = 0|n / 10;
	return n1 == 1 ? numbers[0][n] : numbers[1][n1] + (!n1 || n0 ? numbers[0][n0] : '');
}
var div = document.body.appendChild(document.createElement('div'));
var text = div.appendChild(document.createTextNode(''));
setInterval(function() {
	var date = new Date;
	var h = date.getHours();
	var m = date.getMinutes();
	var s = date.getSeconds();
	text.data = [
		inflect(texts.info, h), ' ',
		toWords(h), ' ', inflect(texts.hours, h), ', ',
		toWords(m), ' ', inflect(texts.minutes, m), ' a ',
		toWords(s), ' ', inflect(texts.seconds, s), '.'
	].join('');
}, 200);
	</script>
</body></html>

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny