ﺍﻟﺩﺭﺱ ﺍﻻﻭل: ﻤﻘﺩﻤﺔ Javaﺍﻟﺠﺎﻓﺎ ﻫﻰ ﺍﺤﺩﻯ ﻟﻐﺎﺕ ﺍﻟﺒﺭﻤﺠﺔ ﺍﻟﺘﻰ ﺍﺼﺒﺤﺕ ﺸﺎﺌﻌﺔ ﺍﻻﺴﺘﺨﺩﺍﻡ ﻓﻰ ﺍﻵﻭﻨﺔ ﺍﻻﺨﻴﺭﺓ ﻭﺫﻟﻙ ﻟﻤﻴﺯﺍﺘﻬﺎ ﺍ...
6 downloads
149 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
ﺍﻟﺩﺭﺱ ﺍﻻﻭل: ﻤﻘﺩﻤﺔ Javaﺍﻟﺠﺎﻓﺎ ﻫﻰ ﺍﺤﺩﻯ ﻟﻐﺎﺕ ﺍﻟﺒﺭﻤﺠﺔ ﺍﻟﺘﻰ ﺍﺼﺒﺤﺕ ﺸﺎﺌﻌﺔ ﺍﻻﺴﺘﺨﺩﺍﻡ ﻓﻰ ﺍﻵﻭﻨﺔ ﺍﻻﺨﻴﺭﺓ ﻭﺫﻟﻙ ﻟﻤﻴﺯﺍﺘﻬﺎ ﺍﻟﻌﺩﻴﺩﺓ ﻭﻫﻰ ﻤﻥ ﺘﻁﻭﻴﺭ ﺸﺭﻜﺔ ﺴﻥ ﻤﺎﻴﻜﺭﻭﺴﻴﺴﺘﻡ . Sun Microsystems ﻭﻟﻜﻥ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﻗﺒل ﺍﻥ ﻨﺒﺩﺃ ﻓﻰ ﺍﻟﺘﺤﺩﺙ ﻋﻥ ﺍﻟﺠﺎﻓﺎ ﺘﻌﺎﻟﻰ ﺍﻭﻻ ﻨﻘﻭﻡ ﺒﺘﻘﺴﻴﻡ ﻟﻐﺎﺕ ﺍﻟﺒﺭﻤﺠﺔ. ﺘﻨﻘﺴﻡ ﻟﻐﺎﺕ ﺍﻟﺒﺭﻤﺠﺔ ﺍﻟﻰ ﺜﻼﺙ ﻤﺴﺘﻭﻴﺎﺕ: ﺍﻻﻭل Simple Language : ﻭﻫﻰ ﺍﺒﺴﻁ ﻟﻐﺎﺕ ﺍﻟﺒﺭﻤﺠﺔ ﻭﻻﺘﺤﺘﺎﺝ ﺍﻟﻰ ﻤﺘﺭﺠﻡ ﺍﻟﺫﻯ ﺴﻴﻘﻭﻡ ﺒﺘﺤﻭﻴل ﺍﻟﺒﺭﻨﺎﻤﺞ ﺍﻟﻰ ﻤﺎ ﻴﺴﻤﻰ ﻟﻐﺔ ﺍﻻﻟﻪ ﻭﻫﻭ ﻤﺎ ﻴﻔﻬﻤﺔ ﺍﻟﻜﻤﺒﻴﻭﺘﺭ ﻭﻫﻰ ﺘﻜﻭﻥ ﻟﻐﺔ ﺒﺴﻴﻁﺔ ﻓﻰ ﺍﻭﺍﻤﺭﻫﺎ ﻓﻰ ﺘﻌﻠﻤﻬﺎ ﻭﻤﻥ ﺍﻤﺜﻠﺘﻬﺎ ).(HTML ﺍﻟﺜﺎﻨﻰ Base Programming Language : ﻭﻫﻰ ﺍﻟﻠﻐﺎﺕ ﺍﻟﺘﻰ ﺘﻌﺘﻤﺩ ﻓﻰ ﺍﻭﺍﻤﺭﻫﺎ ﻋﻠﻰ ﻟﻐﺎﺕ ﺍﺨﺭﻯ ﺍﺴﺎﺴﻴﺔ ﻭﻤﻥ ﺍﻤﺜﻠﺘﻬﺎ )ASP ﻭﻫﻰ ﺘﻌﺘﻤﺩ ﻋﻠﻰ ﻓﺠﻭل ﺒﻴﺴﻙ ﻭ ﻓﻰ ﺒﻰ ﺴﻜﺭﻴﺒﺕ ( ) JSPﻭﻫﻰ ﺘﻌﺘﻤﺩ ﻋﻠﻰ ﺍﻟﺠﺎﻓﺎ(. ﺍﻟﺜﺎﻟﺙ Full Programming Language : ﻭﻫﺫﻩ ﻫﻰ ﺍﻟﻠﻐﺎﺕ ﺍﻻﺴﺎﺴﻴﺔ ﻭﻤﻥ ﺍﻤﺜﻠﺘﻬﺎ ) (c++ ,VB,Javaﺴﻰ ++ﻭ ﻓﺠﻭل ﺒﻴﺴﻙ ﻭ ﺍﻟﺠﺎﻓﺎ. Programming Langue
Full Programming Langue
Base Programming Langue
Simple Langue
ﺍﺫﻥ ﺴﻨﻘﻭﻡ ﻫﻨﺎ ﺒﺸﺭﺡ ﻟﻐﻪ ﺍﺴﺎﺴﻴﺔ ﻭﻫﻰ ﻤﻥ ﺍﻫﻡ ﻟﻐﺎﺕ ﺍﻟﺒﺭﻤﺠﺔ .
ﺍﻟﺩﺭﺱ ﺍﻟﺜﺎﻨﻰ : ﺍﻫﻡ ﻤﺯﺍﻴﺎ ﺍﻟﺠﺎﻓﺎ ﻟﻜﻥ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﺘﻌﺎﻟﻰ ﻨﺘﻌﺭﻑ ﻟﻤﺎﺫﺍ ﺍﻟﺠﺎﻓﺎ ﻤﻥ ﺍﻫﻡ ﻟﻐﺎﺕ ﺍﻟﺒﺭﻤﺠﺔ ﻭﻤﺎ ﺍﻟﺫﻯ ﻤﻴﺯﻫﺎ ﻋﻥ ﻏﻴﺭﻫﺎ ﻤﻥ ﺍﻟﻠﻐﺎﺕ؟ ﺍﻭﻻ :ﺘﻨﺘﻤﻰ ﺍﻟﻰ ﻟﻐﺎﺕ ﺍﻭﺒﺠﻜﺕ ﺍﻭﺭﻴﻨﺘﻴﺩ )(Object Oriented Programming ﻭﻫﻭ ﻋﺒﺎﺭﺓ ﻋﻥ ﺍﺭﺘﺒﺎﻁ ﺒﻴﻥ ﺍﻟﻁﺭﻕ ﻭﺍﻟﺨﺼﺎﺌﺹ ﻟﻜﺎﺌﻥ ﻭﺘﻘﻭﻡ ﺍﻟﻭﻅﺎﺌﻑ ﺒﺎﺩﺍﺀ ﻭﻅﻴﻔﺔ ﻤﻌﻴﻨﺔ ﻭﻴﺘﻡ ﻓﻴﻬﺎ ﺘﻘﺴﻴﻡ ﺍﻟﻤﺸﺎﻜل ﺍﻟﻜﺒﻴﺭﺓ ﺍﻟﻰ ﻋﺩﺓ ﻤﺸﺎﻜل ﺼﻐﻴﺭﺓ ﻭﺤل ﺍﻯ ﻤﺸﻜﻠﻪ ﻴﻨﻘﺴﻡ ﺍﻟﻰ ﺜﻼﺙ ﻤﺭﺍﺤل ﺍ -ﺘﺤﻠﻴل ﺍﻟﻤﺸﻜﻠﺔ ﻭﺘﺤﺩﻴﺩ ﻁﺭﻴﻘﺔ ﺤل ﻫﺫﻩ ﺍﻟﻤﺸﻜﻠﺔ ﻭﻤﺎﺫﺍ ﺘﺤﺘﺎﺝ ﻟﺤﻠﻬﺎ.
-2ﺘﺼﻤﻴﻡ ﻋﻤﻠﻴﺔ ﺍﻟﺘﺤﻠﻴل ﺍﻟﺴﺎﺒﻘﺔ ﺒﺼﻭﺭﺓ ﺘﺴﺘﻁﻴﻊ ﻤﻌﻬﺎ ﻓﻬﻡ ﺍﻟﻤﺸﻜﻠﺔ ﻭﻁﺭﻴﻘﺔ ﺤﻠﻬﺎ ﻓﻰ ﺨﻁﻭﺍﺕ ﻤﺘﺴﻠﺴﻠﺔ ﻭﻭﺍﻀﺤﺔ . -3ﺍﺨﻴﺭﺍ ﻜﺘﺎﺒﺔ ﻜﻭﺩ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺒﺎﻟﻠﻐﺔ ﺍﻟﺘﻰ ﺍﺨﺘﺭﺘﻬﺎ . ﺜﺎﻨﻴﺎ :ﻴﻤﻜﻥ ﺒﺎﺴﺘﺨﺩﺍﻡ ﺍﻟﺠﺎﻓﺎ ﺘﻨﻔﻴﺫ ﻋﻤﻠﻴﺎﺕ ﻤﺨﺘﻠﻔﺔ ﻓﻰ ﻨﻔﺱ ﺍﻟﻭﻗﺕ ﺫﺍﺘﻪ ﻤﻥ ﺍﻟﻁﺒﻴﻌﻰ ﺍﻥ ﻴﺘﻡ ﺘﻨﻔﻴﺫ ﺨﻁﻭﺍﺕ ﺍﻯ ﺒﺭﻨﺎﻤﺞ ﺒﻁﺭﻴﻘﺔ ﻤﺘﺴﻠﺴﻠﺔ ﺍﻯ ﺒﻌﺩ ﺘﻨﻔﻴﺫ ﺨﻁﻭﺓ ﻴﻨﺘﻘل ﺍﻟﻰ ﺘﻨﻔﻴﺫ ﺍﻟﺨﻁﻭﺓ ﺍﻟﺘﺎﻟﻴﺔ ﻟﻜﻥ ﻓﻰ ﺍﻟﺠﺎﻓﺎ ﻴﻤﻜﻥ ﺘﻨﻔﻴﺫ ﺨﻁﻭﺍﺕ ﻤﺨﺘﻠﻔﺔ ﻓﻰ ﻨﻔﺱ ﺍﻟﻭﻗﺕ . ﺜﺎﻟﺜﺎ :ﺍﺩﺍﺭﺓ ﺍﻟﻌﻤﻠﻴﺎﺕ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﺘﻠﻘﺎﺌﻴﺎ ﻓﻰ ﺍﻟﻠﻐﺎﺕ ﺍﻻﺨﺭﻯ ﻤﺜل ﺴﻰ ++ﻤﺜﻼ ﻴﺘﻡ ﺍﻟﺘﻌﺎﻤل ﻤﻊ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻭﺍﻟﻜﺎﺌﻥ ﻴﺩﻭﻴﺎ ﺍﻯ ﻤﻥ ﺨﻼل ﺍﻟﺒﺭﻨﺎﻤﺞ ﻭ ﺍﻟﻤﺒﺭﻤﺞ ﻟﻜﻥ ﻓﻰ ﺍﻟﺠﺎﻑ ﺍﻟﺘﻌﺎﻤل ﻤﻊ ﺍﻟﺫﺍﻜﺭﺓ ﻴﺘﻡ ﺘﻠﻘﺎﺌﻴﺎ ﺩﻭﻥ ﺘﺩﺨل ﻤﻥ ﺍﻟﻤﺒﺭﻤﺞ ﻭﺒﺫﻟﻙ ﺘﻜﻭﻥ ﺍﻜﺜﺭ ﺍﻤﺎﻨﺎ ﻤﻥ ﺍﻟﻠﻐﺎﺕ ﺍﻻﺨﺭﻯ ﺭﺍﺒﻌﺎ :ﺍﻻﻤﺎﻥ ﺍﻟﺘﺎﻡ ﻋﻨﺩﻤﺎ ﺘﻘﻭﻡ ﺒﺘﺤﻤﻴل ﺍﻯ ﺒﺭﻨﺎﻤﺞ ﻤﻥ ﻋﻠﻰ ﺸﺒﻜﺔ ﻓﺎﻨﻪ ﻴﻤﻜﻥ ﻻﺤﺩ ﺍﻟﻘﺭﺍﺼﻨﺔ ﺍﻥ ﻴﻘﻭﻡ ﺒﺎﻟﺘﺤﻜﻡ ﻓﻰ ﺠﻬﺎﺯﻙ ﻤﻥ ﺨﻼل ﻜﻭﺩ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺍﻟﺫﻯ ﺘﻘﻭﻡ ﺒﺘﺤﻤﻴﻠﺔ ﻻﻨﻪ ﻴﻤﻜﻨﺔ ﺍﻟﺘﺤﻜﻡ ﻓﻰ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻭﺍﻟﻜﺎﺌﻥ ﺍﻟﻤﻭﺠﻭﺩﻴﻥ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﻭﻟﻜﻥ ﻓﻰ ﺍﻟﺠﺎﻓﺎ ﻫﺫﺍ ﻤﺴﺘﺤﻴل ﺍﻥ ﻴﺤﺩﺙ ﻜﻤﺎ ﺫﺍﻜﺭﻨﺎ ﻓﻰﺍﻟﻤﻴﺯﺓ ﺍﻟﺴﺎﺒﻘﺔ ﺍﻴﻀﺎ ﻓﻰ ﺤﺎﻟﺔ ﻭﺠﻭﺩ ﻓﻴﺭﻭﺱ ﻓﻰ ﺠﻬﺎﺯﻙ ﻓﻨﻪ ﺍﺜﻨﺎﺀ ﺘﺸﻐﻴل ﺍﻯ ﺒﺭﻨﺎﻤﺞ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﻴﺘﻡ ﺍﻨﺘﻘﺎل ﺍﻟﻔﻴﺭﻭﺱ ﺍﻟﻴﻪ ﻭﻜﻥ ﻓﻰ ﺍﻟﺠﺎﻓﺎ ﻟﻥ ﻴﻨﺘﻘل ﺍﻟﻴﻪ ﻻﻨﻪ ﻻﻴﺴﺘﻁﻴﻊ ﺍﻟﺘﺤﻜﻡ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﻓﻰﻫﺫﻩ ﺍﻟﺤﺎﻟﻪ ﺍﻴﻀﺎ ﻻﻥ ﺍﻟﻤﻠﻑ ﺍﻟﺫﻯ ﻴﺘﻡ ﺘﺤﻤﻴﻠﻪ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﻤﻥ ﺍﻟﻨﻭﻉ classﻭﻜﻤﺎ ﺴﻨﻌﺭﻑ ﻓﻰ ﺍﻟﻤﻴﺯﻩ ﺍﻟﺘﺎﻟﻴﺔ ﻫﺫﺍ ﺍﻟﻤﻠﻑ ﻻﻴﻤﻜﻥ ﺍﻟﺘﻐﻴﺭ ﻓﻴﻪ. ﺨﺎﻤﺴﺎ :ﻻﺘﻌﺘﻤﺩ ﻋﻠﻰ ﻨﻅﺎﻡ ﺍﻟﺘﺸﻐﻴل ﺘﻌﺎﻟﻰ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﻨﺎﺨﺫ ﺍﻭﻻ ﻤﺜﺎل ﻋﻠﻰ ﻟﻐﻪ ﺍﺨﺭﻯ ﻤﺜل ﺴﻰ ++ﺒﻌﺩ ﻜﺘﺎﺒﺔ ﺍﻟﺒﺭﻨﺎﻤﺞ )ﻜﻭﺩ( ﻴﺘﻡ ﺍﺴﺘﺨﺩﺍﻡ ﻤﺎ ﻴﺴﻤﻰ ﺍﻟﻤﺘﺭﺠﻡ ) (compilerﻟﺘﺤﻭﻴل ﺍﻟﺒﺭﻨﺎﻤﺞ ﺍﻟﻰ ﻟﻐﺔ ﺍﻻﻟﺔ ) machine (codeﻭﻫﺫﺍ ﺍﻟﻤﻠﻑ ﺍﻟﺠﺩﻴﺩ ﺍﻟﻨﺎﺘﺞ ﻋﻥ ﺍﻟﺘﺭﺠﻤﺔ ﻻﻴﻌﻤل ﺍﻟﻰ ﻋﻠﻰ ﻨﻅﺎﻡ ﺍﻟﺘﺸﻐﻴل ﺍﻟﺫﻯ ﺘﺭﺠﻡ ﻓﻴﻪ ﺒﻤﻌﻨﻰ ﺍﺫﺍ ﺘﻡ ﻋﻤل ﺍﻟﺘﺭﺠﻤﺔ ﻟﺒﺭﻨﺎﻤﺞ ﻜﺘﺏ ﺒﻠﻐﺔ ﺴﻰ ++ﺘﺤﺕ ﻨﻅﺎﻡ ﺘﺸﻐﻴل ﻭﻴﻨﺩﻭﺯ ﻓﺎﻥ ﺍﻟﻤﻠﻑ ﺍﻟﻨﺎﺘﺞ ﺍﻟﺫﻯ ﺒﻠﻐﺔ ﺍﻻﻟﻪ ﻻﻴﻌﻤل ﺍﻻ ﺘﺤﺕ ﺍﻟﻭﻴﻨﺩﻭﺯ ﻭﺍﺫﺍ ﺍﺭﺩﻨﺎ ﺘﺸﻐﻴﻠﻪ ﺘﺤﺕ ﻨﻅﺎﻡ ﺘﺸﻐﻴل ﻴﻭﻨﻜﺱ ﻴﻠﺯﻡ ﺍﻋﺎﺩﺓ ﺍﻟﺘﺭﺠﻤﺔ ﺘﺤﺕ ﻫﺫﺍ ﺍﻟﻨﻅﺎﻡ Machine code
C++ Compiler
ﺍﻤﺎ ﻓﻰ ﺍﻟﺠﺎﻓﺎ ﻓﻴﺘﺤﻭل ﺍﻟﺒﺭﻨﺎﻤﺞ )ﻜﻭﺩ( ﺍﻟﻰ ﻤﻠﻑ ﻻﻴﻤﻜﻥ ﻗﺭﺍﺀﺘﻪ ﻴﺴﻤﻰ ﻤﻠﻑ classﺜﻡ ﻴﺘﺤﻭل ﻫﺫﺍ ﺍﻟﻤﻠﻑ ﺍﻟﻰ ﻤﻠﻑ ﺒﻠﻐﺔ ﺍﻻﻟﻪ ﻭﺍﻟﻤﻠﻑ classﻫﺫﺍ ﻴﻤﻜﻥ ﺘﺸﻐﻴﻠﻪ ﺘﺤﺕ ﺍﻯ ﻨﻅﺎﻡ ﺘﺸﻐﻴل ﺩﻭﻥ ﻋﻤل ﺘﺭﺠﻤﺔ ﻟﻠﺒﺭﻨﺎﻤﺞ ﻤﺭﻩ ﺍﺨﺭﻯ Machine file
Java file JDK Class file JVM
JDKﻫﻭ ﺍﻟﻤﺘﺭﺠﻡ ﺍﻟﺫﻯ ﻴﺴﺘﺨﺩﻡ ﻟﺘﺤﻭﻴل ﺍﻟﺒﺭﻨﺎﻤﺞ ﺍﻟﻤﻜﺘﻭﺏ ﺒﻠﻐﺔ ﺍﻟﺠﺎﻓﺎ ﺍﻟﻰ ﻤﻠﻑ ﺍﻤﺘﺩﺍﺩﻩ class
ﻭﻫﺫﺍ ﺍﻟﻤﻠﻑ ﻫﻭ ﺍﻟﺫﻯ ﻴﻤﻜﻥ ﺘﺸﻐﻴﻠﻪ ﻋﻠﻰ ﺍﻯ ﻨﻅﺎﻡ ﺘﺸﻐﻴل JVMﻫﻭ ﺍﻟﻤﺘﺭﺠﻡ ﺍﻟﺫﻯ ﻴﺤﻭل ﻤﻠﻑ classﺍﻟﻰ ﻤﻠﻑ ﺒﻠﻐﺔ ﺍﻻﻟﻪ ﺴﺎﺩﺴﺎ :ﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻡ ﺍﻟﺠﺎﻓﺎ ﻓﻰ ﺍﻻﻨﺘﺭﻨﺕ ﻴﻤﻜﻥ ﻋﻤل ﺍﻟﺘﻁﺒﻴﻕ ﺍﻭ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻋﻠﻰ ﺍﻻﻨﺘﺭﻨﺕ ﻭﻓﻰ ﻫﺫﻩ ﺍﻟﺤﺎﻟﻪ ﻴﺴﻤﻰ ﺠﺎﻓﺎ ﺍﺒﻠﻴﺕ (java )applet
ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﺍﺫﺍ ﻭﺠﺩﺕ ﻫﺫﻩ ﺍﻟﻤﻴﺯﺍﺕ ﻤﺠﺘﻤﻌﻪ ﻓﻰ ﻟﻐﺔ ﺒﺭﻤﺠﺔ ﻓﺎﻋﻠﻡ ﺍﻨﻬﺎ ﺍﻟﺠﺎﻓﺎ
ﺍﻟﺩﺭﺱ ﺍﻟﺜﺎﻟﺙ: ﺍﻋﺩﺍﺩ ﺍﻟﻜﻤﺒﻴﻭﺘﺭ ﻟﺘﺸﻐﻴل ﺍﻟﺠﺎﻓﺎ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﺘﺤﺘﺎﺝ ﺍﻟﻰ ﺘﺤﻤﻴل ﻤﺎﻴﺴﻤﻰ ) (Java 2 Platformﻭﻴﻤﻜﻨﻙ ﺘﺤﻤﻴﻠﻪ ﻤﺠﺎﻨﺎ ﻤﻥ java.sun.comﻗﻡ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﺒﺘﺤﻤﻴل ﺍﺤﺩﻯ ﺍﻻﺼﺩﺍﺭﺍﺕ ﺍﻟﺘﻰ ﺘﺘﻨﺎﺴﺏ ﻤﻊ ﻨﻅﺎﻡ ﺍﻟﺘﺸﻐﻴل ﺍﻟﺫﻯ ﺘﺴﺘﺨﺩﻤﺔ ﻭﺴﻨﻘﻭﻡ ﻫﻨﺎ ﺒﺸﺭﺡ ﻋﻤل ﺍﻋﺩﺍﺩ Java 2 Platform, Standard Edition 1.3ﺒﻌﺩ ﺘﺤﻤﻴﻠﻪ ﻤﻥ ﺍﻟﻤﻭﻗﻊ ﺍﻟﺫﻯ ﺫﻜﺭﻨﺎﻩ ﻜﻤﺜﺎل ﺴﻴﻜﻭﻥ ﻤﺜﺎﻟﻨﺎ ﺨﻼل ﻨﻅﺎﻡ ﺍﻟﺘﺸﻐﻴل ﻭﻴﻨﺩﻭﺯ -1ﺒﻌﺩ ﺘﺤﻤﻴل ﺍﻟﻤﻠﻑ ﻤﻥ ﺍﻟﻤﻭﻗﻊ ﺴﺘﻅﻬﺭ ﻫﺫﻩ ﺍﻻﻴﻘﻭﻨﺔ ﺍﻀﻐﻁ ﻤﺭﺘﻴﻥ ﻋﻠﻴﻬﺎ )(Double Click -2ﺴﺘﻅﻬﺭ ﻫﺫﻩ ﺍﻟﻨﺎﻓﺫﺓ
ﺍﻨﺘﻅﺭ ﻗﻠﻴﻼ ﺒﻌﺩ ﻅﻬﻭﺭﻫﺎ -3ﺴﺘﻅﻬﺭ ﺍﻟﻨﺎﻓﺫﻩ ﺍﻟﺘﺎﻟﻴﻪ ﺍﻨﺘﻅﺭ ﺍﻴﻀﺎ ﺒﻌﺩﻫﺎ ﻗﻠﻴﻼ
-4ﺴﺘﻅﻬﺭ ﻫﺫﻩ ﺍﻟﻨﺎﻓﺫﺓ ﺍﻀﻐﻁ ﻋﻠﻰ Nextﻓﻴﻬﺎ
-5ﺘﻅﻬﺭ ﺍﻟﻨﺎﻓﺫﻩ ﺍﻟﺘﺎﻟﻴﺔ ﻭﻫﻰ ﻋﺒﺎﺭﺓ ﻋﻥ ﺍﺘﻔﺎﻗﻴﺔ ﺒﻴﻨﻙ ﻭﺒﻴﻥ ﺸﺭﻜﺔ ﺴﻥ ﻤﻴﻜﺭﻭﺴﻴﺴﺘﻴﻡ ﺍﻀﻐﻁ Yesﻟﻜﻰ ﺘﺴﺘﻁﻴﻊ ﺍﻻﺴﺘﻤﺭﺍﺭ
-6ﺘﻅﻬﺭ ﻨﺎﻓﺫﺓ ﺘﺨﺒﺭﻙ ﺒﺎﺴﻡ ﺍﻟﻤﺠﻠﺩ ﺍﻟﺫﻯ ﺴﻴﺘﻡ ﺘﺠﻤﻴل ﺍﻟﻤﻠﻔﺎﺕ ﺒﻪ ﻭﻤﻜﺎﻥ ﻫﺫﺍ ﺍﻟﻤﺠﻠﺩ ﻓﺎﺫﺍ ﺍﺭﺩﺕ ﺘﻐﻴﺭ ﺍﺴﻡ ﺍﻟﻤﺠﻠﺩ ﺍﻭ ﻤﻜﺎﻨﻪ ﺍﻀﻐﻁ Browseﻭﻟﻜﻥ ﻴﻔﻀل ﺍﻥ ﺘﺩﻋﻪ ﻜﻤﺎ ﻫﻭ ﻭﺍﻀﻐﻁ Next
-7ﺘﻅﻬﺭ ﻨﺎﻓﺫﻩ ﺘﺨﺒﺭﻙ ﺒﺎﻟﻤﻠﻔﺎﺕ ﻭﺍﻟﻤﺠﻤﻭﻋﺎﺕ ﺍﻟﺘﻰ ﺴﻴﺘﻡ ﺍﻨﺯﺍﻟﻬﺎ ﻋﻠﻰ ﺍﻟﺠﻬﺎﺯ ﺍﻀﻐﻁ Next
ﻟﻼﺴﺘﻤﺭﺍﺭ
-8ﺴﺘﻅﻬﺭ ﺍﻟﻨﺎﻓﺫﻩ ﺍﻟﺘﺎﻟﻴﺔ ﺍﻟﺘﻰ ﺘﻭﻀﺢ ﻋﻤﻠﻴﺔ ﺍﻨﺯﺍل ﺍﻟﻤﻠﻔﺎﺕ ﺍﻨﺘﻅﺭ ﺤﺘﻰ ﺘﺼل ﺍﻟﻌﻤﻠﻴﺔ ﺍﻟﻰ %100
-9ﺘﻅﻬﺭ ﻨﺎﻓﺫﻩ ﺘﺨﺒﺭﻙ ﺍﻥ ﺘﻨﺘﻅﺭ ﻗﻠﻴﻼ ﺤﺘﻰ ﻴﺘﻡ ﺍﻻﻨﺘﻬﺎﺀ ﻤﻥ ﻋﻤﻠﻴﺔ ﺍﻻﻋﺩﺍﺩ
-10ﺍﺨﻴﺭﺍ ﺍﻀﻐﻁ Finishﻻﻨﻬﺎﺀ ﻋﻤﻠﻴﺔ ﺍﻻﻋﺩﺍﺩ
ﺍﻻﻥ ﺍﻫﻨﺌﻙ ﺒﺎﻨﻬﺎﺀ ﺍﻟﺨﻁﻭﺓ ﺍﻻﻭﻟﻰ ﻨﺤﻭ ﺍﺤﺘﺭﺍﻑ ﺍﻟﺠﺎﻓﺎ ﺒﻨﺠﺎﺡ
ﺍﻟﺩﺭﺱ ﺍﻟﺭﺍﺒﻊ: ﺍﻟﺒﺭﻨﺎﻤﺞ ﻻﺸﻙ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﺍﻥ ﺍﻯ ﺒﺭﻨﺎﻤﺞ ﻴﻤﺭ ﺒﻌﺩﺩ ﻤﻥ ﺍﻟﻤﺭﺍﺤل ﻤﻨﺫ ﺍﻥ ﻜﺎﻥ ﻓﻜﺭﺓ ﺍﻭ ﻤﺸﻜﻠﺔ ﻟﺩﻯ ﺍﺤﺩ ﻤﺴﺘﺨﺩﻤﻰﺍﻟﻜﻤﺒﻴﻭﺘﺭ ﺍﻟﻰ ﺍﻥ ﻴﻜﺘﺏ ﺜﻡ ﻴﻭﻀﻊ ﻤﺤل ﺍﻟﺘﻨﻔﻴﺫ ﻭﻴﺴﻤﻰ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻓﻰ ﻫﺫﻩ ﺍﻟﺤﺎﻟﺔ ﺘﻁﺒﻴﻕ ) (applicationﻭﺍﻟﺘﻁﺒﻴﻕ ﻫﻭ ﻋﺒﺎﺭﺓ ﻋﻥ ﺒﺭﻨﺎﻤﺞ ﻜﺘﺏ ﻟﺤل ﻤﺸﻜﻠﺔ ﻤﺤﺩﺩﺓ. ﻭﻟﻜﺘﺎﺒﺔ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺒﻠﻐﺔ ﺍﻟﺠﺎﻓﺎ ﻴﻜﺘﺏ ﺩﺍﺨل ﺍﻯ ﻤﺤﺭﺭ ﻨﺼﻭﺹ ﻤﺜل ﺍﻟﻤﻔﻜﺭﺓ ﻤﺜﻼ )(notepad ﻭﻴﺤﻔﻅ ﺍﻟﻤﻠﻑ ﺒﺎﻤﺘﺩﺍﺩ .javaﻭﻴﺴﻤﻰ ﻫﺫﺍ ﺍﻟﻤﻠﻑ ﺒﻤﻠﻑ ﺍﻟﻤﺼﺩﺭ ). (source file ﻭﻴﻤﻜﻥ ﺒﺩل ﻜﺘﺎﺒﺔ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺩﺍﺨل ﻤﻌﺎﻟﺞ ﻨﺼﻭﺹ ﺍﻥ ﻴﻜﺘﺏ ﺒﺎﺴﺘﺨﺩﺍﻡ ﻤﺤﺭﺭ ﺨﺎﺹ ﺒﻠﻐﺔ ﺍﻟﺠﺎﻓﺎ ﻭﻴﺴﻤﻰ ) (editorﻭﻫﻭ ﻋﺒﺎﺭﺓ ﻋﻥ ﺍﺩﺍﺓ ﻤﺴﺎﻋﺩﺓ ﺘﻴﺴﺭ ﻟﻠﻤﺒﺭﻤﺞ ﻜﺘﺎﺒﺔ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻭﺘﺨﺯﻴﻥ ﻤﺎ ﻜﺘﺏ ﻓﻰ ﻤﻠﻑ ﻭﺘﺴﻬﻴل ﺍﺴﺘﺭﺠﺎﻋﺔ ﻭﺘﻌﺩﻴﻠﻪ ﻭﻨﺴﺨﺔ ﺍﻴﻀﺎ ﻭﻴﻭﺠﺩ ﺒﻌﺽ ﺍﻟﻤﺤﺭﺭﺍﺕ ﻴﻤﻜﻥ ﺍﻥ ﺘﻘﻭﻡ ﺒﻌﻤﻠﻴﺔ ﺍﻟﺘﺭﺠﻤﺔ ﺍﻴﻀﺎ ﻭﻴﻤﻜﻨﻙ ﻋﺯﻴﺯﺉ ﺍﻟﻘﺎﺭﺉ ﺍﺜﻨﺎﺀ ﺘﻌﻠﻤﻙ ﻤﻌﻨﺎ ﻜﺘﺎﺒﺔ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺩﺍﺨل ﺍﻟﻤﻔﻜﺭﺓ ﺍﻭ ﺍﻻﺴﺘﻌﺎﻨﻪ ﺒﺎﺤﺩ ﻤﺤﺭﺭﺍﺕ ﺍﻟﺠﺎﻓﺎ . ﻭﺍﻟﺨﻁﻭﺓ ﺍﻟﺘﺎﻟﻴﺔ ﻟﻜﺘﺎﺒﺔ ﺍﻟﺒﺭﻨﺎﻤﺞ )ﻤﻠﻑ ﺍﻟﻤﺼﺩﺭ( ﻫﻰ ﻋﻤﻠﻴﺔ ﺍﻟﺘﺭﺠﻤﺔ ﺍﻟﺘﻰ ﻴﺘﻡ ﺘﺤﻭﻴل ﻤﻠﻑ ﺍﻟﻤﺼﺩﺭ ﻓﻴﻬﺎ ﺍﻟﻰ ﻤﻠﻑ ﺒﺎﻤﺘﺩﺍﺩ .classﻜﻤﺎ ﺸﺭﺤﻨﺎ ﻓﻰ ﺍﻟﺩﺭﺱ ﺍﻟﺴﺎﺒﻕ. ﻭﻟﻐﺔ ﺍﻟﺠﺎﻓﺎ ﺘﺘﻜﻭﻥ ﻤﻥ ﻤﺠﻤﻭﻋﺔ ﻤﻥ ﺍﻟﺤﺯﻡ ) (Packagesﻭﻫﺫﻩ ﺍﻟﺤﺯﻡ ﺘﺘﻜﻭﻥ ﻤﻥ ﻤﺠﻤﻭﻋﺔ ﻤﻥ ﺍﻟﻜﺎﺌﻥ ) (Opjectsﻫﺫﺍ ﺍﻟﻜﺎﺌﻥ ﻴﺘﻜﻭﻥ ﻤﻥ ﻤﺠﻤﻭﻋﺔ ﻤﻥ ﺍﻟﺩﻭﺍل ) (Methodsﻭﻫﺫﻩ ﺍﻟﺩﻭﺍل ﻫﻰ ﺍﻭﺍﻤﺭ ﺍﻟﺠﺎﻓﺎ ﺍﻟﺘﻰ ﺘﺴﺘﺨﺩﻡ ﻓﻰ ﻜﺘﺎﺒﺔ ﺍﻟﺒﺭﻨﺎﻤﺞ . ﺍﻯ ﺍﻥ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺒﻠﻐﺔ ﺍﻟﺠﺎﻓﺎ ﻋﺒﺎﺭﺓ ﻋﻥ ﺩﺍﻟﺔ ﺭﺌﻴﺴﻴﺔ ﺘﻨﺎﺩﻯ ﻤﺠﻤﻭﻋﺔ ﻤﻥ ﺍﻟﺩﻭﺍل ﺍﻻﺨﺭﻯ ﻭﻜل ﺩﺍﻟﻪ ﻫﻰ ﻤﺠﻤﻭﻋﺔ ﻤﻥ ﺍﻻﻭﺍﻤﺭ. ﺍﻟﺩﺭﺱ ﺍﻟﺨﺎﻤﺱ: ﺍﻟﺩﺍﻟﺔ ﺍﻟﺭﺌﻴﺴﻴﺔ ﻭﻫﻨﺎﻙ ﺩﺍﻟﺔ ﺭﺌﻴﺴﻴﺔ ﻫﻰ ﺍﻟﺩﺍﻟﺔ )( mainﻭﻫﻰ ﺍﻟﺩﺍﻟﺔ ﺍﻟﺘﻨﻔﻴﺫﻴﺔ ﻓﻰ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻭﻻ ﻴﻤﻜﻥ ﺘﺸﻐﻴل ﺍﻯ ﺒﺭﻨﺎﻤﺞ ﺩﻭﻥ ﻭﺠﻭﺩ ﺍﻟﺩﺍﻟﺔ ﺍﻟﺭﺌﻴﺴﻴﺔ ﻓﻴﻪ ﺍﺫﻥ ﻓﺎﻯ ﺒﺭﻨﺎﻤﺞ ﻴﺘﻜﻭﻥ ﻤﻥ ﺩﺍﻟﺔ ﻭﺍﺤﺩﺓ ﻋﻠﻰ ﺍﻻﻗل ﻫﻰ )( mainﻭﻴﻤﻜﻥ ﺍﻥ ﻴﻜﻭﻥ ﻫﻨﺎﻙ ﺩﻭﺍل ﺍﺨﺭﻯ ﺘﻌﺭﻑ ﻗﺒل ﺍﻭ ﺒﻌﺩ )( mainﻭﻫﺫﻩ ﺍﻟﺩﻭﺍل ﻟﺘﻨﻔﻴﺫﻫﺎ ﻴﺘﻡ ﺍﺴﺘﺩﻋﺎﺌﻬﺎ ﺩﺍﺨل ﺍﻟﺩﺍﻟﺔ )( mainﻜﻤﺎ ﺴﻨﺭﻯ ﻓﻴﻤﺎ ﺒﻌﺩ . ﺘﺘﻜﻭﻥ ﺍﻟﺩﺍﻟﺔ ﻋﺎﻤﺔ ﺒﻤﺎ ﻓﻰ ﺫﻟﻙ ﺍﻟﺩﺍﻟﺔ ﺍﻟﺭﺌﻴﺴﻴﺔ )(main -1ﺍﻻﻋﻼﻡ ﻋﻥ ﺍﻟﺩﺍﻟﺔ ﻭﻫﻭ ﺒﻤﺜﺎﺒﺔ ﻋﻨﻭﺍﻥ ﺍﻟﺩﺍﻟﺔ ﻭﻴﺤﺘﻭﻯ ﻋﻠﻰ ﺍﺴﻡ ﺍﻟﺩﺍﻟﺔ ﻭﻗﺎﺌﻤﺔ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﺍﻟﺘﻰ ﺴﺘﺩﺨل ﺍﻟﻰ ﺍﻟﺩﺍﻟﺔ ﺍﻭ ﺴﺘﺨﺭﺝ ﻤﻨﻬﺎ . -2ﺘﻌﺭﻴﻑ ﺍﻟﺩﺍﻟﺔ ﻭﻫﻭ ﻴﺸﻤل ﺍﺴﺎﺴﺎ ﺠﺴﻡ ﺍﻟﺩﺍﻟﺔ ﻭﻴﻭﻀﻊ ﺒﻴﻥ ﻗﻭﺴﻲ ﻓﺌﺔ } { ﻭﻴﺤﻭﻯ ﻫﺫﺍ ﺍﻟﺠﺴﻡ ﺍﻟﻌﺒﺎﺭﺍﺕ ﺍﻟﺘﻰ ﺘﺸﻤل ﺍﻻﻭﺍﻤﺭ ﻭﺴﻨﻔﺼﻠﻬﺎ ﻓﻴﻤﺎ ﺒﻌﺩ . ﻭﻴﻜﻭﻥ ﺸﻜل ﺍﻟﺩﺍﻟﺔ ﺍﻟﺭﺌﻴﺴﻴﺔ ﻫﻜﺫﺍ )public static void main(String []arg {
ﺍﻟﻌﺒﺎﺭﺍﺕ
}
ﻭﺴﻨﻌﺭﻑ ﻓﻴﻤﺎ ﺒﻌﺩ ﻤﺎﻫﻰ ﺍﻟﻜﻠﻤﺎﺕ ﻗﺒل .main
ﺍﻟﺩﺭﺱ ﺍﻟﺴﺎﺩﺱ: ﺤﺭﻭﻑ ﺍﻟﺠﺎﻓﺎ ﺘﺘﺎﻟﻑ ﺤﺭﻭﻑ ﺍﻟﺠﺎﻑ ﻤﻤﺎ ﻴﻠﻰ : -1ﺍﻟﺤﺭﻭﻑ ﺍﻻﺒﺠﺩﻴﺔ ) (lettersﻭﻫﻰ ﺍﻟﺤﺭﻭﻑ ﺍﻟﻜﺒﻴﺭﺓ ) (Capital lettersﻤﻥ Aﺍﻟﻰ Zﻭﻜﺫﻟﻙ ﺍﻟﺤﺭﻭﻑ ﺍﻟﺼﻐﻴﺭﺓ ) (Small lettersﻤﻥ aﺍﻟﻰ z -2ﺍﻻﺭﻗﺎﻡ ﺍﻟﻌﺩﺩﻴﺔ ) (Digitsﻭﻫﻰ ﺍﻻﺭﻗﺎﻡ ﻤﻥ 0ﺍﻟﻰ 9 -3ﺍﻟﺤﺭﻭﻑ ﺍﻟﺨﺎﺼﺔ ) (Special Charactersﻭﻫﻰ ﺘﻠﻙ ﺍﻟﺤﺭﻭﻑ ﺍﻟﺘﻰ ﻟﻴﺴﺕ ﺒﺎﻋﺩﺍﺩ ﺍﻭ ﺒﺤﺭﻭﻑ ﺍﺒﺠﺩﻴﺔ ﻭﻟﻜﻥ ﺘﻜﻭﻥ ﻋﻼﻤﺎﺕ ﺭﻤﺯﻴﺔ ﻭﻤﻨﻬﺎ ﺍﻟﻤﻌﻨﻰ ﺍﻟﻌﻼﻤﺔﺍﻟﺭﻤﺯﻴﺔ ﺍﻟﺠﻤﻊ + ﺍﻟﻁﺭﺡ ﺍﻟﻘﺴﻤﺔ / ﺍﻟﻀﺭﺏ * ﺍﺸﺎﺭﺓ ﺍﻟﻤﺴﺎﻭﺍﻩ = ﻋﻼﻤﺔ ﺍﻟﻨﺴﺒﺔ % ﻋﻼﻤﺔ ﺍﻟﺘﻌﺠﺏ ! ﺸﺭﻁﺔ ﻤﺎﺌﻠﺔ ﻟﻠﺨﻠﻑ \ ﻋﻼﻤﺔ ﺘﻨﺼﻴﺹ " ' ﻋﻼﻤﺔ ﺘﻨﺼﻴﺹ ﻤﻔﺭﺩﺓ . ﺍﻟﻨﻘﻁﺔ , ﻓﺎﺼﻠﺔ ; ﻓﺎﺼﻠﺔ ﻤﻨﻘﻭﻁﺔ ﻗﻭﺱ ﺩﺍﺌﺭﻯ ﻴﻤﻴﻨﻰ ) ﻗﻭﺱ ﺩﺍﺌﺭﻯ ﻴﺴﺎﺭﻯ ( ] ﻗﻭﺱ ﻤﺭﺒﻊ ﻴﻤﻴﻨﻰ [ ﻗﻭﺱ ﻤﺭﺒﻊ ﻴﺴﺎﺭﻯ ﻋﻼﻤﺔ ﺍﻜﺒﺭ ﻤﻥ ? ﻋﻼﻤﺔ ﺍﺴﺘﻔﻬﺎﻡ : ﺍﻟﺸﺎﺭﺤﺔ ﻜﻤﺎ ﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻡ ﺨﻠﻴﻁ ﻤﻥ ﻫﺫﻩ ﺍﻟﺭﻤﻭﺯ ﻓﻌﻠﻰ ﺴﺒﻴل ﺍﻟﻤﺜﺎل \nﻴﻌﻨﻰ ﺴﻁﺭ ﺠﺩﻴﺩ
ﻭﻴﻌﺭﻑ ﻤﺜل ﻫﺫﺍ ﺍﻟﺨﻠﻁ ﻟﻠﺭﻤﻭﺯ ﺒﺘﺴﻠﺴﻼﺕ ﺍﻭ ﺘﺘﺎﺒﻌﺎﺕ ﺍﻟﻬﺭﻭﺏ ) (escape sequencesﻭﺴﻨﺎﻗﺸﻬﺎ ﻻﺤﻘﺎ ﻭﻟﻜﻥ ﺒﺒﺴﺎﻁﺔ ﺒﺎﻟﺭﻏﻡ ﻤﻥ ﺍﻥ ﺍﻟﺭﻤﺯ ﺍﻟﺴﺎﺒﻕ ﻴﺘﻜﻭﻥ ﻤﻥ ﺭﻤﺯﻴﻥ \ ﻭ nﻭﻟﻜﻨﻪ ﻴﻌﺘﺒﺭ ﺭﻤﺯ ﻭﺍﺤﺩ.
ﺍﻟﺩﺭﺱ ﺍﻟﺴﺎﺒﻊ: ﺍﻟﻜﻠﻤﺎﺕ ﺍﻟﻤﺤﺠﻭﺯﺓ ﺍﻟﻜﻠﻤﺎﺕ ﺍﻟﻤﺤﺠﻭﺯﺓ ) (reserved wordsﺍﻭ ﺍﻟﻜﻠﻤﺎﺕ ﺍﻟﺭﺌﻴﺴﻴﺔ ) (main wordsﻭﻫﻰ ﺫﺍﺕ ﻤﻌﺎﻨﻰ ﻨﻤﻁﻴﺔ ﺍﻭ ﻗﻴﺎﺴﻴﺔ ﺴﺎﺒﻘﺔ ﺍﻟﺘﻌﺭﻴﻑ ﻓﻰ ﺍﻟﺠﺎﻓﺎ ﻭﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻤﻬﺎ ﻟﻠﻐﺭﺽ ﺍﻟﻤﺤﺩﺩ ﻟﻬﺎ ﻓﻘﻁ ﻭﻻﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻤﻬﺎ ﻜﻤﻌﺭﻓﺎﺕ ﻴﻌﺭﻓﻬﺎ ﺍﻟﻤﺒﺭﻤﺞ ﻜﻤﺎ ﻻ ﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻤﻬﺎ ﻜﻤﺘﻐﻴﺭﺍﺕ ﻭﺫﻟﻙ ﺤﺘﻰ ﻻﻴﺤﺩﺙ ﺒﺴﺒﺒﻬﺎ ﺍﺭﺘﺒﺎﻙ ﺍﺜﻨﺎﺀ ﻋﻤﻠﻴﺔ ﺍﻟﺘﺭﺠﻤﺔ ﻭﻫﻰ if for int do else for asm ada
, , , , , , , ,
break struct const default double while near pascal
, , , , , , , ,
sizeof case switch union void short signed huge
, , , , , , , ,
extern static goto continue register volatile enum fortran
, , , , , , , ,
auto float char typeof long return while entry
ﺍﻟﺩﺭﺱ ﺍﻟﺜﺎﻤﻥ : ﺍﻟﻤﻌﺭﻓﺎﺕ : ﺍﻟﻤﻌﺭﻓﺎﺕ ) (identifiersﻫﻰ ﺘﻠﻙ ﺍﻻﺴﻤﺎﺀ ﺍﻟﺘﻰ ﺘﻌﻁﻰ ﻟﻌﻨﺎﺼﺭ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺍﻟﻤﺨﺘﻠﻔﺔ ﻤﺜل : ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ,ﺍﻟﺩﻭﺍل ,ﺍﻟﻤﻨﻅﻭﻤﺎﺕ ﺍﻤﺎ ﺸﺭﻭﻁ ﺍﻟﻤﻌﺭﻑ : -1ﺍﻥ ﻴﺤﺘﻭﻯ ﻋﻠﻰ ﺤﺭﻭﻑ ﺍﺒﺠﺩﻴﺔ ﻭﺍﺭﻗﺎﻡ ﻭﻋﻼﻤﺔ ﺍﻟﺸﺭﻁﺔ ﺍﻟﺘﺤﺘﻴﺔ )_( ) (under scoreﺒﺎﻯ ﺘﺭﺘﻴﺏ -2ﻤﻥ ﺍﻟﻀﺭﻭﺭﻯ ﺍﻥ ﻴﻜﻭﻥ ﺍﻭل ﺭﻤﺯ ﻓﻰ ﺍﻟﻤﻌﺭﻑ ﺤﺭﻓﺎ ﺍﺒﺠﺩﻴﺎ ﻭﻴﺴﻤﺢ ﺒﺎﺴﺘﺨﺩﺍﻡ ﺍﻟﺤﺭﻭﻑ ﺍﻟﺼﻐﻴﺭﺓ ﺍﻭ ﺍﻟﻜﺒﻴﺭﺓ )ﺍﻻﺴﺘﺨﺩﺍﻡ ﺍﻟﺸﺎﺌﻊ ﻴﻔﻀل ﺍﺴﺘﺨﺩﺍﻡ ﺤﺭﻭﻑ ﺼﻐﻴﺭﺓ ﻟﻤﻌﻅﻡ ﺍﻨﻭﺍﻉ ﺍﻟﻤﻌﺭﻓﺎﺕ( ﻴﻤﻜﻥ ﻜﺫﻟﻙ ﺍﺴﺘﺨﺩﺍﻡ ﺍﻟﺸﺭﻁﺔ ﺍﻟﺘﺤﺘﻴﺔ )_( ﻭﺘﻌﺘﺒﺭ ﻤﺜل ﺍﻟﺤﺭﻑ ﻓﻰ ﺒﺩﺍﻴﺔ ﺍﻟﻤﻌﺭﻑ ﻭﻟﻜﻥ ﻴﻨﺩﺭ ﺤﺩﻭﺙ ﻫﺫﺍ -3ﻴﺠﺏ ﺍﻥ ﻴﻜﻭﻥ ﺍﻟﻤﻌﺭﻑ ﺨﺎﻟﻴﺎ ﻤﻥ ﺍﻟﺭﻤﻭﺯ ﺍﻟﺨﺎﺼﺔ ﻤﺎﻋﺩﺍ )_( -4ﻻ ﺘﺴﺘﺨﺩﻡ ﺍﻟﺤﺭﻭﻑ ﺍﻟﺼﻐﻴﺭﺓ ﻭﺍﻟﺤﺭﻭﻑ ﺍﻟﻜﺒﻴﺭﺓ ﺒﺎﻟﺘﺒﺎﺩل )ﺍﻯ ﺍﻥ ﺍﻟﺤﺭﻭﻑ ﺍﻟﻜﺒﻴﺭﺓ ﻟﻴﺴﺕ ﻤﻜﺎﻓﺌﺔ ﻟﻠﺤﺭﻭﻑ ﺍﻟﺼﻐﻴﺭﺓ ﺍﻟﻤﻨﺎﻅﺭﻩ ﻟﻬﺎ( ﺍﻯ valueﻟﻴﺴﺕ ﻫﻰ ﻨﻔﺴﻬﺎ VALUE -5ﻴﻔﻀل ﺍﻥ ﻴﻜﻭﻥ ﻟﻠﻤﻌﺭﻑ ﺍﻟﻁﻭل ﺍﻟﻤﻨﺎﺴﺏ ﻭﺍﻥ ﻴﻜﻭﻥ ﻭﺍﻀﺤﺎ ﻭﺫﺍ ﻤﻌﻨﻰ ﻭﻤﺩﻟﻭل -6ﻴﻔﻀل ﺍﻥ ﻴﻜﻭﻥ ﺍﺴﻡ ﺍﻯ ﺩﺍﻟﻪ ﺍﻭ ﻤﺘﻐﻴﺭ ﻴﺒﺩﺃ ﺒﺤﺭﻑ ﺼﻐﻴﺭ ﻭﺍﺫﺍ ﻜﺎﻥ ﻤﻜﻭﻥ ﻤﻥ ﻜﻠﻤﺘﻴﻥ ﺘﺒﺩﺃ ﺍﻻﻭﻟﻰ ﺒﺤﺭﻑ ﺼﻐﻴﺭ ﻭﺍﻟﺜﺎﻨﻴﺔ ﺘﺒﺩﺃ ﺒﺠﺭﻑ ﻜﺒﻴﺭ -7ﺍﺴﻡ ﺍﻟﻜﺎﺌﻥ ﻴﺒﺩﺃ ﺒﺤﺭﻑ ﻜﺒﻴﺭ ﻭﺍﺫﺍ ﻜﺎﻥ ﻤﻜﻭﻥ ﻤﻥ ﻜﻠﻤﺘﻴﻥ ﺘﻜﻭﻥ ﺒﺩﺍﻴﺔ ﻜﻼ ﻤﻨﻬﻤﺎ ﺤﺭﻑ ﻜﺒﻴﺭ
ﺍﻤﺜﻠﻪ ﺼﺤﻴﺤﺔ ﻟﻠﻤﻌﺭﻓﺎﺕ: tax_rate Name
, ,
Y15 REAL
, ,
X , area10 Sum_4 , total_value _temperature
ﺍﻤﺜﻠﺔ ﻋﻠﻰ ﺍﺴﻤﺎﺀ ﻤﻌﺭﻓﺎﺕ ﻏﻴﺭ ﺼﺤﻴﺤﺔ ,
order-no
,
last name
,
th
5 ""a
, ,
&address char
ﺍﻟﺩﺭﺱ ﺍﻟﺘﺎﺴﻊ: ﺍﻟﺘﻌﻠﻴﻘﺎﺕ ﺍﻟﺘﻌﻠﻴﻘﺎﺕ ) (commentsﻫﻰ ﻋﺒﺎﺭﺓ ﻋﻥ ﺒﻌﺽ ﺍﻻﻭﺍﻤﺭ ﺍﻻﻴﻀﺎﺤﻴﺔ ﻭﻻ ﻴﻜﻭﻥ ﻟﻬﺎ ﺍﻯ ﺘﺄﺜﻴﺭ ﻻﻨﻬﺎ ﻻﺘﻌﺘﺒﺭ ﺠﺯﺀ ﻤﻥ ﺍﻟﺒﺭﻨﺎﻤﺞ . ﻭﺘﻭﻀﻊ ﺍﻟﺘﻌﻠﻴﻘﺎﺕ ﻓﻰ ﺍﻯ ﻤﻜﺎﻥ ﺩﺍﺨل ﺍﻟﺒﺭﻨﺎﻤﺞ ﻭﻤﻤﻜﻥ ﺍﻥ ﻴﺨﻠﻭ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻤﻨﻬﺎ ﻭﻴﺒﺩﺍ ﺍﻟﺘﻌﻠﻴﻕ ﺍﻥ ﻭﺠﺩ ﺒﺎﻟﻌﻼﻤﺔ * /ﻭﻴﻨﺘﻬﻰ ﺒﺎﻟﻌﻼﻤﺔ ﺍﻟﺭﻤﺯﻴﺔ */ﻭﻫﺫﺍ ﻴﻌﻨﻰ ﺍﻥ ﻤﺎ ﻴﻘﻊ ﻤﻥ ﺴﻁﻭﺭ ﺒﻴﻥ ﺍﻟﻌﻼﻤﺘﻴﻥ ﺍﻨﻤﺎ ﻫﻭ ﻤﺨﺼﺹ ﻟﻠﻤﻼﺤﻅﺎﺕ ﻭﻫﺫﺍ ﺸﺄﻨﻪ ﺍﻥ ﻴﻔﻴﺩ ﻓﻰ ﺘﻌﺭﻴﻑ ﺍﻟﺴﻤﺎﺕ ﺍﻻﺴﺎﺴﻴﺔ ﻟﻠﺒﺭﻨﺎﻤﺞ ﺍﻭﻓﻰ ﺘﻭﻀﻴﺢ ﺍﻟﻤﻨﻁﻕ ﺍﻟﻤﺸﻤﻭل ﻓﻰ ﺍﻟﺴﻤﺎﺕ ﺍﻟﻤﺨﺘﻠﻔﺔ ﻟﻠﺒﺭﻨﺎﻤﺞ ﻜﻤﺎ ﻴﻔﻴﺩ ﻓﻰ ﺍﻋﺎﺩﺓ ﻗﺭﺍﺀﺓ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻭﺘﻌﺩﻴﻠﻪ . ﻭﻟﻠﻤﺒﺭﻤﺞ ﺍﻥ ﻴﻜﺘﺏ ﻤﺎ ﻴﺸﺎﺀ ﻤﻥ ﻤﻼﺤﻅﺎﺕ ﺒﻴﻥ ﺍﻟﻌﻼﻤﺘﻴﻥ ﻗﺩ ﺘﺫﻜﺭﻩ ﺒﻤﻀﻤﻭﻥ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻭﺍﻟﻐﺭﺽ ﻤﻨﻪ ﺍﻭ ﺒﻌﺽ ﺍﻟﺨﻁﻭﺍﺕ ﻜﻤﺎ ﺘﻔﻴﺩ ﺍﻴﻀﺎ ﻓﻰ ﺍﻟﺸﺭﺡ . ﻭﻗﺩ ﻴﺤﺘﻭﻯ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻋﻠﻰ ﺍﻯ ﻋﺩﺩ ﻤﻥ ﺴﻁﻭﺭ ﺍﻟﻤﻼﺤﻅﺎﺕ ﻓﻬﻰ ﻻ ﺘﻬﻡ ﺍﻟﻤﺘﺭﺠﻡ . ﻭﺍﺫﺍ ﻜﺎﻥ ﺍﻟﺘﻌﻠﻴﻕ ﺴﻁﺭ ﻭﺍﺤﺩ ﻓﻘﻁ ﻴﻤﻜﻥ ﺍﻥ ﺘﻜﻭﻥ ﻋﻼﻤﺔ ﺍﻟﺘﻌﻠﻴﻕ ﻫﻰ . //
ﺍﻟﺩﺭﺱ ﺍﻟﻌﺎﺸﺭ : ﺘﺴﻠﺴﻼﺕ ﺍﻟﻬﺭﻭﺏ ﻫﻨﺎﻙ ﺒﻌﺽ ﺭﻤﻭﺯ ﺍﻟﺤﺭﻭﻑ ﺍﻟﺨﺎﺼﺔ ﻋﺯﻴﺯﺉ ﺍﻟﻘﺎﺭﺉ ﻭﻴﻁﻠﻕ ﻋﻠﻴﻬﺎ ﺍﺤﻴﺎﻨﺎ ﺤﺭﻭﻑ ﺍﻟﻬﺭﻭﻑ ) (escape characterﻭﺤﺭﻑ ﺍﻟﻬﺭﻭﺏ ﻫﻭ ﺤﺭﻑ ﻴﺴﺘﺨﺩﻡ ﻟﻠﺩﻻﻟﺔ ﻋﻠﻰ ﺍﻥ ﺍﻟﺤﺭﻭﻑ ﺍﻟﺘﺎﻟﻴﺔ ﻟﻪ ﻟﻬﺎ ﻤﻌﻨﻰ ﺨﺎﺹ ﺒﺎﺨﺘﺼﺎﺭ ﺤﺭﻭﻑ ﺍﻟﻬﺭﻭﺏ ﻫﻰ ﺤﺭﻭﻑ ﻟﻬﺎ ﻫﺩﻑ ﻤﻌﻴﻥ ﻭﺘﺒﺩﺃ ﺩﺍﺌﻤﺎ \ ﺸﺭﻁﺔ ﻤﺎﺌﻠﺔ ﺍﻟﻰ ﺍﻟﺨﻠﻑ ﻭﺒﻌﺩﻫﺎ ﻴﺎﺘﻰ ﺍﻟﺤﺭﻑ ﺍﻭ ﺍﻟﺭﻤﺯ ﻭﺍﻻﺜﻨﻴﻥ ﻤﻌﺎ ﻴﻤﺜﻼﻥ ﺭﻤﺯ ﻭﺍﺤﺩ ﻓﻘﻁ . ﻨﻭﺭﺩ ﻓﻴﻤﺎ ﻴﻠﻰ ﺘﺴﻠﺴﻼﺕ ﺍﻟﻬﺭﻭﺏ ﺍﻟﺸﺎﺌﻌﺔ ﺍﻻﺴﺘﺨﺩﺍﻡ ﺍﻟﺭﻤﺯ ﺍﻟﻭﻅﻴﻔﺔ \b ﺍﻟﻌﻭﺩﺓ ﻤﺴﺎﻓﺔ ﻟﻠﺨﻠﻑ \n ﺴﻁﺭ ﺠﺩﻴﺩ \r ﺍﻟﺒﺩﺀ ﻤﻥ ﺍﻭل ﺍﻟﺴﻁﺭ \t ﺍﻟﺘﻘﺩﻡ 7ﻤﺴﺎﻓﺎﺕ "\ ﻟﻜﺘﺎﺒﺔ ﻋﻼﻤﺔ ﺍﻟﺘﻨﺼﻴﺹ '\ ﻟﻜﺘﺎﺒﺔ ﻋﻼﻤﺔ ﺍﻟﺘﻨﺼﻴﺹ ﺍﻟﻔﺭﺩﻴﺔ ?\ ﻟﻜﺘﺎﺒﺔ ﻋﻼﻤﺔ ﺍﻻﺴﺘﻔﻬﺎﻡ \\ ﻟﻜﺘﺎﺒﺔ ﺸﺭﻁﺔ ﻤﺎﺌﻠﺔ ﻟﻠﺨﻠﻑ
ﺍﻟﺩﺭﺱ ﺍﻟﺤﺎﺩﻯ ﻋﺸﺭ: ﺍﻟﺜﻭﺍﺒﺕ ﻴﻭﺠﺩ ﻓﻰ ﻟﻐﺔ ﺍﻟﺠﺎﻓﺎ ﺍﻟﻌﺩﻴﺩ ﻤﻥ ﺍﻨﻭﺍﻉ ﺍﻟﺜﻭﺍﺒﺕ ﻭﺴﻨﺘﻨﺎﻭل ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﻫﺫﻩ ﺍﻻﻨﻭﺍﻉ ﺒﺸﺊ ﻤﻥ ﺍﻟﺘﻔﺼﻴل. -1ﺜﻭﺍﺒﺕ ﺼﺤﻴﺤﺔ integer constant ﻫﻰ ﺘﻠﻠﻙ ﺍﻻﻋﺩﺍﺩ ﺫﺍﺕ ﺍﻟﻘﻴﻡ ﺍﻟﺼﺤﻴﺤﺔ ﺍﻟﺘﻰ ﺘﺤﻭﻯ ﺘﺴﻠﺴﻼ ﻤﻥ ﺍﻻﺭﻗﺎﻡ ﺴﻭﺍﺀ ﻜﺎﻨﺕ ﺍﻋﺩﺍﺩ ﺴﺎﻟﺒﺔ ﺍﻭ ﺍﻋﺩﺍﺩ ﻤﻭﺠﺒﺔ ﺍﻭ ﺼﻔﺭ. ﻭﻴﺠﺏ ﺍﻻ ﻴﺤﺘﻭﻯ ﺍﻟﺜﺎﺒﺕ ﺍﻟﺼﺤﻴﺢ ﻋﻠﻰ ﻨﻘﻁﺔ ﻋﺸﺭﻴﺔ ﺍﻭ ﺍﺴﻴﺔ. ﻴﺴﺒﻕ ﺍﻟﻌﺩﺩ ﺍﻟﺴﺎﻟﺏ ﺒﺎﺸﺎﺭﺓ – ﻟﺒﻴﺎﻥ ﺍﻨﻪ ﻋﺩﺩ ﺴﺎﻟﺏ ﻻﻴﺘﻜﻭﻥ ﺍﻟﻌﺩﺩ ﺍﻟﺼﺤﻴﺢ ﻤﻥ ﺍﻯ ﺭﻤﺯ ﺨﺎﺹ ﺍﻭ ﺤﺭﻑ ﺍﺒﺠﺩﻯ ﻻ ﻴﻜﻭﻥ ﺍﻟﺭﻗﻡ ﺍﻻﻭل ﺼﻔﺭ -2ﺜﻭﺍﺒﺕ ﻤﺘﺤﺭﻜﺔ ﺍﻟﻨﻘﻁﺔ floating point ﺍﻟﺜﺎﺒﺕ ﺍﻟﻤﺘﺤﺭﻙ ﺍﻟﻨﻘﻁﺔ ﻫﻭ ﻋﺩﺩ ﻟﻼﺴﺎﺱ 10ﻴﺤﺘﻭﻯ ﻋﻠﻰ ﻋﻼﻤﺔ ﻋﺸﺭﻴﺔ ﺍﻭ ﻋﻠﻰ ﺍﺱ ﺍﻭ ﻋﻠﻰ ﻜل ﻤﻨﻬﻤﺎ ﻭﻻ ﻴﺤﺘﻭﻯ ﻋﻠﻰ ﺍﻯ ﺭﻤﺯ ﺍﻭ ﺤﺭﻑ ﻭﻗﺩ ﻴﻜﻭﻥ ﺍﻟﻌﺩﺩ ﻤﻭﺠﺒﺎ ﺍﻭ ﺴﺎﻟﺒﺎ ﻭﻴﺭﻤﺯ ﻟﻼﺴﺎﺱ 10ﺒﺤﺭﻑ eﺍﻭ Eﻭﻴﻤﻜﻥ ﺍﻥ ﻴﻜﻭﻥ ﺍﻻﺱ ﺴﺎﻟﺏ ﺍﻭ ﻤﻭﺠﺏ ﻭﻟﻜﻥ ﻴﺠﺏ ﺍﻻ ﻴﺤﺘﻭﻯ ﻋﻠﻰ ﻋﻼﻤﺔ ﻋﺸﺭﻴﺔ ﻓﻤﺜﻼ ﺍﻟﺭﻗﻡ 40000ﻴﻤﻜﻥ ﺍﻥ ﻴﻜﺘﺏ 4e5 ﻗﺩ ﻴﺨﻀﻊ ﺍﺤﻴﺎﻨﺎ ﺜﺎﺒﺕ ﺍﻟﻨﻘﻁﺔ ﺍﻟﻤﺘﺤﺭﻜﺔ ﺍﻟﻰ ﻋﻤﻠﻴﺎﺕ ﺘﻘﺭﻴﺏ ﻓﻤﺜﻼ ﺍﻟﻌﺩﺩ )(0.9999999999999 ﻨﺠﺩ ﺍﻨﻪ ﻴﺘﻡ ﺘﻘﺭﻴﺒﻪ ﺍﻟﻰ 1 ﻭﻻﻴﻤﻜﻥ ﺍﺴﺘﺨﺩﺍﻡ ﻗﻴﻡ ﻤﺘﺤﺭﻜﺔ ﺍﻟﻨﻘﻁﺔ ﻓﻰ ﺍﻏﺭﺍﺽ ﺍﻟﻌﺩ ﺍﻭ ﺍﻟﻔﻬﺭﺴﺔ . -3ﺜﻭﺍﺒﺕ ﺤﺭﻓﻴﺔ character constants ﻓﻴﻤﺎ ﻴﻠﻰ ﺍﻤﺜﻠﻪ ﻟﺒﻌﺽ ﺍﻟﺜﻭﺍﺒﺕ ﺍﻟﺤﺭﻓﻴﺔ 65
,
''\n
,
''5
,
''a
. ﺍﻯ ﺍﻥ ﺍﻟﺜﻭﺍﺒﺕ ﺍﻟﺤﺭﻓﻴﺔ ﻴﻤﻜﻥ ﺍﻥ ﺘﻜﻭﻥ ﺭﻗﻡ ﺍﻭ ﺤﺭﻑ ﺍﻭ ﺭﻤﺯ ﻤﻥ ﻤﺘﺴﻠﺴﻼﺕ ﺍﻟﻬﺭﻭﺏ ﺍﻤﺎ ﺍﻟﺭﻗﻡ ﺍﻻﺨﻴﺭ 65ﻓﻬﻭ ﻋﺒﺎﺭﺓ ﻋﻥ ﺍﻟﺤﺭﻑ ' 'Aﺍﻯ ﺍﻥ ﺍﻟﺜﺎﺒﺕ ﺍﻟﺤﺭﻓﻰ ﻴﻤﻜﻥ ﺍﻥ ﻴﻜﻭﻥ ﺭﻗﻡ ﻭﻫﺫﺍ ﺍﻟﺭﻗﻡ ﺴﻴﺘﻡ ﺘﺤﻭﻴﻠﻪ ﺍﻟﻰ ﺍﻟﺭﻗﻡ ﺍﻟﻤﻨﺎﻅﺭ ﻟﻪ ﻓﻰ ASCIIﺍﻯ ﺍﻻﺴﻜﻰ ﻜﻭﺩ ﻭﻫﻭ ﺍﻥ ﺍﻟﺤﺭﻑ ﻴﺘﻡ ﺘﻤﺜﻴﻠﻪ ﺒﺭﻗﻡ ﻤﻜﻭﻥ ﻤﻥ 7ﺒﺕ -4ﺜﻭﺍﺒﺕ ﺍﻟﺴﻠﺴﻠﺔ string constant ﻴﺤﺘﻭﻯ ﺜﺎﺒﺕ ﺍﻟﺴﻠﺴﻠﺔ ﻋﻠﻰ ﺍﻯ ﻋﺩﺩ ﻤﻥ ﺍﻟﺭﻤﻭﺯ ﺍﻭ ﺍﻟﻔﺭﻏﺎﺕ ﻭﺘﻜﻭﻥ ﻤﺤﺼﻭﺭﺓ ﺒﻴﻥ ﻋﻼﻤﺘﻰ ﺘﻨﺼﻴﺹ " " .
ﺍﻟﺩﺭﺱ ﺍﻟﺜﺎﻨﻰ ﻋﺸﺭ : ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﺍﻥ ﺍﻟﺠﺎﻓﺎ ﻏﻨﻴﺔ ﺒﺎﻟﻤﺘﻐﻴﺭﺍﺕ ﻤﻥ ﺍﻻﻨﻭﺍﻉ ﺍﻟﻤﺨﺘﻠﻔﺔ . ﻭﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻫﻰ ﻤﻌﺭﻓﺎﺕ ﺍﻭ ﺍﺴﻤﺎﺀ ﺭﻤﺯﻴﺔ ﻴﺨﺼﺹ ﻟﻬﺎ ﺍﻤﺎﻜﻥ ﺘﺨﺯﻴﻥ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﻭﺍﻟﺘﻰ ﺘﺘﺤﻭل ﻗﻴﻤﺘﻬﺎ ﻭﺘﺘﻐﻴﺭ ﻤﻥ ﻗﻴﻤﺔ ﺍﻟﻰ ﺍﺨﺭﻯ ﺤﻴﺙ ﻴﻤﻜﻥ ﺍﻟﺭﺠﻭﻉ ﺍﻟﻰ ﺍﻟﻘﻴﻤﺔ ﻋﻥ ﻁﺭﻴﻕ ﺍﻻﺴﻡ ﺍﻟﻤﻌﻁﻰ ﻟﻬﺎ ﻭﺫﻟﻙ ﺍﺜﻨﺎﺀ ﺘﻨﻔﻴﺫ ﺍﻟﺒﺭﻨﺎﻤﺞ ﺩﻭﻥ ﺍﻥ ﻴﺘﻐﻴﺭ ﻨﻭﻉ ﺍﻟﺒﻴﺎﻨﺎﺕ )ﺴﻴﺘﻡ ﺸﺭﺡ ﻓﻴﻤﺎ ﺒﻌﺩ ﻨﻭﻉ ﺍﻟﺒﻴﺎﻨﺎﺕ( ﻭﻴﻠﺯﻡ ﺍﻻﻋﻼﻥ ﻋﻥ ﻨﻭﻉ ﺍﻟﻤﺘﻐﻴﺭ ﺼﺭﺍﺤﺔ ﻗﺒل ﺍﺴﺘﺨﺩﺍﻤﻪ ﻓﻰ ﺍﻟﺒﺭﻨﺎﻤﺞ . ﻭﻓﻰ ﺍﻟﻐﺎﻟﺏ ﻤﺎ ﻴﺘﻡ ﺍﻻﻋﻼﻥ ﻋﻥ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻭﺘﻭﻀﻴﺢ ﻨﻭﻋﻬﺎ ﻓﻰ ﻤﺴﺘﻬل ﺍﻟﺒﺭﻨﺎﻤﺞ . ﻨﺘﻨﺎﻭل ﺍﻻﻥ ﺒﺸﺊ ﻤﻥ ﺍﻟﺘﻔﺼﻴل ﺍﻟﻤﺘﻐﻴﺭﺍﺕ -1ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﺍﻟﺼﺤﻴﺤﺔ :ﻭﻫﻰ ﺘﻠﻙ ﺍﻟﺘﻰ ﻴﺨﺯﻥ ﻓﻴﻬﺎ ﺍﻟﻼﻋﺩﺍﺩ ﺍﻟﺼﺤﻴﺤﺔ ﺍﻟﺴﺎﻟﺒﺔ ﺍﻭ ﺍﻟﻤﻭﺠﺒﺔ ﻴﻭﺠﺩ ﻤﻨﻬﺎ ﻨﻭﻋﺎﻥ ﺍﻋﺩﺍﺩ ﺼﺤﻴﺤﺔ ﺼﻐﻴﺭﺓ ﺍﻭ ﻋﺩﺩ ﻁﻭﻴل ﺼﺤﻴﺢ ﻭﺍﻻﺨﻴﺭﺓ ﻤﺨﺼﺼﺔ ﻟﻼﺭﻗﺎﻡ ﺍﻟﻜﺒﻴﺭﺓ ﺠﺩﺍ -2ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻤﺘﺤﺭﻜﺔ ﺍﻟﻨﻘﻁﺔ :ﻭﻫﻰ ﺘﻠﻙ ﺍﻟﺘﻰ ﺘﺤﺘﻭﻯ ﻋﻠﻰ ﻋﻼﻤﺔ ﻋﺸﺭﻴﺔ ﺍﻭ ﺍﻟﻌﺩﺩ ﺍﻟﺫﻯ ﺒﻪ ﻗﻴﻤﺔ ﻜﺴﺭﻴﺔ ﺍﻭ ﺒﻤﻌﻨﻰ ﺍﺩﻕ ﺍﻻﻋﺩﺍﺩ ﺍﻟﺤﻘﻴﻘﻴﺔ -3ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻤﺯﺩﻭﺠﺔ ﺍﻟﺩﻗﺔ :ﻭﻫﻰ ﻨﻔﺱ ﻤﺘﺤﺭﻜﺔ ﺍﻟﻨﻘﻁﺔ ﻭﻟﻜﻥ ﺍﻟﻘﻴﻡ ﺍﻟﻤﻤﺜﻠﺔ ﻟﻠﻤﺘﻐﻴﺭﺍﺕ ﻤﺯﺩﻭﺠﺔ ﺍﻟﺩﻗﺔ ﻤﺩﺍﻫﺎ ﻴﻜﻭﻥ ﺍﻜﺒﺭ ﻤﻥ ﻤﺘﺤﺭﻜﺔ ﺍﻟﻨﻘﻁﺔ -4ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﻤﻥ ﺍﻟﻨﻭﻉ ﺍﻟﺤﺭﻓﻰ :ﻭﺘﺘﻀﻤﻥ ﺍﻻﻋﻼﻥ ﻋﻥ ﺍﻟﺤﺭﻭﻑ ﺍﻭ ﺍﻟﺭﻤﻭﺯ ﻜﻤﺎ ﺸﺭﺤﻨﺎ ﻓﻰ ﺍﻟﺩﺭﺱ ﺍﻟﺴﺎﺒﻕ
ﺍﻟﺩﺭﺱ ﺍﻟﺜﺎﻟﺙ ﻋﺸﺭ : ﻨﻭﻉ ﺍﻟﺒﻴﺎﻨﺎﺕ )ﺍﻟﻤﺘﻐﻴﺭﺍﺕ( Data Typeﻭﻫﻰ ﺍﻻﻨﻭﺍﻉ ﺍﻟﺘﻰ ﺴﺘﺴﺘﺨﺩﻡ ﻓﻰ ﺘﻌﺭﻴﻑ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ. ﻟﺘﻌﺭﻴﻑ ﺍﻟﻤﺘﻐﻴﺭ :ﻴﻜﺘﺏ ﺍﻭﻻ ﻨﻭﻉ ﺍﻟﻤﺘﻐﻴﺭ ﺜﻡ ﺍﺴﻡ ﺍﻟﻤﺘﻐﻴﺭ ﺒﻌﺩ ﺫﻟﻙ ﻭﻴﻤﻜﻥ ﺍﻻﻋﻼﻥ ﻋﻥ ﺍﻜﺜﺭ ﻤﻥ ﻤﺘﻐﻴﺭ ﺒﻨﻔﺱ ﺍﻟﻨﻭﻉ ﻓﻰ ﺴﻁﺭ ﻭﺍﺤﺩ ﺒﻜﺘﺎﺒﺔ ﺍﻟﻨﻭﻉ ﺜﻡ ﺍﺴﻤﺎﺀ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ . ﻭﺴﻴﺘﻡ ﺘﻭﻀﻴﺢ ﺫﻟﻠﻙ ﻓﻰ ﺍﻤﺜﻠﻪ ﺒﻌﺩ ﺫﻟﻙ. ﻟﻜﻥ ﺘﻌﺎﻟﻰ ﺍﻻﻥ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﻨﺘﻌﺭﻑ ﻋﻠﻰ ﺍﻨﻭﺍﻉ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ boolean -1ﻭﻫﻭ ﻴﺄﺨﺫ ﺍﻟﻘﻴﻡ ﺼﻔﺭ ﺍﻭ ﻭﺍﺤﺩ ﻭﻴﻜﻭﻥ ﺤﺠﻤﺔ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ 1 bitﻭﻴﺴﺘﺨﺩﻡ ﻓﻰ ﺤﺎﻟﺔ ﺍﻟﻤﺘﻐﻴﺭﺍﺕ ﺘﻜﻭﻥ ﺍﺤﺩﻯ ﻗﻴﻤﺘﻴﻥ ﻤﻌﻠﻭﻤﺘﻴﻥ ﻤﺜﻼ )ﻨﻌﻡ ﻭ ﻻ( ﻭﺒﻤﻌﻨﻰ ﺍﺩﻕ ﺘﻜﻭﻥ ﻗﻴﻡ ﻫﺫﺍ ﺍﻟﻨﻭﻉ ) (true or falseﻭﺍﻟﻘﻴﻤﺔ ﺍﻻﻓﺘﺭﺍﻀﻴﺔ ﻓﻰ ﺤﺎﻟﺔ ﺍﻻﻋﻼﻥ ﻋﻥ ﻤﺘﻐﻴﺭ ﻭﻋﺩﻡ ﺇﻋﻁﺎﺅﻩ ﻗﻴﻤﺔ ﺍﻯ ﺍﻥ ﺍﻟﻘﻴﻤﺔ ﺍﻻﻓﺘﺭﺍﻀﻴﺔ ﺘﻜﻭﻥ false
byte -2ﻭﻫﻭ ﺍﻟﺘﻰ ﺘﻜﻭﻥ ﻗﻴﺎﻤﻬﺎ ﺍﻋﺩﺍﺩ ﺼﺤﻴﺤﺔ ﺴﺎﻟﺒﺔ ﺍﻭ ﻤﻭﺠﺒﺔ ﻤﺤﺼﻭﺭﺓ ﺒﻴﻥ -128ﻜﺤﺩ ﺍﺩﻨﻰ ﻭ 127ﻜﺤﺩ ﺍﻗﺼﻰ ﻭﺤﺠﻤﻬﺎ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ 8 bitﺍﻯ ) ( 1 byteﻤﺜﻼ )(100-,6-,10,20 char -3ﻭﻫﻰ ﺍﻟﺘﻰ ﺘﻜﻭﻥ ﻗﻴﻤﻬﺎ ﻋﺒﺎﺭﺓ ﻋﻥ ﺤﺭﻑ ﻭﺍﺤﺩ ﺍﻭ ﻗﻴﻤﺔ ﻻﺤﺩﻯ ﻤﺘﺴﻠﺴﻼﺕ ﺍﻟﻬﺭﻭﺏ ﺍﻭ ﺭﻗﻡ ﻭﻫﺫﺍ ﺍﻟﺭﻗﻡ ﻴﻌﺒﺭ ﻋﻥ ﺤﺭﻑ ﻭﻟﻜﻥ ﺒﻨﻅﺎﻡ ﺍﻻﺴﻜﻰ ﻜﻭﺩ ﺤﻴﺙ ﻓﻰ ﻫﺫﺍ ﺍﻟﻨﻅﺎﻡ ﻜل ﺤﺭﻑ ﻴﻤﺜل ﺒﺭﻗﻡ ﻤﻌﻴﻥ ﻭﺤﺠﻤﻬﺎ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ 16 bitﺍﻯ ) ( 2 byteﻤﺜﻼ )(a , n , \t , 56 , 126 short -4ﻭﺘﻜﻭﻥ ﻗﻴﻤﻬﺎ ﺍﻋﺩﺍﺩ ﺼﺤﻴﺤﺔ ﻤﻭﺠﺒﺔ ﺍﻭ ﺴﺎﻟﺒﺔ ﻤﺤﺼﻭﺭﺓ ﺒﻴﻥ -32768ﻜﺤﺩ ﺍﺩﻨﻰ ﻭ 32767ﻜﺤﺩ ﺍﻗﺼﻰ ﻭﺤﺠﻤﻬﺎ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﻴﻜﻭﻥ 16 bit int -5ﻭﻫﻰ ﺘﻤﺜل ﺒﻘﻴﻡ ﺼﺤﻴﺤﺔ ﻤﻭﺠﺒﺔ ﺍﻭ ﺴﺎﻟﺒﺔ ﻤﺤﺼﻭﺭﺓ ﺒﻴﻥ -2147483648ﻜﺤﺩ ﺍﺩﻨﻰ ﻭ 2147483647ﻜﺤﺩ ﺍﻗﺼﻰ ﻭﺘﺴﺘﻐل ﻤﻥ ﺍﻟﺫﺍﻜﺭﺓ ﺤﺠﻡ 32 bitﺍﻯ 4 byteﻤﺜﻼ )(218888-,20000,50000 float -6ﻭﻫﻰ ﺘﻤﺜل ﺒﻘﻴﻡ ﺍﻻﻋﺩﺍﺩ ﺤﻘﻴﻘﻴﺔ ﺍﻯ ﺍﻋﺩﺍﺩ ﺒﻬﺎ ﻋﻼﻤﺔ ﻋﺸﺭﻴﺔ ﺍﻭ ﻋﺩﺍﺩ ﻜﺴﺭﻴﺔ ﺍﻭ ﺍﻋﺩﺍﺩ ﺍﺴﻴﺔ ﻭﺘﻨﺤﺼﺭ ﻫﺫﻩ ﺍﻟﻘﻴﻡ ﺒﻴﻥ +/-3.40282347E+38و +/-1.40239846E-45ﻭﺤﺠﻤﻬﺎ ﻓﻰ ﺍﻟﺫﺍﻜﺭﺓ ﻴﻜﻭﻥ 32 bitﻤﺜﻼ ) (88.65 , 222.357 , 2.555ﻭﻜﻤﺎ ﺫﻜﺭﻨﺎ ﻤﻥ ﻗﺒل ﺍﻥ ﺍﻟﺤﺭﻑ e ﺼﻐﻴﺭ ﺍﻭ ﻜﺒﻴﺭ ﻴﻤﺜل ﺍﻻﺴﺎﺱ 10ﻤﺜﻼ ) ( 5e2ﻫﻰ ﺍﻟﺭﻗﻡ )(500 double -7ﻫﻰ ﺘﻤﺜل ﺍﻴﻀﺎ ﻤﺜل floatﻭﻟﻜﻥ ﺍﻟﻔﺭﻕ ﺍﻥ doubleﺍﻟﻘﻴﻡ ﺘﻜﻭﻥ ﺍﻜﺒﺭ ﺒﻜﺜﻴﺭ ﻭﻫﻰ ﺘﻨﺤﺼﺭ ﺒﻴﻥ +/-1.8e308ﻭ +/-4.9e-324ﻭﺤﺠﻡ ﺍﻟﺫﺍﻜﺭﺓ ﺍﻟﻤﺴﺘﻐل ﻴﻜﻭﻥ 64 bitﺍﻯ 8 byte long -8ﻭﻫﻰ ﺘﻤﺜل ﺍﻻﻋﺩﺍﺩ ﺍﻟﺼﺤﻴﺤﺔ ﺍﻟﺴﺎﻟﺒﺔ ﺍﻭ ﺍﻟﻤﻭﺠﺒﺔ ﻭﻟﻜﻥ ﺘﻜﻭﻥ ﺍﻋﺩﺍﺩ ﻜﺒﻴﺭﺓ ﺠﺩﺍ ﺠﺩﺍ ﻭﺍﻟﺠﺩﻭل ﺍﻻﺘﻰ ﻤﻠﺨﺹ ﺍﻟﺸﺭﺡ ﺍﻟﺴﺎﺒﻕ Min and Max values
Size )(bits
Default value
Contains
Type
Not Applicable \u0000 to \uFFFF -128 to 127 -32768 to 32767 -2147483648 to 2147483647 -9223372036854775808 to 9223372036854775807 +/-3.40282347E+38 to +/-1.40239846E-45 +/-1.79769313486231570E+308 to +/-4.94065645841246544E-324
1 16 8 16 32 64 32 64
false \u0000 0 0 0 0.0 0.0
true or false Unicode character signed integer signed integer signed integer signed integer IEEE754 flt. pt. IEEE754 flt. pt.
boolean char byte short int long float double
ﺍﻟﺩﺭﺱ ﺍﻟﺭﺍﺒﻊ ﻋﺸﺭ : ﺍﻟﻤﺅﺜﺭﺍﺕ ﺍﻟﺤﺴﺎﺒﻴﺔ ﺍﻟﺜﻨﺎﺌﻴﺔ ﺍﻟﻤﺅﺜﺭﺍﺕ operatorsﻫﻰ ﺘﻠﻙ ﺍﻻﺸﺎﺭﺍﺕ ﺍﻟﺨﺎﺼﺔ ﺒﺎﻟﻌﻤﻠﻴﺎﺕ ﺍﻟﺤﺴﺎﺒﻴﺔ . ﻭﺍﻟﺒﻴﺎﻨﺎﺕ ﺍﻟﺘﻰ ﻴﺘﻡ ﺍﺩﺍﺀ ﻋﻤﻠﻴﺎﺕ ﺤﺴﺎﺒﻴﺔ ﻋﻠﻴﻬﺎ ﺒﻭﺍﺴﻁﺔ ﺍﻟﻤﺅﺜﺭﺍﺕ ﺘﺴﻤﻰ ﻋﻭﺍﻤل ﺍﻭ ﻋﻨﺎﺼﺭ . ﻭﺘﺘﻁﻠﺏ ﺒﻌﺽ ﺍﻟﻤﺅﺜﺭﺍﺕ ﻋﺎﻤﻠﻴﻥ ﻟﺫﻟﻙ ﺴﻤﻴﺕ ﺍﻟﻤﺅﺜﺭﺍﺕ ﺍﻟﺤﺴﺎﺒﻴﺔ ﺍﻟﺜﻨﺎﺌﻴﺔ . ﻭﻫﻰ ﻋﺒﺎﺭﺓ ﻋﻥ ﺨﻤﺴﺔ ﻤﺅﺜﺭﺍﺕ ﺤﺴﺎﺒﻴﺔ ﺜﻨﺎﺌﻴﺔ ﻭﻫﻰ : +ﻭﺍﻟﻐﺭﺽ ﻤﻨﻬﺎ ﻋﻤﻠﻴﺔ ﺍﻟﺠﻤﻊ ﺒﻴﻥ ﺍﻟﻌﻭﺍﻤل :ﻭﺍﻟﻐﺭﺽ ﻤﻨﻬﺎ ﻋﻤﻠﻴﺔ ﺍﻟﻁﺭﺡ ﺒﻴﻥ ﺍﻟﻌﻭﺍﻤل* :ﻭﺍﻟﻐﺭﺽ ﻤﻨﻬﺎ ﻀﺭﺏ ﺍﻟﻌﻭﺍﻤل
: /ﻭﺍﻟﻐﺭﺽ ﻤﻨﻬﺎ ﺍﻟﻘﺴﻤﺔ ﺒﻴﻥ ﺍﻟﻌﻭﺍﻤل ﻭﻋﻨﺩ ﺍﺴﺘﺨﺩﺍﻡ ﻫﺫﺍ ﺍﻟﻤﺅﺜﺭ ﻨﺤﺘﺭﺱ ﺤﻴﺙ ﻴﻤﻜﻥ ﺍﻥ ﻴﻜﻭﻥ ﺍﻟﻌﺎﻤﻠﻴﻥ ﺍﻟﻤﺴﺘﺨﺩﻤﻴﻥ ﺍﻋﺩﺍﺩ ﺼﺤﻴﺤﺔ ﻭﻴﻨﺘﺞ ﻋﻥ ﺍﻟﻌﻤﻠﻴﺔ ﻋﺩﺩ ﻋﺸﺭﻯ ﻤﺜﺎل a=15 , b=4 a/b=3.75ﻫﺫﻩ ﻫﻰ ﺍﻻﺠﺎﺒﺔ ﺍﻟﻤﺘﻭﻗﻌﺔ ﻭﻟﻥ ﺍﻟﻨﺎﺘﺞ ﺴﻴﻜﻭﻥ ﻏﻴﺭ ﺫﻟﻙ ﺤﻴﺙ ﺍﻥ ﺍﻟﻌﺎﻤﻼﻥ a,bﺍﻋﺩﺍﺩ ﺼﺤﻴﺤﺔ ﻓﻴﻜﻭﻥ ﺍﻟﻨﺎﺘﺞ ﻋﺩﺩ ﺼﺤﻴﺢ ﻓﻴﻜﻭﻥ ﺍﻟﻨﺎﺘﺞ 3ﻓﻘﻁ ﺩﻭﻥ ﺍﻟﻌﺩﺩ ﺍﻟﻜﺴﺭﻯ ﺍﻭ ﺍﻟﻌﺸﺭﻯ ﻭﻟﻜﻥ ﻤﺎﺫﺍ ﻟﻭ ﺍﺭﺍﺩﻨﺎ ﺍﻟﻘﺴﻤﺔ ﺍﻟﺼﺤﻴﺤﺔ ﻓﻰ ﻫﺫﻩ ﺍﻟﺤﺎﻟﺔ ﻴﺠﺏ ﺍﻥ ﻴﻜﻭﻥ ﺍﺤﺩ ﺍﻟﻌﺎﻤﻠﻴﻥ ﻋﺩﺩ ﻋﺸﺭﻯ ﺒﻤﻌﻨﻰ ﺍﻥ ﺘﻜﻭﻥ a=15.0ﺍﻭ b=4.0ﻭﻫﻰ ﻨﻔﺱ ﺍﻟﻘﻴﻡ ﺍﻟﻘﺩﻴﻤﺔ ﻭﻟﻜﻥ ﺍﺨﺘﻠﻑ ﻨﻭﻋﻬﺎ ﻭﻓﻰ ﻫﺫﻩ ﺍﻟﺤﺎﻟﺔ ﻴﻜﻭﻥ ﺍﻟﻨﺎﺘﺞ 3.75ﻟﺫﻟﻙ ﺍﺤﺘﺭﺱ ﻋﺯﻴﺯﻯ ﺍﻟﻘﺎﺭﺉ ﻋﻨﺩ ﺍﺴﺘﺨﺩﺍﻤﻙ ﻫﺫﺍ ﺍﻟﻤﺅﺜﺭ. : %ﻭﻴﻜﻭﻥ ﻨﺎﺘﺞ ﻫﺫﻩ ﺍﻟﻌﻤﻠﻴﺔ ﻫﻭ ﺒﺎﻗﻰ ﺍﻟﻘﺴﻤﺔ ﻭﻨﻼﺤﻅ ﻫﻨﺎ ﺍﻨﻪ ﻴﺠﺏ ﺍﻥ ﺘﻜﻭﻥ ﺍﻟﻌﻭﺍﻤل ﺍﻋﺩﺍﺩ ﺼﺤﻴﺤﺔ ﻟﻀﻤﺎﻥ ﺼﺤﺔ ﺍﻟﻨﺎﺘﺞ ﻭﺘﻜﻭﻥ ﺍﺸﺎﺭﺓ ﺍﻟﻨﺎﺘﺞ ﻫﻰ ﻨﻔﺱ ﺍﺸﺎﺭﺓ ﺍﻟﻌﺎﻤل ﺍﻻﻴﺴﺭ ﻤﺜﺎل a=11 , b=2 a%b = 1ﺍﻴﻀﺎ a%-b=1ﻭﻟﻜﻥ – a%b = -1 ﻋﺯﻴﺯﺉ ﺍﻟﻘﺎﺭﺉ ﻴﺠﺏ ﺍﻻﺨﺫ ﻓﻰ ﺍﻻﻋﺘﺒﺎﺭ ﻟﻜل ﻫﺫﻩ ﺍﻟﻤﻼﺤﻅﺎﺕ ﻋﻨﺩ ﺍﺴﺘﺨﺩﺍﻤﻙ ﺍﻟﻤﺅﺜﺭﺍﺕ ﺍﻟﺤﺴﺎﺒﻴﺔ ﺍﻟﺜﻨﺎﺌﻴﺔ .
ﺍﻟﺩﺭﺱ ﺍﻟﺨﺎﻤﺱ ﻋﺸﺭ : ﺍﻟﻤﺅﺜﺭﺍﺕ ﺍﻻﺤﺎﺩﻴﺔ ﻫﻰ ﺘﻠﻠﻙ ﺍﻟﻤﺅﺜﺭﺍﺕ ﺍﻟﺘﻰ ﺘﻌﻤل ﻋﻠﻰ ﻋﺎﻤل ﻭﺍﺤﺩ ﻭﻴﻜﻭﻥ ﺍﻟﻨﺎﺘﺞ ﻗﻴﻤﺔ ﺠﺩﻴﺩﻩ ﻭﺍﻜﺜﺭ ﻫﺫﻩ ﺍﻟﻤﺅﺜﺭﺍﺕ ﺸﻴﻭﻋﺎ ﻭﺍﺴﺘﺨﺩﺍﻤﺎ ﺍﺸﺎﺭﺓ ﺍﻟﺴﺎﻟﺏ ) (-ﺍﻟﺘﻰ ﺘﺤﺩﺩ ﺍﺸﺎﺭﺓ ﺍﻟﻤﺘﻐﻴﺭ ﺍﻭ ﺍﻟﺭﻗﻡ : ++ﻭﻴﺴﻤﻰ ﻫﺫﺍ ﺍﻟﻤﺅﺜﺭ ﻤﺅﺜﺭ ﺍﻟﺯﻴﺎﺩﺓ increment operatorﻭﻴﺴﺘﺨﺩﻡ ﻟﺯﻴﺎﺩﺓ ﻗﻴﻤﺔ ﺍﻟﻤﺘﻐﻴﺭ ﺒﻭﺍﺤﺩ ﻤﺜﻼ a=a+1ﻨﺎﺘﺞ ﻫﺫﻩ ﺍﻟﻌﻤﻠﻴﺔ ﻫﻭ ﻨﻔﺴﻪ ﻨﺎﺘﺞ a++ﻴﻌﻨﻰ ﺍﺫﺍ ﻜﺎﻨﺕ a=5ﺍﺫﻥ a++ﺘﺠﻌل a=6
ﻭﻴﻤﻜﻥ ﻭﻀﻊ ﺍﻟﻤﻭﺜﺭ ﻗﺒل ﺍﻟﻌﺎﻤل ﺍﻭ ﺒﻌﺩﻩ ﻭﻟﻜﻥ ﺒﺎﻟﺘﺎﻜﻴﺩ ﻫﻨﺎﻙ ﻓﺭﻕ ﺒﻴﻨﻬﻡ ﻻﺤﻅ ﻤﻌﻰ ﺍﺫﺍ ﻜﺎﻨﺕ a=5 b=(a++)*3ﻴﻜﻭﻥ ﻨﺎﺘﺞ ﺍﻟﻌﻤﻠﻴﺔ ﺍﻥ b=15ﻫﻨﺎ ﻟﻡ ﺘﺘﻡ ﺍﻟﺯﻴﺎﺩﺓ ﻭﻟﻜﻥ ﺍﺫﺍ ﺍﺴﺘﺨﺩﻤﻨﺎ ﺍﻟﻤﺘﻐﻴﺭ aﻓﻰ ﻋﻤﻠﻴﺔ ﺤﺴﺎﺒﻴﺔ ﺒﻌﺩ ﺫﻟﻙ ﺴﺘﻜﻭﻥ ﻗﻴﻤﺘﻪ 6 ﺍﻤﺎ b=(++a)*3ﻴﻜﻭﻥ ﻨﺎﺘﺞ ﻫﺫﻩ ﺍﻟﻌﻤﻠﻴﺔ b=18ﻫﻨﺎ ﻻﻥ ﺍﻟﺯﻴﺎﺩﺓ ﺘﻤﺕ ﻋﻠﻰ ﺍﻟﻤﺘﻐﻴﺭ a ﺍﺫﻥ ﺍﺫﺍ ﻜﺎﻥ ﺍﻟﻤﺅﺜﺭ ﻗﺒل ﺍﻟﻌﺎﻤل ﻓﺘﺘﻡ ﺍﻟﺯﻴﺎﺩﺓ ﻓﻰ ﻨﻔﺱ ﺍﻟﺴﻁﺭ ﺍﻭ ﻓﻰ ﻨﻔﺱ ﺍﻟﺨﻁﻭﺓ ﻓﻰ ﺍﻟﺒﺭﻨﺎﻤﺞ ﻟﻜﻥ ﺍﺫﺍ ﻜﺎﻥ ﺍﻟﻤﺅﺜﺭ ﺒﻌﺩ ﺍﻟﻌﺎﻤل ﻓﺘﺘﻡ ﺍﻟﺯﻴﺎﺩﺓ ﺒﻌﺩ ﺍﻻﻨﺘﻬﺎﺀ ﻤﻥ ﻫﺫﻩ ﺍﻟﺨﻁﻭﺓ : -ﻴﺴﻤﻰ ﻫﺫﺍ ﺍﻟﻤﺅﺜﺭ ﻤﺅﺜﺭ ﺍﻟﻨﻘﺼﺎﻥ decrement operatorﻭﻴﺴﺘﺨﺩﺍﻡ ﻻﻨﻘﺎﺹ ﻗﻴﻤﺔ ﺍﻟﻤﺘﻐﻴﺭﺒﻭﺍﺤﺩ a=a-1ﻨﺎﺘﺞ ﻫﺫﻩ ﺍﻟﻌﻤﻠﻴﺔ ﻫﻭ ﻨﻔﺴﻪ ﻨﺎﺘﺞ a--ﻴﻌﻨﻰ ﺍﺫﺍ ﻜﺎﻨﺕ a=5ﺍﺫﻥ a--ﺘﺠﻌل a=4 ﻭﻴﻤﻜﻥ ﻭﻀﻊ ﺍﻟﻤﻭﺜﺭ ﻗﺒل ﺍﻟﻌﺎﻤل ﺍﻭ ﺒﻌﺩﻩ ﻭﻟﻜﻥ ﺒﺎﻟﺘﺎﻜﻴﺩ ﻫﻨﺎﻙ ﻓﺭﻕ ﺒﻴﻨﻬﻡ ﻭﺘﻡ ﺸﺭﺡ ﺍﻟﻔﺭﻕ ﻤﻥ ﻗﺒل ﻓﻰ ﺍﻟﻤﺅﺜﺭ ﺍﻟﺴﺎﺒﻕ
ﺍﻟﺩﺭﺱ ﺍﻟﺴﺎﺩﺱ ﻋﺸﺭ : ﺍﻟﻤﺅﺜﺭﺍﺕ ﺍﻟﻌﻼﻗﻴﺔ ﺍﻭ ﺍﻟﻤﻨﻁﻘﻴﺔ
ﻫﻰ ﻋﺒﺎﺭﺓ ﻋﻥ ﺍﺸﺎﺭﺍﺕ ﺍﻟﻤﻘﺎﺭﻨﺔ ﻭﺘﺴﺘﺨﺩﻡ ﻟﻠﻤﻘﺎﻨﺔ ﺒﻴﻥ ﻋﺎﻤﻠﻴﻥ ) ﻤﺘﻐﻴﺭﺍﻥ ( ﻭﺘﻭﺠﺩ ﻨﺘﻴﺠﺔ ﻫﺫﻩ ﺍﻟﻌﻤﻠﻴﺔ ﻫﻰ trueﺍﻭ falseﻭﻫﺫﻩ ﺍﻟﻤﺅﺜﺭﺍﺕ ﻫﻰ ﻜﻤﺎ ﻴﻠﻰ : < :ﻭﻫﻰ ﺘﻤﺜل ﺍﻗل ﻤﻥ :ﺍﻜﺒﺭ ﻤﻥ >= :ﺍﻜﺒﺭ ﻤﻥ ﺍﻭ ﻴﺴﺎﻭﻯ ﻤﺜﻼ a=5 , b=6 z=a 0 ) && ( a< bﻴﻜﻭﻥ ﻨﺎﺘﺞ ﻫﺫﺍ ﺍﻟﺘﻌﺒﻴﺭ trueﺤﻴﺙ ﺍﻥ ﻨﺎﺘﺞ a>0ﺼﺤﻴﺢ ﻭﺍﻴﻀﺎ ﻨﺎﺘﺞ a , > , ==6)&&(c==119 )'(i>6)||(c='w )(f100 )(c!='p')||((i+f)=6)&&(c==119 ;)'b2= (i>6)||(c=='w ;)b3=(f100 ;)b4=(c!='p')||((i+f)