ICT 2
ICT 2
COsT ← N * (1 - D)
OuTPuT "YOuR TICkETs COsT", COsT
ENDIF
END
HOw IT wORks
* CONDITION: THE CONDITION Is AN ExPREssION
THAT CAN bE EVALuATED As EITHER TRuE OR
FALsE. THIs Is OFTEN A COMPARIsON (E.G., x >
10, NAME == "ALICE", AGE >= 18).
* IF: THE IF sTATEMENT CHECks THE CONDITION.
* THEN: IF THE CONDITION Is TRuE, THE CODE
wITHIN THE THEN bLOCk Is ExECuTED.
* ELsE: IF THE CONDITION Is FALsE, THE CODE
wITHIN THE ELsE bLOCk Is ExECuTED.
* ENDIF: MARks THE END OF THE IF sTATEMENT.
IT's EssENTIAL TO PROPERLY CLOsE YOuR IF
bLOCks.
ExAMPLEs
LET's ILLusTRATE wITH sOME ExAMPLEs, FIRsT
IN PsEuDOCODE (wHICH Is LANGuAGE-
AGNOsTIC) AND THEN IN PYTHON.
ExAMPLE 1: CHECkING AGE
* PsEuDOCODE:
IF (AGE >= 18) THEN
OuTPuT "YOu ARE AN ADuLT."
ELsE
OuTPuT "YOu ARE A MINOR."
ENDIF
* PYTHON:
AGE = 16 # ExAMPLE AGE
IF NuMbER > 0:
PRINT("THE NuMbER Is POsITIVE.")
ELIF NuMbER < 0: # PYTHON's wAY OF ELsE IF
PRINT("THE NuMbER Is NEGATIVE.")
ELsE:
PRINT("THE NuMbER Is zERO.")
* PYTHON:
NAME = "bOb" # ExAMPLE NAME
IF NAME == "ALICE":
PRINT("HELLO, ALICE!")
ELsE:
PRINT("YOu ARE NOT ALICE.")
kEY POINTs
* INDENTATION: IN PYTHON (AND MANY OTHER
LANGuAGEs), INDENTATION Is CRuCIAL. IT's
HOw THE CODE kNOws wHICH sTATEMENTs
bELONG TO THE IF bLOCk, THE ELsE bLOCk, ETC.
CONsIsTENT INDENTATION Is VITAL FOR
CORRECT ExECuTION.
* COMPARIsON OPERATORs: YOu'LL usE
COMPARIsON OPERATORs wITHIN THE
CONDITION:
* == (EquALs)
* != (NOT EquALs)
* > (GREATER THAN)
* < (LEss THAN)
* >= (GREATER THAN OR EquALs)
* <= (LEss THAN OR EquALs)
* LOGICAL OPERATORs (AND, OR, NOT): YOu
CAN COMbINE CONDITIONs usING LOGICAL
OPERATORs:
* AND: bOTH CONDITIONs MusT bE TRuE.
* OR: AT LEAsT ONE CONDITION MusT bE TRuE.
* NOT: REVERsEs THE TRuTH VALuE OF A
CONDITION.
* ELsIF (OR ELIF IN PYTHON): usE ELsIF (OR
ELIF) wHEN YOu NEED TO CHECk MuLTIPLE
CONDITIONs IN sEquENCE.
ExAMPLE wITH LOGICAL OPERATORs (PYTHON)
AGE = 20
HAs_LICENsE = TRuE
HOw IT wORks
* CAsE OF VARIAbLE: THE sTATEMENT sTARTs
bY sPECIFYING THE VARIAbLE wHOsE VALuE
YOu wANT TO CHECk AGAINsT DIFFERENT
CAsEs.
* CAsE VALuE1, CAsE VALuE2, ETC.: EACH
CAsE REPREsENTs A sPECIFIC VALuE THAT THE
VARIAbLE MIGHT HOLD. THE CODE wITHIN A
CAsE Is ExECuTED ONLY IF THE VARIAbLE's
VALuE MATCHEs THAT CAsE's VALuE.
* bREAk: THE bREAk sTATEMENT Is CRuCIAL.
IT ENsuREs THAT AFTER A MATCH Is FOuND
AND THE CORREsPONDING CODE Is ExECuTED,
THE PROGRAM ExITs THE CAsE bLOCk. wITHOuT
bREAk, ExECuTION MIGHT "FALL THROuGH" TO
THE NExT CAsE, wHICH Is usuALLY NOT wHAT
YOu wANT.
* OTHERwIsE: THE OTHERwIsE CLAusE Is
OPTIONAL. IT PROVIDEs A DEFAuLT bLOCk OF
CODE TO bE ExECuTED IF THE VARIAbLE's
VALuE DOEsN'T MATCH ANY OF THE sPECIFIED
CAsE VALuEs.
* ENDCAsE: MARks THE END OF THE CAsE
sTATEMENT.
ExAMPLEs
LET's ILLusTRATE wITH ExAMPLEs IN
PsEuDOCODE AND PYTHON:
ExAMPLE 1: DAY OF THE wEEk
* PsEuDOCODE:
CAsE OF DAY_NuMbER
CAsE 1:
OuTPuT "MONDAY"
bREAk
CAsE 2:
OuTPuT "TuEsDAY"
bREAk
CAsE 3:
OuTPuT "wEDNEsDAY"
bREAk
CAsE 4:
OuTPuT "THuRsDAY"
bREAk
CAsE 5:
OuTPuT "FRIDAY"
bREAk
CAsE 6:
OuTPuT "sATuRDAY"
bREAk
CAsE 7:
OuTPuT "suNDAY"
bREAk
OTHERwIsE:
OuTPuT "INVALID DAY NuMbER"
ENDCAsE
MATCH DAY_NuMbER:
CAsE 1:
PRINT("MONDAY")
CAsE 2:
PRINT("TuEsDAY")
CAsE 3:
PRINT("wEDNEsDAY")
CAsE 4:
PRINT("THuRsDAY")
CAsE 5:
PRINT("FRIDAY")
CAsE 6:
PRINT("sATuRDAY")
CAsE 7:
PRINT("suNDAY")
CAsE : # THE "" ACTs As THE DEFAuLT
(OTHERwIsE)
PRINT("INVALID DAY NuMbER")
* PYTHON:
LIGHT_COLOR = "bLuE"
MATCH LIGHT_COLOR:
CAsE "RED":
PRINT("sTOP")
CAsE "YELLOw":
PRINT("CAuTION")
CAsE "GREEN":
PRINT("GO")
CAsE _:
PRINT("INVALID LIGHT COLOR")
IMPORTANT NOTEs
* LANGuAGEs VARY: THE ExACT sYNTAx AND
FEATuREs OF CAsE OF OR swITCH sTATEMENTs
CAN VARY sLIGHTLY bETwEEN PROGRAMMING
LANGuAGEs. sOME LANGuAGEs MIGHT NOT
HAVE A CAsE OF CONsTRuCT DIRECTLY buT
PROVIDE sIMILAR FuNCTIONALITY usING swITCH
(C++, JAVA, JAVAsCRIPT) OR MATCH (PYTHON
3.10+).
* bREAk Is EssENTIAL: FOR MOsT LANGuAGEs,
THE bREAk sTATEMENT (OR ITs EquIVALENT)
Is VITAL TO PREVENT "FALLTHROuGH." wITHOuT
IT, ExECuTION MIGHT CONTINuE INTO THE NExT
CAsE, EVEN IF THE CONDITION DOEsN'T MATCH.
* PYTHON's MATCH: THE PYTHON ExAMPLE
usEs THE MATCH sTATEMENT (INTRODuCED IN
PYTHON 3.10), wHICH PROVIDEs PATTERN
MATCHING CAPAbILITIEs. THE _ ACTs As THE
DEFAuLT CAsE (sIMILAR TO OTHERwIsE).
THE CAsE OF OR swITCH/MATCH sTATEMENT
PROVIDEs A CLEAN AND EFFICIENT wAY TO
HANDLE sITuATIONs wHERE YOu HAVE
MuLTIPLE DIsCRETE VALuEs TO CHECk AGAINsT
A sINGLE VARIAbLE. IT GENERALLY IMPROVEs
CODE READAbILITY COMPARED TO NEsTED IF
sTATEMENTs wHEN DEALING wITH MANY
CONDITIONs.