0.(9)=1?
by neworld on Rgs.15, 2007, under matematika
Neseniai per matematikos pamoką mokinomės iš periodinių skaičių paadryti trumpmenas. Vienas skaičius man užkliuvo, t.y. 0.(9). Dabar parodysiu kodėl jis yra lygus vienetui:
x=0.(9)
10x=9.(9)
10x-x=9.(9)-0.(9)
9x=9
x=9/9
x=1
Su 1/3=0.(3) viskas pavyksta gerai. Taigi turiu keletą idėjo dėl šio sutapimų.
Pirma tas dalykas jog šis paradoksas vyksta su 3 kartotiniu. Taigi:
0.(3)=1/3
0.(6)=2/3
0.(9)=3/3
3/3=1
Taigi darau išvada jog kai kurias trumpmenas negalima išversti į dešimtaines. Periodinė išraiška yra tik bandymas taip padaryti. Jug iš tiesu, kad ir 2/3=0.(6) turi begalybe tu šešetų ir niekados neprieisime galo. Taigi periodine išraišką 0.(9) visada bus lygi 1 neperidine išraiška.
Dar pastebėjau, kiek žinau nėra tokios trupmenos, kuria bandant išreikšti dešimtaine gautume 0.(9) (nors teoriškai večiant 1/1 į dešimtainę turime gauti 0.(9))
Tiesa prie to pačio, senuose vadovėliuose rašo jog pi=22/7. Tačiau 22/7 išreiškus į dešimtainę gauname skaičių šiek tiek didesnį už pi. Taigi darau prielaida, jog periodines trumpmenas neįmanoma išversti į dešimtaines tiksliai, arba senais laikais buvo paskaičiuotas blogai pi.
Konstrukcinio elemento “switch” panaudojimas filtruojant duomenis
by neworld on Rgs.01, 2007, under Programavimas
javascript, c++, php bei dauguma panašių kalbų turi šią konstrukciją. Kam ji skirta paskaitykite čia: http://www.php.net/switch (trumpai tariant supaprastint if naudojimą).
Šis straipsniukas skirtas tiems kurie moka ir naudojasi šiuo elementu.
Taigi pradėkime, tarkime turime kelis puslapius: ‘Titulinis’, ‘Kontaktai’, ‘Admin’, ‘Nuorodos’, ‘Moderuoti’,'Kita’,'Straipsniai’.
Sakykime visa administravimą/moderavimą laikome tame pačiame puslapyje patogumo sumetimais (sakykim bet kada galima labai lengvai šį bei ta peksiti ir pnš. Be to mes turime statinį, unikalų IP. Taigi mes norime kad tik iš savo ip tegalėtume prisijungti prie administravimo. Taigi mes galime pasirašyti paprastą funkciją:
[code lang="php"]
if (($puslapis=='Admin') or ($puslapis=='Moderuoti')) {
if ($ip=$admin_ip) {
include($puslapiai[$puslapis]);
} else {
echo "klaida";
}
} else {
include($puslapiai[$puslapis]);
}[/code]
Kodas aiškus ir suprantamas. Noriu pabrėžti tai, jog reikia visada filtruoti duomenis. Kadangi man patogu visus reikiamus puslapius sudėti į masyvą o paskui include($puslapiai[$puslapis]); įkrauti tik tuos puslapius kurie yra tame masyve.
Taigi kalba eina ne apie tai, o apie switch (jus ir pavadinimas byloja apie jį).
Taigi dabar parašyiu tą patį algoritmą panaudodamas switch:
[code lang="php"]
switch ($puslapis) {
case 'Admin':
case 'Moderuoti':
if ($ip=$admin_ip) {
include($puslapiai[$puslapis]);
} else {
echo "klaida";
}
default: include($puslapiai[$puslapis]);
} [/code]
Taigi kodas darys tą patį, tačau tvarkingiau atrodo, be to bus lengviau pridėti, ištrinti, redaguoti esamus puslapius į kuriuos noreime kad nekadėjau neįsilaužtų.
Nors straipsnyje naudojau vienam PHP kalbą, tačiau tą patį galima atlikti naudojant javascript, c# kalbas (bandžiau), taip pat kogero ir c++, c, JAVA
Blogerių diena ir vasaros pabaiga
by neworld on Rgp.31, 2007, under Kita
Taigi pradėsiu nuo geros žinios. Šiandien yra blogerių diena ir nusprendžiau įdėti kitą stilių. Jis yra ne mano (nes aš nemoku kurt). Taigi tik įdėjau, mano nuomonė šiek tiek žaismingesnį stilių.
Bloga žinia yra tai jog baigėsi vasara.
Prototype (pirmas žingsnelis)
by neworld on Rgp.26, 2007, under Prototype
Kadangi mano projektas išsaugo gan daug, be to jau turiu daug praktikos su ajax žemame lygmenyje, tai galvoju jog darbo spartai paspartinti + padidinti kokybę reikia pradėti naudoti frameworką. Frameworko pliusai tokie, kad patrumpina kodą, pagreitina darbą, bei geras frameworkas būna gerai pritaikytas daugybei naršyklių.
Taigi, galvojau kokį čia frameworką naudoti. Girdėjau gerų atsiliepimų apie prototype frameworką. Panaršęs po tinklapį pamčiau puslapį (http://prototypejs.org/real-world), kuriame matome kokie garsūs vardai naudoja šį framework’ą, pvž apple, cnn. Taigi darau išvada jog prototype iš tiesų yra vertas savo vardo.
Tada ėjau paskaityti dokumentacijos. Ji buvo gana išsami. Pestebėjau jog nėra visokių “super duper” funkcijų kurias panaudoja vienetai. Kadangi framework’as nėra per daug apkrautas, jis užima tik ~100kb. Kadangi naršyklės javascript’us saugo saugykloje, framework’as nebus dažnai siuntinėjamas.
Nu parsisiunčiau frameworką įkėliau į tinklapį. Perdariau savo ajax varikliuką ant prototype ajax. Nuo tada nebemačiau jokių klaidų susijusių su ajax. Viskas veikė kaip bitelė. Tada pamačiau labai naudingą dalyką. Visi žinome document.getElementById(‘element’) funkciją, kurios pagalbą galime dirbti su visais puslapyje esančiais komponentais kuriuose esam nurode id. Aišku aš turėjau pasirašęs funkciją:
[code lang="javascript"]function getelement(element) {
return document.getElementById(element);
}[/code]
Prototype turi analogišką funkcija $(‘element’). Aišku, nieko įspudingo, bet labai abejoju ar daugeliui šautų į galvą susikurti būtent tokiu pavadinimu funkciją.
Taigi padžia jau padaryta. Kuo toliau, tuo labiau išnaudoju prototype teikiamus malonumus. Rekomenduoju ir jums: http://prototypejs.org/
Karo Irake kaina
by neworld on Rgp.20, 2007, under Internetas
Netyčia naršydamas internete pamačiau puslapiuką, kuris realiu laiku rodo kaip kyla kaina Irake. http://www.nationalpriorities.org/Cost-of-War/Cost-of-War-3.html. Aišku tai nėra 100% tikslūs duomenys, tačiau kuo toliau, tuo labiau abejoju kad karas vyko dėl dar nerastų masinio naikinimo ginklų.