BLOGveida draza tehniskajā pierakstā

Rīta challenge

Rīta challenge (10 komentāri)

Kirils 2004-07-03 23:02:55 Dzīve
Bilde rakstam
Pamodos es, iegāju čatā.
[18:50:05] <Madars> sveiks, CDC
[18:51:17] <MM-Y> cha CDC
[18:53:44] <CDC> sveiki
Un hop, uzrāvos uz čelendžu. Ak nabaga es. :)
[19:19:32] <broadcast> Ne`, es saskaitiiju cik liinijas sources
[19:20:03] * Ne` zviedz kaa smirdiigs zirgs
[19:20:06] <broadcast> ir gandriiz 6 ljimoni, nevis 1
[19:20:17] <Ne`> nee 6jabloki
[19:20:24] <huliganz> a 4em bazar?
[19:20:33] <Ne`> o ruskih
[19:20:50] <broadcast> jaasaglabaa surces
[19:20:56] <broadcast> lai var naakoshreiz paskaitiit
[19:21:10] <CDC> hehhhh
[19:21:22] <CDC> broadcast, kas ta Tur pa sourci? viena rinda bashaa?
[19:21:26] <CDC> nu labi. mosh nedaudz vairaak
[19:21:33] <broadcast> CDC, debiils?
[19:21:43] <broadcast> tur ir dahuja
[19:22:55] <broadcast> CDC, davaj chalenge
[19:22:58] <CDC> broadcast, ooo
[19:22:59] <broadcast> kurs uzrakstiis iisaak
[19:23:03] <CDC> broadcast, man nav kernelja sources
[19:23:06] <CDC> :(
[19:23:09] <broadcast> kernel.org
[19:23:12] <broadcast> novelc
[19:23:20] <broadcast> davaj davaj nelauzies
[19:23:22] <CDC> www.small200MBharddisk.com
[19:23:24] <broadcast> tu taads gudrs
[19:23:26] <broadcast> paraadi speejas
Nu, atteikties kaut kā nepieklājīgi.


Tad nu es pusstundas laikā radīju šo.
#!/bin/bash
# (C) CDC, 2004.
#
# elegantais kods, lai saskaitiitu liinijas kodaa :))
#
# [19:33:13] <broadcast> saskaitii liinijas vaig tikai .c .h .S .s
# atsauce uz bro, lai man nepiepishas par nepareiziem failtipiem
#
[ "$1" ] || exit
tsum=0
tf=0
for x in `find $1 -type f -name *.c -or -name *.S -or -name *.s -or -name *.h`; do
tsum=$((tsum + `cat $x | wc -l`))
tf=$((tf +1))
done
echo "Atradu $tsum rindas $tf failos."

broadcast piesauca kaut kādu tiesnesi, sauktu Pecisk. Nu labi, lai ir. Pirmais broadcasta kods nebija diez ko optimāls, bet pēc tam, kad Pecisk bija lēmis man par labu ātruma ziņā, un es devos relaksēties un ieēst brokastis, broadcast nedaudz pielaboja savu skriptu, iegūstot šo.
#!/bin/sh
aiziet()
{
ls -1R . | while read f l
do
SEPR=$(echo $f | grep "$FF" | awk '{print $2}' FS='.')
EE=$(echo $f | grep "/" | awk '{print $1}' FS=':' | awk '{print $2}' FS='.')
if [ $EE ]
then
cd /usr/src/linux$EE 2> /dev/null
else
if [ $SEPR ] ; then
wc -l ./$f 2> /dev/null
fi
SEPR=""
fi
done
}
FF="\.c" ; aiziet ; FF="\.h" ; aiziet ; FF="\.s" ; aiziet ; FF="\.S" ; aiziet
"Aiziet, aiziet," kā mēdza teikt Ozols. ;)

Lūk arī rezultāti no tiesneša:
[21:57:57] <Pecisk> CDC: 28.296 sec
[21:58:08] <Pecisk> broadcast: 36.198 sec

