Pogovor:1069

Vsebina strani ni podprta v drugih jezikih.
Iz Wikipedije, proste enciklopedije

Strani z leti verjetno avtomatsko generiraš, pa me zanima, s čim se to počenja v Windowsih. Visual Basic? V Unixu bi sam znal to najhitreje napisati v awku (kar pa je le moja osebna preferenca; znal bi tudi v perlu, pythonu in ukazni lupini :) --Peterlin 21:02, 12 Oct 2003 (UTC)

Ja, no. Jih avtomatsko generiram, ja, s tipkanjem po tastaturi. Nimam časa (in volje), da bi to počel kako drugače. Saj se počasi kar daleč pride. Še 1069 do leta 0, pa bo. Leta pred našim štetjem pa bo boljše, če jih vnašamo po potrebi. Mislim, da so to počeli v drugih wikipedijah z MS Excellom. Ja, drugače bi pa spisal kratek C program, da bi to počel, samo je vseeno potrebno njegove rezultate vnašati ročno, Show preview, Save page in to. Priznam, da sem preveč len programer, kolikor sem pač programer. Sem JAnez ja, samo ne Demšarjev. LP. --XJam 21:08, 12 Oct 2003 (UTC)
Tvoj glavni problem je pomanjkanje lenobe! :) Če imaš možnost v Windows poganjati Perl, poskusi tole spodaj. Če nimaš, ti lahko zgeneriram preostalih 976 datotek. Kar me resno jezi, je, da ne znam napisati programčka, ki bi se sam povezal s strežnikom Wikipedije in vnesel potrebne sestavke, pa vem, da se bi dalo, samo znam ne... -- Peterlin 08:19, 13 Oct 2003 (UTC)
#!/usr/bin/perl
# $Id: GenerateWikiYear,v 1.1 2003/10/13 08:14:21 peterlin Exp $

if ($#ARGV != 0) {
    die "Uporaba: $0 leto\n";
}

$leto = $ARGV[0];
if ($leto < 0 || $leto > 3000) {
    die "0 <= leto <= 3000\n";
}

$stoletje = int(($leto-1)/100) + 1;
$desetletje = 10*int($leto/10);

print "[[de::$leto]][[en:$leto]]\n";
printf "[[Stoletja]]: [[%s. stoletje]] - '''[[%s. stoletje]]''' - [[%s. stoletje]]\n", $stoletje - 1, $stoletje, $stoletje + 1;
print "\n";

printf "[[Desetletja]]:";
for ($i = $desetletje - 50; $i <= $desetletje + 50; $i += 10) {
    if ($i == $desetletje) {
	printf " - '''[[%s.]]''' -", $i;
    } else {
	printf " [[%s.]]", $i;
    }
}
print "\n";
print "\n";

printf "Leta:";
for ($i = $leto - 5; $i <= $leto + 5; $i++) {
    if ($i == $leto) {
	printf " - '''%s''' -", $i;
    } else {
	printf " [[%s]]", $i;
    }
}
print "\n";
print "\n";
print "----\n";
print "\n";
print "'''Dogodki:'''\n";
print "\n";
print "*[[1. januar]]\n";
print "\n";
print "\n";
print "'''Rojstva:'''\n";
print "*\n";
print "\n";
print "'''Smrti:'''\n";
print "*\n";
print "\n";
print "'''Glej tudi:'''\n";
print "\n";
Hvala Primož za 'algoritem' v perlu. Perla ne znam in ga ne poganjam v Oknih. Tukaj je še tvoj predelan algoritem v starem dobrem C-ju. Perl in C sta si očitno podobna.
/* $Id: gwy,v 1.1 2003/10/13 jm  */

#include <stdio.h>
#include <stdlib.h>

int leto, desetletje, stoletje;
int i;

main(int argc, char **argv) {

if (argc == 1) { printf("Uporaba: %s leto\n",argv[0]); exit(1); }

leto = atoi(argv[1]);

if (leto < 0 || leto > 3000) { printf("0 <= %d <= 3000\n",leto); exit(1); }

stoletje = (leto-1)/100 + 1; /* stoletje računamo od x01 do (x+1)00 */
desetletje = 10 * (leto/10);

printf ("[[de:%d]][[en:%d]]\n",leto,leto);
printf ("\n");
printf ("[[Stoletja]]: [[%d. stoletje]] - '''[[%d. stoletje]]''' - [[%d. stoletje]]\n", stoletje - 1, stoletje, stoletje + 1);
printf ("\n");

printf ("[[Desetletja]]:");
for (i = desetletje - 50; i <= desetletje + 50; i += 10) {
    if (i == desetletje) {
	printf (" - '''[[%d.]]''' -", i);
    } else {
	printf (" [[%d.]]", i);
    }
}
printf ("\n");
printf ("\n");

printf ("Leta:");
for (i = leto - 5; i <= leto + 5; i++) {
    if (i == leto) {
	printf (" - '''%d''' -", i);
    } else {
	printf (" [[%d]]", i);
    }
}
printf ("\n");
printf ("\n");
printf ("----\n");
printf ("\n");
printf ("'''Dogodki:'''\n");
printf ("\n");
printf ("*[[1. januar]]\n");
printf ("\n");
printf ("\n");
printf ("'''Rojstva:'''\n");
printf ("*\n");
printf ("\n");
printf ("'''Smrti:'''\n");
printf ("*\n");
printf ("\n");
printf ("'''Glej tudi:'''\n");
printf ("\n");
}
Zdaj pa na delo, kdo bo hitrejši. :-) Pri letih x00 x01 je otrebno paziti še glede stoletja. --XJam 10:35, 13 Oct 2003 (UTC)