2010, ജൂൺ 27, ഞായറാഴ്‌ച

while കൂടുതല്‍ വിശദീകരണം














ആദ്യം നാം പുതിയതായി പഠിച്ച while എന്ന കീ വേര്‍ഡ്‌ ന്റെ പ്രവര്‍ത്തനം എങ്ങിനെയെന്ന് നോക്കാം.മുന്‍പ് നാം പഠിച്ച if എന്ന കീ വേര്‍ഡ്‌ നെ പോലെ തന്നെ while ഉം ഒരു കണ്ടീഷന്‍ ചെക്ക്‌ ചെയ്യുന്നു ,ഇവിടെയും പ്രസ്തുത കണ്ടീഷന്‍ true ആകുമ്പോള്‍ മാത്രമാണ് താഴെയുള്ള പ്രോഗ്രാം വര്‍ക്ക്‌ ചെയ്യുന്നത് .എന്നാല്‍ if ല്‍ നിന്നും വിത്യസ്ത മായി പ്രസ്തുത കണ്ടീഷന്‍ false ആകുന്നത് വരെ ചെക്ക്‌ ചെയ്തു കൊണ്ടേയിരിക്കും എന്നതാണ് വിത്യാസം.

ഇനി നമുക്ക് പ്രോഗ്രാം എങ്ങിനെ പ്രവര്‍ത്തിക്കുന്നു എന്ന് നോക്കാം ആദ്യം നാം i എന്ന variable ന്‍റെ വാല്യൂ 1 എന്ന് നല്‍കുന്നു (assign ,initialise എന്നീ വാക്കുകളാണ് ഇതിനെ വിശേഷിപ്പിക്കാന്‍ ഉപയോഗിക്കുന്നത് ).അടുത്ത വരിയില്‍ നാം while എന്ന കീ വേര്‍ഡ്‌ ഉപയോഗിച്ച് i യുടെ വാല്യൂ പരിശോധിക്കുന്നു .ആദ്യ പരിശോധനയില്‍ i യുടെ വില ഒന്ന്‍ ആണെന്ന് നമുക്കറിയാം ആയതിനാല്‍ i<=5 ന്‍റെ വില true ആയിരിക്കുമല്ലോ അഥവാ ഒന്ന്‍ അഞ്ചു നേക്കാള്‍ ചെറുതാണല്ലോ . while true ആയതിനാല്‍ അടുത്ത വരി പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിക്കുന്നു. ഈ വരി സ്ക്രീനില്‍ 1 എന്ന് പ്രിന്റ്‌ ചെയ്യുന്നു .അടുത്ത വരിയില്‍ i എന്ന variable ന്‍റെ വില ഒന്ന്‍ കൂട്ടാന്‍ എന്താണ് ചെയ്യുന്നത് എന്ന് നോക്കു i=i+1,ഇവിടെ ആദ്യം i യുടെ വില ഒന്ന്‍ ആയിരുന്നു ഇപ്പോള്‍ i യോട് കൂടി ഒന്ന് കൂടെ കൂട്ടുന്നതിനാല്‍ പുതിയ i യുടെ വില 2 ആകുന്നു.

വീണ്ടും while i<=5 : എന്ന വരി പ്രോഗ്രാം ചെക്ക്‌ ചെയ്യുന്നു അപ്പോയ്ഴും കണ്ടീഷന്‍ true ആയിരിക്കുമല്ലോ പിന്നീട് 2 എന്ന് സ്ക്രീനില്‍ പ്രിന്റ്‌ ചെയ്യുന്നു .ഇങ്ങിനെ i യുടെ വില ഓരോതവണയും മാറുകയും അത് സ്ക്രീനില്‍ പ്രിന്റു ചെയ്തു കൊണ്ടിരിക്കുകയും ചെയ്യുന്നു .അവസാനം i യുടെ വില 5 എന്ന് പ്രിന്റ്‌ ചെയ്തതിനു ശേഷം എന്താണ് സംഭവിക്കുന്നത്?? .ഈ സമയത്ത് i =5 ആണല്ലോ അടുത്ത വരി i=i+1 ല്‍ i ന്‍റെ വില 6 ആകും വീണ്ടും while i<=5: എന്ന് ചെക്ക്‌ ചെയ്യുന്നു .ഇവിടെ i യുടെ വില അഞ്ചി നേക്കാള്‍ കൂടുതല്‍ ആയതിനാല്‍ കണ്ടീഷന്‍ false എന്ന്‍ ഉത്തരം നല്‍കുന്നു.കണ്ടീഷന്‍ false ആകുമ്പോള്‍ while ലൂപ് ല്‍ നിന്നും പുറത്തേക്കു കടക്കുന്നു. ഓരോ സ്റ്റെപ്പും താഴെ കാണുന്നത് പോലെയാണ് പ്രവര്‍ത്തിക്കുന്നത് .
step ൦
i=1
step 1
while 1<=5 :     റിസള്‍ട്ട്‌ true എന്നാണ്
print 1
i=1+1    ഇപ്പോള്‍ i യുടെ വില 2 ആയി മാറി
step 2
while 2<=5 :     റിസള്‍ട്ട്‌ true എന്നാണ്
print 2
i=1+1    ഇപ്പോള്‍ i യുടെ വില 3 ആയി മാറി
step 3
while 3<=5 :     റിസള്‍ട്ട്‌ true എന്നാണ്
print 3
i=1+1     ഇപ്പോള്‍ i യുടെ വില 4 ആയി മാറി
step 4 while 4<=5 :     റിസള്‍ട്ട്‌ true എന്നാണ്
print 4
i=1+1     ഇപ്പോള്‍ i യുടെ വില 5 ആയി മാറി
step 5
while 5<=5 :    റിസള്‍ട്ട്‌ true എന്നാണ് ഇവിടെ സമം ആണല്ലോ
print 5
i=1+1     ഇപ്പോള്‍ i യുടെ വില 6 ആയി മാറി
step 6 while 6<=5 :    റിസള്‍ട്ട്‌ false ആയതിനാല്‍ തുടര്‍ന്നുള്ള രണ്ടു ലൈന്‍ പ്രവര്തിക്കില്ലല്ലോ .

ഇനി ഒന്ന് മുതല്‍ പത്തു വരെയുള്ള ഇരട്ട സന്ഗ്യ കല്‍ മാത്രം print ചെയ്യാന്‍ എങ്ങിനെ പ്രോഗ്രാം എഴുത്തും ??

2 അഭിപ്രായങ്ങൾ:

  1. കിരണം
    താങ്കളെ കോണ്ടാക്റ്റ് ചെയ്യാനുള്ള ഇ മെയിൽ വിലാസം yaridmr at gmail dot com എന്ന മെയിൽ ഐഡിയിലേക്കയക്കുമൊ?

    മറുപടിഇല്ലാതാക്കൂ