Taču, kad es atgādināju broadcastam par ko bija strīds, viņš saīsināja savu versiju.
[20:42:53] <CDC> broadcast, atceries par ko striids bij? :)
[20:42:53] <Pecisk> es veel te es, ja kas
[20:43:01] <CDC> es teicu, ka var vienaa rindaa gndrz uzraxtiit
[20:43:05] <CDC> shitaad softu
Rezultātā uz šo brīdi broadcast piedāvā šādu kodu.
#!/bin/bash
find $1 -name *.c -o -name *.h -o -name *.s -o -name *.S | while read f
do REZ=$((`wc -l $f | awk '{print $1 }'` + REZ)) ; echo $REZ ; done

Salīdzinājumam saīsināju arī savējo. Mans skaitīja arī failus (neuztraucies, arī broadcast ir spējīgs uztaisīt, lai skaita failus, bet tas nav uzdevums), tāpec šajā versijā ir noņemta failu skaitīšana.
Šo var laist vienkāši no konsoles (bash interpretatora).
s=0;for x in `find /usr/src/linux -type f -name *.c -or -name *.S -or -name *.s -or -name *.h`;do s=$((s+`cat $x|wc -l`));done;echo $s

Tika notestētas jaunās versijas.
[22:32:02] <Pecisk> broadcast, tavs peedeejais iet
[22:32:17] <broadcast> cik sek
[22:32:22] <Pecisk> shas izmeriisiim
[22:33:16] <Pecisk> broadcast, 34
[22:41:16] <Pecisk> CDC, shas testeeju taveejo
[22:41:23] <CDC> aah, beidzot
[22:41:41] <Pecisk> 32
[22:41:41] * CDC izdzeesa /challenge no serva
[22:41:42] <Pecisk> :)
[22:41:46] <Pecisk> 32 sec
[22:41:55] <broadcast> uztaisi katru 3x
[22:41:59] <broadcast> lai godiigi
[22:41:59] <CDC> :)))
[22:42:01] <Pecisk> ok
[22:42:03] <CDC> hehe
[22:42:04] <Pecisk> katru 3 x
[22:42:05] <broadcast> un videejo
[22:42:07] <Pecisk> ok
[22:42:09] <Pecisk> gaidat tad
[22:42:09] <huliganz> :)
[22:42:10] <CDC> starpiibu :)
[22:42:12] <broadcast> tad viss miers

Pecisk paziņo galējos un beidzamos rezultātus (apbruņojieties ar pacietību, var redzēt, ka viņam tas sagādā baudu).
[22:49:18] <Pecisk> broadcast, CDC
[22:49:28] <huliganz> :)))))))
[22:49:28] <CDC> heh
[22:49:35] * CDC klausaas =D
[22:49:56] <sn> Pecisk lai arii kaadus rezultaatus tu pateixi vinjus varees apstriideet
[22:49:58] <sn> :))
[22:50:10] <huliganz> ;p
[22:50:20] <CDC> hehe :D
[22:50:24] <CDC> a vinjsh neko neteix
[22:50:27] <Pecisk> dieva jau arii nav
[22:50:38] <CDC> ies maajaa dzert teeju, jopcik
[22:50:44] <CDC> dieva nav, taa gan
[22:50:58] <broadcast> Pecisk, nu sauc
[22:51:01] * broadcast neapstriidees
[22:51:09] * huliganz gan vareetu
[22:51:12] <huliganz> bet tolka nav
[22:51:12] <huliganz> ;)
[22:51:13] <broadcast> da po
[22:51:21] <Pecisk> ok
[22:51:22] <Pecisk> taa
[22:51:23] <Pecisk> klausaas
[22:51:25] <huliganz> ;)
[22:51:26] <CDC> nevelc logfailu, juuzeru ekraani nav bezgaliigi
[22:51:28] <Madars> :)
[22:51:35] <Pecisk> lai intriga lielaaka
[22:51:36] <Pecisk> :P
[22:51:37] <Pecisk> ok
[22:51:38] <huliganz> ;]
[22:51:46] <CDC> Pecisk: pastaasti par sevi.
[22:51:51] <Madars> :D
[22:51:56] <sn> :))
[22:52:12] <sn> Pecisk izmanto iespeeju kameer veel esi uzmaniibas centraa
[22:52:30] <Pecisk> CDC: 31.766 sec (videejais no trim piegaajieniem) | broadcast: 35.104 sec (videejais no trim piegaajieniem). Taaa un daamas un kungi, uzvar CDC sarkanajaa triko kreisajaa stuurii =)
[22:52:49] * broadcast paspiezh CDC roku
[22:52:55] <broadcast> apsveicu
[22:53:06] <sn> hah
[22:53:11] * CDC attieciigi pashpiezh broadcast roku. every action has a reaction
[22:53:17] <CDC> :)
[22:53:24] <sn> Pecisk kad broadcasta scriptu testeeji tad ganjau bij cpu loads lielaax :))
[22:53:29] <CDC> :)
[22:53:35] <CDC> aha, 3x peec kaartas
[22:53:45] <sn> kgan man liels po kuram iisaaks
[22:53:50] <broadcast> nee nee viss godiigi
[22:54:04] <CDC> labb, pieseivos logu un ies taisiit eest.
[22:54:05] <broadcast> iepostee lapaa ka chalenge ir oficiaali nosleegusies
[22:54:06] <CDC> eest ta gribas, blje
[22:54:08] <CDC> broadcast, aha.
[22:54:16] <Pecisk> saglabaajat shito rindu skaitiitaaj, noderees

