இதனால் ஏற்படும் விளைவுகள் என்னென்ன? கம்பவுண்டரை பற்றி டாக்டருக்கும் நோயாளிகளுக்கும் ஒரு நல்ல அபிப்ராயம் ஏற்படாது. இது நம்ம program முக்கும் பொருந்தும். எனவேதான் அவரை யோசிக்க சொல்லியிருந்தோம். என்ன சொல்லப்போகிறார் என்பதை இனி காண்போம்.
வாங்க stage 2 க்கு போவோம்.
Stage 2
டாக்டர் இல்லாவிட்டால் நோயாளியிடம் டாக்டர் இல்லை என்ற தகவலை சொல்லவேண்டும் என்று கம்பவுண்டர் முடிவெடுத்துவிட்டார். சரியான முடிவு. நமது சூழ்நிலைகளுக்கு தக்க சரியான முடிவெடுத்தால்தான் சிறப்பாக செயல்படமுடியும் என்பதை கம்பவுண்டர் புரிந்துகொண்டார்.
இனி நம்ம program மையும் improve செய்யவேண்டுமே! என்ன செய்ய?
அவருடைய செயலை பட்டியல் போட்டு அதிலிருந்து ஏதாவது clue கிடைக்கிறதான்னு பார்ப்போம்.
டாக்டர் இருந்தா நோயாளியை உள்ளே அனுப்பனும்;
இல்லைன்னா டாக்டர் இல்லைங்கிற தகவலை சொல்லனும்.
இது தான் அவர் பயன்படுத்துற if statement. இதில் இல்லைன்னா என்பதை பயன்படுத்தியிருக்கிறார். இதற்கு CONDITION FALSE ஆகிவிட்டால் என்று அர்த்தம். இதற்கு பொருத்தமான PROGRAMMING COMMAND என்ன இருக்கிறது?....
ELSE PART இருக்கே... இதை வச்சு எப்படி எழுதலாம்னு பார்ப்போம்.
if..else
நாம் பார்த்த simple if then statement ல் expression false ஆகிவிட்டால் என்ன செய்யவேண்டும் என்ற logic இல்லை. இதற்கு else part கைகொடுக்கிறது. எப்படி?
இதனுடைய syntax
if boolean_expression then statement_for_true_expression
else statement_for_false_expression
if டாக்டர் உள்ளே இருந்தால் then நோயாளியை உள்ளே அனுமதிக்கவும்
else டாக்டர் இல்லைங்கிற தகவலை சொல்லவும்
இதுதான் if statement.
இங்கே டாக்டர் உள்ளே இருந்தால் என்பது boolean expression ஆகும்.
இதற்கு இருக்கிறார் (true) அல்லது இல்லை (false) என்று ஏதாவது ஒரு பதில்தான் உங்களால் தரமுடியும்.
அந்த பதிலை போட்டு if எப்படி மாறுகிறது என்று பாருங்கள்.
டாக்டர் உள்ளே இல்லை என்றால் என்னாகும்?
டாக்டர் உள்ளே இருந்தால் என்கிற expression இல்லை என்று மாறுகிறது.
if இல்லை then நோயாளியை உள்ளே அனுமதிக்கவும்
else டாக்டர் இல்லைங்கிற தகவலை சொல்லவும்
இங்கே expression false ஆக மாறிவிட்டது அதனால் true part statement execute செய்யப்படாமல் else part execute செய்யப்படும்.
நீங்களும் டாக்டர் இல்லைங்கிற தகவலை சொல்லிவிடுவீர்கள்.
நமது புரோகிராமும் தகவலை சொல்லிவிடும்.
கம்பவுண்டர் (அதாங்க நீங்க) உட்கார்ந்திருக்கீங்க.
ஒரு நோயாளி வருகிறார்;
டாக்டர் உள்ளே இல்லை;
லாஜிக் படி டாக்டர் இல்லைன்னு தகவல் சொல்லியாச்சு.
நோயாளி அநாவசியமாக காத்திருக்காமல் போய்விட்டார். அரைமணி நேரம் கழித்து டாக்டர் வருகிறார். என்னப்பா யாரையும் காணோம்னு கேட்கிறார். நீங்களும் வந்த நோயாளிகளை இல்லைன்னு சொல்லி அனுப்பிய விசயத்தை சொல்றீங்க. டாக்டருக்கு ஒரே கவலை. ஏம்ப்பா கம்பவுண்டரு! நான் இல்லைன்னதும் உடனே அவர்களை அனுப்பிவச்சிடறதா.. ஒரு போன் பண்ணி வருகிறேனா இல்லையான்னு கேட்டிருந்தா காத்திருக்க சொல்லியிருப்பேன்ல அப்படின்னு சொல்கிறார்.
ஆகா இது நமக்கு தெரியாம போயிடுச்சே. சரிங்க டாக்டர் இனிமேல் அந்த மாதிரியே செய்யறேன்னு சொல்றீங்க.
Stage 3
இப்போ உங்களுடைய லாஜிக் கொஞ்சம் கொஞ்சமா improve ஆகுது.
இனி நம்ம program மையும் improve செய்யவேண்டுமே! என்ன செய்ய?
கம்பவுண்டருடைய செயலை பட்டியல் போட்டு அதிலிருந்து ஏதாவது clue கிடைக்கிறதான்னு பார்ப்போம்.
இது தான் நீங்க பயன்படுத்துற if statement.
இதில் இல்லை வந்திடுவாருன்னா என்பதை பயன்படுத்தியிருக்கீங்க. இதற்கு ஒரு CONDITION FALSE ஆகிவிட்டால் இன்னொரு CONDITION னை USE பண்ணுறீங்கன்னு அர்த்தம். இதற்கு பொருத்தமான PROGRAMMING COMMAND என்ன இருக்கிறது?....
ELSE IF PART இருக்கே... இதை வச்சு எப்படி எழுதலாம்னு பார்ப்போம்.
if..else if
நமது புரோகிராமும் தகவலை சொல்லிவிடும்.
கம்பவுண்டர் (அதாங்க நீங்க) உட்கார்ந்திருக்கீங்க.
ஒரு நோயாளி வருகிறார்;
டாக்டர் உள்ளே இல்லை;
லாஜிக் படி டாக்டர் இல்லைன்னு தகவல் சொல்லியாச்சு.
நோயாளி அநாவசியமாக காத்திருக்காமல் போய்விட்டார். அரைமணி நேரம் கழித்து டாக்டர் வருகிறார். என்னப்பா யாரையும் காணோம்னு கேட்கிறார். நீங்களும் வந்த நோயாளிகளை இல்லைன்னு சொல்லி அனுப்பிய விசயத்தை சொல்றீங்க. டாக்டருக்கு ஒரே கவலை. ஏம்ப்பா கம்பவுண்டரு! நான் இல்லைன்னதும் உடனே அவர்களை அனுப்பிவச்சிடறதா.. ஒரு போன் பண்ணி வருகிறேனா இல்லையான்னு கேட்டிருந்தா காத்திருக்க சொல்லியிருப்பேன்ல அப்படின்னு சொல்கிறார்.
ஆகா இது நமக்கு தெரியாம போயிடுச்சே. சரிங்க டாக்டர் இனிமேல் அந்த மாதிரியே செய்யறேன்னு சொல்றீங்க.
Stage 3
இப்போ உங்களுடைய லாஜிக் கொஞ்சம் கொஞ்சமா improve ஆகுது.
இனி நம்ம program மையும் improve செய்யவேண்டுமே! என்ன செய்ய?
கம்பவுண்டருடைய செயலை பட்டியல் போட்டு அதிலிருந்து ஏதாவது clue கிடைக்கிறதான்னு பார்ப்போம்.
டாக்டர் இருந்தா நோயாளியை உள்ளே அனுப்பனும்;
இல்லை வந்திடுவாருன்னா நோயாளியை காத்திருக்க சொல்லனும்;
இல்லை வந்திடுவாருன்னா நோயாளியை காத்திருக்க சொல்லனும்;
இல்லைன்னா டாக்டர் இல்லைங்கிற தகவலை சொல்லனும்;
இது தான் நீங்க பயன்படுத்துற if statement.
இதில் இல்லை வந்திடுவாருன்னா என்பதை பயன்படுத்தியிருக்கீங்க. இதற்கு ஒரு CONDITION FALSE ஆகிவிட்டால் இன்னொரு CONDITION னை USE பண்ணுறீங்கன்னு அர்த்தம். இதற்கு பொருத்தமான PROGRAMMING COMMAND என்ன இருக்கிறது?....
ELSE IF PART இருக்கே... இதை வச்சு எப்படி எழுதலாம்னு பார்ப்போம்.
if..else if
மேலே நாம் பார்த்த if..else statement ல் டாக்டர் இல்லாவிட்டால் என்ன செய்யவேண்டும் என்ற logic முழுமையாக இல்லை. அதாவது டாக்டர் உள்ளே இல்லை. ஆனால் ஒருவேளை டாக்டர் இன்று 1/2 மணிநேரம் தாமதமாக வரலாம் அல்லது வராமலும் போகலாம். இந்த சூழ்நிலையில் வந்த நோயாளியிடம் எப்படி நடந்துகொள்வது என்பதற்கு else if part கைகொடுக்கிறது. எப்படி?
இதனுடைய syntax
if boolean_expression1 then statement_expression1_is_true
else if boolean_expression2 then statement_expression1_is_false_but_expression2_is_true
else if boolean_expression2 then statement_expression1_is_false_but_expression2_is_true
else statement_expression1and2_are_false
else if டாக்டர் வருவார் then நோயாளியை காத்திருக்க சொல்லவும்
else டாக்டர் இன்று விடுமுறை என்று சொல்லிவிடவும்
இதுதான் if statement.
ஆனால் அரை மணி நேரத்தில் வருவார் என்றால் என்னாகும்?
டாக்டர் உள்ளே இருந்தால் என்கிற expression இல்லை என்று மாறுகிறது.
எனவே False Side க்கு control போகிறது.
அங்கே இன்னொரு condition evaluate செய்யப்படுகிறது.
எனவே False Side க்கு control போகிறது.
அங்கே இன்னொரு condition evaluate செய்யப்படுகிறது.
டாக்டர் 1/2 மணிநேரத்தில் வருவார் என்கிற expression ஆம் என்று மாறுகிறது.
இங்கே expression2 true ஆக மாறிவிட்டது அதனால் expression2 வினுடைய true part statement execute செய்யப்படுகிறது.
எனவே நீங்கள் நோயாளியை காத்திருக்கச் சொல்வீர்கள்.
ஒருவேளை டாக்டர் இன்று வரவில்லையென்றால் என்னாகும்?
டாக்டர் 1/2 மணிநேரத்தில் வருவார் என்கிற expression இல்லை என்று மாறுகிறது. எனவே False Side க்கு control போகிறது.
எனவே டாக்டர் இன்று விடுமுறை என்று சொல்லி நோயாளியை நீங்கள் அனுப்பிவிடுகிறீர்கள்.
ஒரு நல்ல கம்பவுண்டராக உங்கள் பணியை செய்ய ஆரம்பிக்கிறீர்கள்.
ஒரு நோயாளி வருகிறார்;
டாக்டரும் உள்ளே இருக்கிறார்;
லாஜிக் படி நோயாளியை உள்ளே அனுப்பறீங்க
அவர் உள்ளே போனதும் டாக்டர் உங்களை கூப்பிடுகிறார்.
ஏம்ப்பா! ஏற்கனவே ஒரு நோயாளி உள்ளே இருக்காருல்ல. இவர் இருக்கும் போது ஏன் இன்னொருத்தர உள்ளே அனுப்பினேன்னு கேட்கிறார்.
ஆஹா! இந்த யோசனை நமக்கு வரலியேன்னு நெனச்சுக்கிட்டே, சரிங்க டாக்டர் இனிமேல் இந்த தப்பு நடக்காதுன்னு சொல்றீங்க.
ஆனா உங்க லாஜிக்குல இந்த தவறை தடுக்க எந்த condition னும் இல்லையே! இப்ப என்ன செய்யப்போறீங்க? யோசிச்சு வையுங்க அடுத்த பாகத்துல பார்க்கலாம்.
ஒரு நல்ல கம்பவுண்டராக உங்கள் பணியை செய்ய ஆரம்பிக்கிறீர்கள்.
ஒரு நோயாளி வருகிறார்;
டாக்டரும் உள்ளே இருக்கிறார்;
லாஜிக் படி நோயாளியை உள்ளே அனுப்பறீங்க
அவர் உள்ளே போனதும் டாக்டர் உங்களை கூப்பிடுகிறார்.
ஏம்ப்பா! ஏற்கனவே ஒரு நோயாளி உள்ளே இருக்காருல்ல. இவர் இருக்கும் போது ஏன் இன்னொருத்தர உள்ளே அனுப்பினேன்னு கேட்கிறார்.
ஆஹா! இந்த யோசனை நமக்கு வரலியேன்னு நெனச்சுக்கிட்டே, சரிங்க டாக்டர் இனிமேல் இந்த தப்பு நடக்காதுன்னு சொல்றீங்க.
ஆனா உங்க லாஜிக்குல இந்த தவறை தடுக்க எந்த condition னும் இல்லையே! இப்ப என்ன செய்யப்போறீங்க? யோசிச்சு வையுங்க அடுத்த பாகத்துல பார்க்கலாம்.
No comments:
Post a Comment