Archive for Rugsėjis, 2007
pi (Ï€)
by neworld on Rgs.17, 2007, under matematika
Taigi visi žinome šią konstantą ir kam ji naudojama. Tačiau nesuprantu vieno dalyko. Yra nustatyta milijoninė pi reiškmė (gal dar daugiau). Ją rasite čia. Viskas būtų gerai, tačiau kai paskaičiau wikipedijos straipsnį pastebėjau įdomų dalyką:
Pi yra iracionalusis skaičius, tai yra negali būti užrašytas kaip dviejų sveikųjų skaičių santykis. Tai 1761 metais įrodė Johanas Heinrichas Lambertas (Johann Heinrich Lambert). 1882 metais įrodyta, kad skaičius yra transcendentinis, tai yra neegzistuoja toks polinomas su racionaliais koeficientais, kurio šaknis būtų Ï€.
Taigi, mano supratimų norint nustatyti tikslią pi reikšmę reikia tiesiog matuoti apskritimo ilgį ir skerspjūvio santykį. Visa bėda slypi tame, jog norint nustatyti tokią tikslią reikšmę reikėtų labai didelio apskritimo ir labai tikslių matavimo prietaisų, ir abejoju, kad kam nors pavyko išmatuoti tokia tikslią reikšmę, nes mažiausio atomo spindulis yra 0,53E-10, o čia jau 1E-1000000, ir tai ~100.000 mažesnė reikšmė.
Jeigu kur klystu pataisykite.
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