Vēlreiz citēju rezultātu (ja nu slinkums burties cauri tam visam):
[22:52:30] <Pecisk> CDC: 31.766 sec (videejais no trim piegaajieniem) | broadcast: 35.104 sec (videejais no trim piegaajieniem). Taaa un daamas un kungi, uzvar CDC sarkanajaa triko kreisajaa stuurii =)

Ja ir kādi jautājumi par manu sourci, postējiet komentos, centīšos atbildēt.

Komentāri


001. koko 2004-07-04 04:08:10
Nu tjipa - koderi juus :)) Challanges visaadas :)) Nu kruta - vismaz piespiezh smadzeneem straadaat... A to - geimuku varianc - ja neviens tev nestaavees aiz muguras un neteiks, ka vajag vieglaaku un aatraaku, tad vienk pieliks, ka vajag proci jaudiigaaku un ramu lielaaku.. .Prieks par to, ka visu var padariit daudz aatraaku un vieglaaku un bez liekiem apvainojumiem :))

002. Kirils 2004-07-04 04:10:09
a Tu ko? :)
beidzi gaamoties CS un noleemi pakliist pa sveshaam lapaam? ;]

003. Kirils 2004-07-04 04:15:37
no sarunaam ar dazhiem lasiitaajiem sapratu, ka esmu nepareizi uzsveeris galveno domu.
Nav svariigi, ka es vineeju. Svariigi, ka es pieraadiju, ka to var uzrakstiit vienaa rindinjaa ;]

004. koko [ esmu te ] 2004-07-04 13:07:00
Nu es domu ta sapratu, bet nu ja nebuutu taa chelandzha, tad tu to arii nepieraadiitu :)) Un tas, ka izpildiijaas aatraak varbuut nemaz nav tik objektiivi - vajadzeetu uz vairaaku prochu tipiem pameegjinaat :))

005. ManInBlack [ esmu te ] 2004-07-04 17:05:05
nu ir jau ir tev garaaks :P

006. Kirils [ esmu te ] 2004-07-04 21:33:42
Nekā ;)
Šī īstenībā bija cīņa par to, kuram īsāks ;]]]

007. ManInBlack 2004-07-06 21:49:19
Lab, broadcast iehavo tad garaaku.. :P

008. Jancis 2005-02-03 19:39:46
riita challange? tur tak astonji vakaraa

009. Kirils [ esmu te ] 2005-02-03 19:43:29
riits ir tad, kad es pamostos :p

010. CHUHNJA! [ esmu te ] 2008-06-19 23:07:40
Kirils ir ists vecis

ŠEIT ATKRITUMUS IZMEST AIZLIEGTS
Apnicis katru reizi no jauna aizpildīt pirmos 3 laukus? Spied!



Netiks publicēts, kamēr netiks ieviesta antispama sistēma.

Ja raksti mājaslapas adresi, neaizmirsti http://.



Neaizmirsti, ka jebkāda offtopika vieta ir tur, nevis šeit!

Skaitītājs

Unikālie hosti
Šodien:143
Vakar:185
Ra:258

Cita draza

1. SIA
Sargiet bērnus: nelieciet viņiem elpot tabakas dūmus!