Createcalculatorbyvb6

  • Uploaded by: Roozbeh Razavi
  • 0
  • 0
  • April 2020
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Createcalculatorbyvb6 as PDF for free.

More details

  • Words: 3,275
  • Pages: 13
‫ﺳﺎﺧﺖ ﻣﺎﺷﲔ ﺣﺴﺎب آﺎﻣﭙﻴﻮﺗﺮي‬ ‫ﺑﺎ اﺳﺘﻔﺎدﻩ از ‪VB 6‬‬

‫‪O‬‬ ‫‪M‬‬

‫ﻣﺴﻌﻮد آﺎﻳﺪﺧﻮردﻩ‬

‫‪[email protected]‬‬

‫‪.C‬‬

‫‪R‬‬ ‫‪D‬‬

‫ﻣﻘﺪﻣﻪ ‪:‬‬

‫‪E‬‬ ‫‪V‬‬

‫اﳒﻤﻦ ‪:‬‬ ‫‪www.irankorea.com/masoudarticle‬‬

‫هﻤ ﺎن ﻃ ﻮر آ ﻪ ﻣ ﻲ داﻧﻴ ﺪ ‪ ،‬وﻳ ﮋوال ﺑﻴ ﺴﻴﻚ )‪ (Visual Basic‬زﺑ ﺎن ﺑﺮﻧﺎﻣ ﻪ ﻧﻮﻳ ﺴﻲ‬ ‫ﻗﺪرﺗﻤﻨﺪي ﺗﺤﺖ وﻳﻨﺪوز ﻣﻲ ﺑﺎﺷﺪ آﻪ ﻣﺤﺼﻮﻟﻲ از ﺷ ﺮآﺖ ﻣﻌﺘﺒ ﺮ ‪ Microsoft‬اﺳ ﺖ و‬

‫‪.P‬‬

‫ﺑﺎ اﺳﺘﻔﺎدﻩ از ﺁن ﻣﻲ ﺗﻮان ﺑﺮﻧﺎﻣﻪ هﺎي ﺗﺤﺖ وﻳﻨﺪوز را ﺑﻪ ﺁﺳﺎﻧﻲ و ﺑﻪ ﺳﺮﻋﺖ ﺗﻬﻴﻪ ﻧﻤﻮد‬

‫‪W‬‬ ‫‪W‬‬

‫‪ .‬در اﻳﻦ ﻣﻘﺎﻟﻪ ﻣﺎ ﻗﺼﺪ دارﻳﻢ ﻳﻚ ﻣﺎﺷﻴﻦ ﺣﺴﺎب آﺎر ﺁﻣﺪ را ﺑﺎ اﺳﺘﻔﺎدﻩ از وﻳ ﮋوال ﺑﻴ ﺴﻴﻚ‬ ‫در ﻗﺎﻟﺐ ﺁﻣﻮزﺷﻲ ‪ ،‬ﺑﻪ ﺻﻮرت راهﻨﻤﺎي ﮔﺎم ﺑﻪ ﮔﺎم ﺑﺴﺎزﻳﻢ و ﺷﻤﺎ ﻋﺰﻳ ﺰان را ﺗﻮاﻧ ﺎ در‬ ‫ﺳﺎﺧﺖ ﻣﺎﺷﻴﻦ ﺣﺴﺎب هﺎي ﻣﺮﺑﻮط ﺑﻪ ﺗﺨﺼﺼﺘﺎن آﻨﻴﻢ ) هﻤ ﺎﻧﻄﻮر آ ﻪ ﻣ ﻲ داﻧﻴ ﺪ ﻣﺎﺷ ﻴﻦ‬

‫‪W‬‬

‫ﺣﺴﺎب وﻳﻨﺪوز ﺑﺴﻴﺎري از اﻣﻜﺎﻧﺎت ﻣﻬﻢ را دارا ﻧﻴﺴﺖ ‪ (.‬اﻳﻦ ﻗﻄﻌﺎ ﺗﻤﺮﻳﻦ ﻣﻨﺎﺳﺒﻲ ﺑﺮاي‬ ‫ﻋﻼﻗﻪ ﻣﻨﺪان ﺑﻪ اﻳﻦ زﺑﺎن ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ اﺳﺖ ‪ ،‬ﺿﻤﻦ اﻳﻨﻜﻪ ﻧﺘﻴﺠﻪ و ﻣﺤﺼﻮل آﺎر ه ﻢ ‪،‬‬

‫ﻧﺮم اﻓﺰاري ﻗﺎﺑﻞ اﺳﺘﻔﺎدﻩ و ﺟﺎﻟﺐ اﺳﺖ ‪ .‬اﻳﻦ را ﻧﻴﺰ ﺑﺎﻳﺪ ﻣﺘﺬآﺮ ﺷﻮﻳﻢ آﻪ هﺮﭼﻨ ﺪ در اﻳ ﻦ‬ ‫ﻣﻘﺎﻟﻪ ﺳﻌﻲ ﺷﺪﻩ ﺑﺎ زﺑﺎﻧﻲ ﺳ ﺎدﻩ ﺑ ﻪ ﺟﺰﺋﻴ ﺎت ﭘﺮداﺧﺘ ﻪ ﺷ ﻮد اﻣ ﺎ ﺑ ﺎ اﻳ ﻦ وﺟ ﻮد ه ﻢ ﻧﻴ ﺎز ﺑ ﻪ‬ ‫ﺁﺷﻨﺎﻳﻲ ﻣﺨﺘﺼﺮ ﺷﻤﺎ ﺑﺎ وﻳﮋوال ﺑﻴﺴﻴﻚ و اﺻﻮل ﺑﺮﻧﺎﻣﻪ ﻧﻮﻳﺴﻲ دارد ‪.‬‬ ‫ﺳﺎﺧﺖ ﻣﺎﺷﻴﻦ ﺣﺴﺎب آﺎﻣﭙﻴﻮﺗﺮي‬ ‫‪1‬‬

‫ﻣﺮﺣﻠﻪ اول ‪:‬‬ ‫ﻃﺮاﺣﻲ ﻣﺎﺷﻴﻦ ﺣﺴﺎب‬ ‫ﻃﺮاﺣﻲ اوﻟﻴﻦ ﻗ ﺪم در ﺑﺮﻧﺎﻣ ﻪ ﻧﻮﻳ ﺴﻲ و ﺑﺨ ﺼﻮص ﺑﺮﻧﺎﻣ ﻪ ﻧﻮﻳ ﺴﻲ ﺗﺤ ﺖ وﻳﻨ ﺪوز اﺳ ﺖ و اهﻤﻴﺘ ﻲ‬ ‫وﻳ ﮋﻩ در ﺟ ﺬب آ ﺎرﺑﺮ دارد ‪ .‬ﻧ ﺮم اﻓ ﺰاري آ ﻪ از ﺳ ﻮي ﻳ ﻚ ﺑﺮﻧﺎﻣ ﻪ ﻧ ﻮﻳﺲ اراﺋ ﻪ ﻣ ﻲ ﺷ ﻮد ‪ ،‬اﮔ ﺮ‬ ‫ﻃﺮاﺣﻲ آﺎرﺑﺮ ﭘﺴﻨﺪي ﻧﺪاﺷﺘﻪ ﺑﺎﺷﺪ ﻧﻤﻲ ﺗﻮاﻧﺪ ﺟﺎﻳﮕﺎﻩ ﻗﺎﺑﻞ ﻗﺒﻮﻟﻲ در ﺑﻴﻦ ﻣﺮدم داﺷ ﺘﻪ ﺑﺎﺷ ﺪ و ﺧﻴﻠ ﻲ‬

‫‪O‬‬ ‫‪M‬‬

‫زود از دور ﺧﺎرج ﻣﻲ ﺷﻮد ‪ ،‬هﺮ ﭼﻨﺪ ﻧﺮم اﻓﺰاري آﺎرا و ﻗﺪرﺗﻤﻨﺪ ﺑﺎﺷﺪ ‪.‬‬ ‫اوﻟﻴﻦ ﻗﺪم ﺗﻨﻈﻴﻢ اﻧﺪازۀ ﺳﺎﻳﺰ ﻓﺮﻣﻲ اﺳﺖ آﻪ ‪ VB‬در اﺧﺘﻴﺎر ﻣﺎ ﻗﺮار ﻣﻲ دهﺪ ‪ .‬آﻪ ﻣ ﺎ ﺑﺎﻳ ﺪ ﺑ ﻪ ﮔﻮﻧ ﻪ‬

‫‪.C‬‬

‫اي ﺁن را ﺗﻨﻈﻴﻢ آﻨﻴﻢ آﻪ ﻧﻪ ﺟﺎي ﺧﺎﻟﻲ ﺑﻴﺶ از ﺣﺪ داﺷﺘﻪ ﺑﺎﺷﻴﻢ و ﻧﻪ ﻓﻀﺎي آﻢ ﺑﺎﺷﺪ ‪.‬‬ ‫ﺑﺮاي اﻳﺠﺎد آﻠﻴﺪهﺎي ﻣﺎﺷ ﻴﻦ ﺣ ﺴﺎب از ﺷ ﻲ ‪ Command Button‬اﺳ ﺘﻔﺎدﻩ آﻨﻴ ﺪ و ﻣﻴ ﺰان اﺳ ﺘﻔﺎدﻩ‬

‫‪E‬‬ ‫‪V‬‬

‫هﻢ ﺑﻪ اﻧﺪازﻩ اي اﺳﺖ آ ﻪ ﻣ ﻲ ﺧﻮاهﻴ ﺪ ﻣﺎﺷ ﻴﻦ ﺣ ﺴﺎﺑﺘﺎن ﮔ ﺴﺘﺮدﻩ ﺑﺎﺷ ﺪ ‪ .‬ﺧﻴﻠ ﻲ ه ﺎ دوﺳ ﺖ دارﻧ ﺪ ﺑ ﺎ‬ ‫دادن ﻳﻚ ﻣﻌﺎدﻟﻪ و زدن ﻳﻚ آﻠﻴﺪ رﻳﺸﻪ ﻳﺎ رﻳﺸﻪ هﺎي ﻣﻌﺎدﻟﻪ ﺷ ﺎن ﺑﺪﺳ ﺖ ﺁﻳ ﺪ و ﺧﻴﻠ ﻲ ه ﺎ ه ﻢ دوﺳ ﺖ‬ ‫دارﻧﺪ ﺗﺎﺑﻊ ﺁرك ﺗﺎﻧﮋاﻧﺖ را ﺑﻪ ﺻﻮرت ﺁﻣﺎدﻩ روي ﻣﺎﺷﻴﻦ ﺣﺴﺎﺑﺸﺎن ﺑﺎﺷﺪ ‪ .‬ﺑﻪ اﻧﺪازﻩ ﺧﺪﻣﺎﺗﻲ آﻪ از‬

‫‪R‬‬ ‫‪D‬‬

‫ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﻣﻲ ﺧﻮاهﻴﻢ ﺑﺎﻳﺪ ﺑﺮاي ﺁن آﻠﻴﺪ اﻳﺠﺎد آﻨﻴﻢ ‪.‬‬

‫هﻤﭽﻨﻴﻦ ﻣﻴﺘﻮاﻧﻴﻢ از ﺷﻲ هﺎي ‪ Label‬ﻳﺎ ‪ TEXT BOX‬ﺑﺮاي ﺳﺎﺧﺖ ﻣﺎﻧﻴﺘﻮر ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﺑﻬ ﺮﻩ‬

‫‪.P‬‬

‫ﺑﺒﺮﻳﻢ ‪.‬داﻧﺴﺘﻦ اﺻﻮل ﻃﺮاﺣﻲ ﺑﺮگ ﺑﺮﻧﺪﻩ اي ﺑﺮاي هﺮ ﺑﺮﻧﺎﻣ ﻪ ﻧ ﻮﻳﺲ اﺳ ﺖ ‪ .‬آﺘ ﺎب ه ﺎي ﺑ ﺴﻴﺎري‬ ‫در اﻳﻦ زﻣﻴﻨﻪ ﺑﻪ ﭼﺎپ رﺳﻴﺪﻩ اﻧﺪ و ﻣﺎ هﻢ ﻣﻄﺎﻟﺒﻲ را ﺑﻪ ﺷﻤﺎ ﻋﺮﺿﻪ ﻣﻲ دارﻳﻢ ‪:‬‬

‫‪W‬‬ ‫‪W‬‬

‫‪ .1‬اﻃﻼﻋﺎت روي ﺻﻔﺤﻪ ﻧﻤﺎﻳﺶ ﺑﻪ ﺻﻮرت ﻗﺮﻳﻨﻪ و ﺗﺮاز ﺷﺪﻩ ﺑﻪ ﻧﻈﺮ ﺁﻳﺪ‬

‫‪ .2‬ﻃﺮاﺣﻲ ﺑﺎﻳﺪ اﻓﻘ ﻲ ﺑﺎﺷ ﺪ ‪ ،‬ﻧ ﻪ ﻋﻤ ﻮدي و اﻳ ﻦ ﺑ ﺪان ﻣﻌﻨﺎﺳ ﺖ ﭼﻨ ﺪ ﺳ ﺘﻮﻧﻲ ﺑﺎﺷ ﺪ و ﻧﺒﺎﻳ ﺪ هﻤ ﻪ‬ ‫ﻓﻀﺎ ‪ ،‬ﺑﻪ آﺎر ﮔﺮﻓﺘﻪ ﺷﻮد ﺑﻠﻜﻪ ﺑﺎﻳﺪ ﻗﺴﻤﺘﻲ از ﺁن ﺧﺎﻟﻲ ﺑﻤﺎﻧﺪ ‪.‬‬ ‫ﻣﻘﺪاري ﻓﻀﺎي ﺧﺎﻟﻲ ﻣﻨﻈﻮر ﮔﺮدد ‪.‬‬

‫‪W‬‬

‫‪ .3‬آﻠﻴﺪ هﺎي ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﻧﺒﺎﻳﺪ ﺑﻪ ﺻﻮرت ﻓﺸﺮدﻩ و ﭼﺴﺒﻴﺪﻩ ﺑﻪ هﻢ ﻗﺮار ﮔﻴﺮد ‪ ،‬ﺑﻠﻜﻪ ﺑﻴﻦ ﺁﻧﻬﺎ‬

‫‪ .4‬آﻠﻴ ﺪ ه ﺎي ﺑ ﻪ ﺻ ﻮرت دﺳ ﺘﻪ ﺑﻨ ﺪي از ه ﻢ ﺟ ﺪا ﺑﺎﺷ ﻨﺪ ‪ ،‬ﻣ ﺜﻼ آﻠﻴ ﺪ ه ﺎي ﻋ ﺪدي و آﻠﻴ ﺪ ه ﺎي‬ ‫ﻋﻤﻠﮕﺮ از هﻢ ﺑﻪ ﺻﻮرت ﻣﺠﻤﻮﻋﻪ ﺟﺪا ﺑﺎﺷﻨﺪ ‪.‬‬ ‫‪ .5‬ﺑﻬﺘﺮاﺳﺖ ﻋﻨﻮان هﺮ آﻠﻴﺪ روي ﺧﻮد آﻠﻴﺪ ﻗﺮار ﮔﻴﺮد و آﻠﻴ ﺪ ه ﺎي ه ﻢ ﺧ ﺎﻧﻮادﻩ ﺑ ﻪ ﻳ ﻚ رﻧ ﮓ‬ ‫ﺑﺎﺷﻨﺪ ‪.‬‬ ‫‪2‬‬

‫‪ .6‬ﺳﺎﻳﺰ آﻠﻴﺪ هﺎ و ﻣ ﺎﻧﻴﺘﻮر ﻣﺎﺷ ﻴﻦ ﺣ ﺴﺎب اﻧ ﺪازﻩ ﺑﺎﺷ ﺪ ‪ ،‬ﻳﻌﻨ ﻲ ﻧ ﻪ ﺁﻧﻘ ﺪر ﺑ ﺰرگ و زﻧﻨ ﺪﻩ و ﻧ ﻪ‬ ‫ﺁﻧﻘﺪر آﻮﭼﻚ و ﺁزار دهﻨﺪﻩ ‪.‬‬ ‫‪ .7‬ﻧﻮع ﻓﻮﻧﺖ و اﻧﺪازﻩ ﻋﻨﻮان آﻠﻴﺪ هﺎ ﻣﺘﻨﺎﺳﺐ ﺑﺎ ﺳﺎﻳﺰ ﺁن درﻧﻈﺮ ﮔﺮﻓﺘﻪ ﺷﻮد ‪.‬‬ ‫‪ .8‬رﻧﮓ زﻣﻴﻨﻪ و ﻗﻠﻢ در ﻣﺎﻧﻴﺘﻮر ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﻣﺘﻤﺎﻳﺰ ﺑﺎﺷﻨﺪ ‪.‬‬ ‫‪ .9‬ﺑﻬﺘﺮ اﺳﺖ رﻧﮓ آﻠﻴﺪ هﺎ هﻢ ﺗﺎﺣﺪي از رﻧﮓ زﻣﻴﻨﻪ ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﻣﺘﻔﺎوت ﺑﺎﺷﻨﺪ ‪.‬‬

‫‪O‬‬ ‫‪M‬‬

‫‪.10‬‬

‫ﺗﻮﺟﻪ ﺑﻪ رﻧﮓ ﺁﻣﻴﺰي ﺑﺴﻴﺎر ﻣﻬﻢ اﺳﺖ ‪،‬از ﻳﻚ ﻃﺮف اﻧﺘﺨ ﺎب رﻧ ﮓ درﺳ ﺖ ﺑﺎﻋ ﺚ‬

‫ﺟﻠﺐ ﺗﻮﺟﻪ آﺎرﺑﺮ ﻣﻲ ﺷﻮد و از ﻃﺮف دﻳﮕ ﺮ اﺳ ﺘﻔﺎدﻩ از رﻧ ﮓ ه ﺎي ﻧﺎﻣﻨﺎﺳ ﺐ از ﺧﻮاﻧ ﺎﻳﻲ‬ ‫ﻣﻲ آﺎهﺪ و ﺑﺎﻋﺚ ﺧﺴﺘﮕﻲ ﭼﺸﻢ ﻣﻲ ﺷﻮد ‪.‬‬

‫‪.C‬‬

‫‪.11‬‬

‫از ﻣﺨﻠﻮط رﻧﮓ هﺎي ﺗﻴﺮﻩ ﺧﻮدداري ﺷﻮد و هﺮﮔ ﺰ رﻧ ﮓ ﺁﺑ ﻲ ﺗﻴ ﺮﻩ ﺑ ﺎ ﭘ ﻴﺶ زﻣﻴﻨ ﻪ‬

‫ﻗﺮﻣﺰ و ﻳﺎ ﺑﺮﻋﻜﺲ ﺗﺮآﻴﺐ ﻧﮕﺮدد ‪.‬‬

‫‪E‬‬ ‫‪V‬‬

‫‪.12‬‬

‫اﺳﺘﻔﺎدﻩ از رﻧﮓ ﻗﺮﻣﺰ ﺑﻪ ﻋﻨﻮان رﻧﮓ ﻓﻮﻧﺖ )ﻗﻠﻢ ( آﻠﻴﺪ هﺎي ﻋﻤﻠﮕﺮ ﺑﺴﻴﺎر ﻣﻨﺎﺳ ﺐ‬

‫اﺳﺖ و در ﻣﻘﺎﺑﻞ اﺳﺘﻔﺎدﻩ از رﻧﮓ هﺎي ﺁﺑﻲ و ﺳﺒﺰ ﺑﺮاي ﻧﻤﺎﻳﺶ آﻠﻴﺪ هﺎي ﻋﺪدي ﻗﺎﺑﻞ ﻗﺒ ﻮل‬ ‫اﺳﺖ ‪.‬‬

‫‪R‬‬ ‫‪D‬‬

‫‪.13‬‬

‫اﻟﮕﻮ ﺑﺮداري ﻧﺴﺒﻲ ﻧﻪ آﭙﻲ ﺑﺮداري ﻋﻴﻨﻲ از ﻣﺎﺷﻴﻦ ﺣﺴﺎب وﻳﻨ ﺪوز و ﺳ ﺎﻳﺮ ﻣﺎﺷ ﻴﻦ‬

‫ﺣﺴﺎب هﺎي ﻣﻌﺘﺒﺮ ﺑﺮاي ﭘﻴﺸﺮﻓﺖ ﻣﺎ ﺑﺴﻴﺎر ﻣﻔﻴﺪ اﺳﺖ ‪.‬‬

‫ﻣﺮﺣﻠﻪ دوم ‪:‬‬ ‫آﺪ ﻧﻮﻳﺴﻲ ﻣﺎﺷﻴﻦ ﺣﺴﺎب‬

‫‪W‬‬ ‫‪W‬‬

‫‪.P‬‬

‫ﭘﺲ از ﻃﺮاﺣﻲ ﻧﻮﺑﺖ ﺑﻪ آﺪ ﻧﻮﻳﺴﻲ آﻪ اﺻﻠﻲ ﺗﺰﻳﻦ ﺑﺨﺶ در ﺳﺎﺧﺖ ﻧﺮم اﻓﺰار اﺳﺖ ﻣﻲ رﺳﺪ ‪.‬‬

‫‪W‬‬

‫ﻣﺎ در اﻳ ﻦ ﻗ ﺴﻤﺖ ﺷ ﺮوع ﺑ ﻪ ﺑﺮﻧﺎﻣ ﻪ ﻧﻮﻳ ﺴﻲ ﻣﺎﺷ ﻴﻦ ﺣ ﺴﺎب ﻣ ﻲ آﻨ ﻴﻢ ‪ ،‬ﺑ ﻪ ﺗﻌﺒﻴ ﺮي ﺑ ﻪ ﻋﻨﺎﺻ ﺮ‬ ‫روي ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﺟﺎن ﻣﻲ ﺑﺨﺸﻴﻢ ‪ .‬ﺗﻤﺎم ﺳﻌﻲ ﻣﺎ در اﻳﻦ ﻣﺮﺣﻠ ﻪ ﻧﻮﺷ ﺘﻦ ﺑﺮﻧﺎﻣ ﻪ اي اﺳ ﺖ آ ﻪ‬ ‫ﺑﻪ ﺧﻮﺑﻲ آﺎر آﻨﺪ و آﺎرﺑﺮ را ﺑﺎ ﭘﻴﻐﺎم ‪ ERROR‬روﺑﺮو ﻧﻜﻨﺪ ‪.‬‬

‫هﻤﺎﻧﻄﻮر آﻪ ﮔﻔﺘﻴﻢ ﻣﺎ ﻣﻲ ﺗﻮاﻧﻴﻢ ﺑﺮاي اﻳﺠ ﺎد ﻣ ﺎﻧﻴﺘﻮر از ‪ 2‬ﺷ ﻲ ‪ LABEL‬ﻳ ﺎ ‪TEXT BOX‬‬ ‫ﺑ ﻪ دﻟﺨ ﻮاﻩ اﺳ ﺘﻔﺎدﻩ آﻨ ﻴﻢ ) اﮔ ﺮ از ‪ LABEL‬اﺳ ﺘﻔﺎدﻩ آﻨ ﻴﻢ ‪ ،‬ﺑ ﺮاي ﻧﻤ ﺎﻳﺶ اﻋ ﺪاد ‪ ،‬ﺧﺎﺻ ﻴﺖ‬

‫‪3‬‬

‫‪ Caption‬اﻳﻦ ﺷﻲ را ﺗﻐﻴﻴﺮ ﻣﻲ دهﻴﻢ و اﮔﺮ از ‪ TEXT BOX‬ﺑﺎﻳﺪ ﺑﺎ ﺧﺎﺻﻴﺖ ‪ TEXT‬ﺳ ﺮ‬ ‫وآﻠﻪ ﺑﺰﻧﻴﻢ ‪( .‬‬ ‫ﻣﺎ در اﻳﻨﺠﺎ از ﺷﻲ ‪ Label‬اﺳﺘﻔﺎدﻩ ﻣﻲ آﻨﻴﻢ و ﻧﺎم ﺁن را ‪ Lb1‬ﻣﻲ ﮔﺬارﻳﻢ ‪.‬‬ ‫ﻧﻘﺶ ﻣﺘﻐﻴﺮ هﺎﻳﻲ آﻪ ﺑﻪ ﺻﻮرت ﺳﺮاﺳ ﺮي )‪ (PUBLIC‬ﺗﻌﺮﻳ ﻒ ﻣ ﻲ آﻨ ﻴﻢ ﺑ ﺴﻴﺎر ﻣﻬ ﻢ اﺳ ﺖ ‪،‬‬ ‫ﭼﻮﻧﻜﻪ ﻧﮕﻬﺪارﻧﺪﻩ ﻣﻮﻗﺖ اﻋﺪاد ﻣﺎ هﺴﺘﻨﺪ ‪.‬‬

‫‪O‬‬ ‫‪M‬‬

‫ﻣﺘﻐﻴﺮ هﺎ را در ﻗﺴﻤﺖ ‪ General‬ﭘﻨﺠﺮﻩ آﺪ ﻧﻮﻳﺴﻲ ﺑﻪ ﺷﻜﻞ زﻳﺮ ﺗﻌﺮﻳﻒ ﻣﻲ آﻨﻴﻢ ‪:‬‬ ‫‪Public a,b,Memory,Fact as Double‬‬ ‫‪Public S as string‬‬

‫‪.C‬‬

‫ﺗﻌﺪاد ﻣﺘﻐﻴﺮ هﺎ در اﻳﻦ ﺑﺮﻧﺎﻣﻪ ﺑﻪ ‪ 4‬ﻋﺪد ﻣﻲ رﺳﺪ و دﻟﻴﻞ ﺁﻧﻜﻪ ﺁﻧﻬﺎ را از ﻧﻮع اﻋﺸﺎري ﺑ ﺎ دﻗ ﺖ‬ ‫ﻻ ﻣﻤﻜﻦ اﺳﺖ ﺑﺎ اﻋﺪاد اﻋﺸﺎري را ﺟﻤﻊ و ﺗﻔﺮﻳﻖ آﻨ ﻴﻢ ﺛﺎﻧﻴ ًﺎ ﻣﻤﻜ ﻦ اﺳ ﺖ رﻗ ﻢ‬ ‫ﺑﺎﻻ اﻳﻦ ﺑﻮد آﻪ او ً‬

‫‪E‬‬ ‫‪V‬‬

‫اﻋﺪاد ﺑﺎﻻ ﺑﺎﺷﺪ ‪.‬‬

‫اﺳﺘﻔﺎدﻩ از ﻣﺘﻐﻴﺮ ‪ Memory‬ﺟﻬ ﺖ اﺳ ﺘﻔﺎدﻩ در ﺣﺎﻓﻈ ﻪ ﻣﺎﺷ ﻴﻦ ﺣ ﺴﺎب ﺑ ﻮدﻩ ‪ ،‬و آ ﺎرﺑﺮد ﻣﺘﻐﻴ ﺮ‬ ‫‪ Fact‬در ﻣﺤﺎﺳﺒﻪ ﻓﺎآﺘﻮرﻳﻞ اﺳﺖ ‪ ،‬آﺎرﺑﺮد ﺳﺎﻳﺮ ﻣﺘﻐﻴﺮ هﺎ را در اداﻣﻪ ﺑﺮرﺳﻲ ﻣﻲ آﻨﻴﻢ ‪.‬‬

‫‪R‬‬ ‫‪D‬‬

‫آﺪ ﻧﻮﻳﺴﻲ آﻠﻴﺪ هﺎي ﻋﺪدي ‪.:‬‬

‫ﺑ ﺮاي اﻧﺠ ﺎم اﻋﻤ ﺎﻟﻲ ﺑ ﻴﻦ دو ﻋ ﺪد ﻧﻴ ﺎز ﺑ ﻪ راﺑﻄ ﻪ ﺑ ﻴﻦ آﻠﻴ ﺪ ه ﺎي اﻋ ﺪاد ‪ ،‬ﻋﻤﻠﮕ ﺮ ‪ ،‬ﻣ ﺴﺎوي و‬

‫‪.P‬‬

‫ﻣﺎﻧﻴﺘﻮر ﻣﺎﺷﻴﻦ ﺣﺴﺎب دارﻳﻢ ‪.‬‬

‫ﺑﺮاي ﻧﻤﺎﻳﺶ اﻋﺪاد روي ﻣﺎﻧﻴﺘﻮر ﻣﺜﻼ ﻋﺪد ‪ 1‬از دﺳﺘﻮر زﻳﺮ اﺳ ﺘﻔﺎدﻩ ﻣ ﻲ آﻨ ﻴﻢ)ﺑ ﺎ دوﺑ ﺎر آﻠﻴ ﻚ‬

‫‪W‬‬ ‫‪W‬‬

‫آﺮدن روي هﺮ ﺷﻲ ﻣﻲ ﺗﻮان ﺑﻪ ﻣﺤﻞ ﻣﺨﺼﻮص ﺑﻪ آﺪ ﻧﻮﻳﺴﻲ ﺁن دﺳﺘﺮﺳﻲ ﭘﻴﺪا آﺮد ‪(.‬‬

‫"‪Lb1.Caption=Lb1.Caption+"1‬‬

‫ﻧﻜﺘﻪ ‪ :‬ﺑﺎﻳﺪ ﻗﺒﻞ از ﺷﺮوع ﺑﻪ آﺪ ﻧﻮﻳ ﺴﻲ و در ﻣﺮﺣﻠ ﻪ ﻃﺮاﺣ ﻲ از ﻃﺮﻳ ﻖ ﭘﻨﺠ ﺮﻩ ﺧ ﺼﻮﺻﻴﺎت ‪،‬‬

‫‪W‬‬

‫‪ Caption‬اﻳﻦ ﺷﻲ را ﺗﻬﻲ آﻨﻴﻢ ‪.‬‬

‫ﺑﺮاي ﻧﻮﺷﺘﻦ آﺪ هﺎي ﺳ ﺎﻳﺮآﻠﻴﺪ ه ﺎي ﻋ ﺪدي ﻓﻘ ﻂ رﺷ ﺘﻪ "‪ "1‬را ﺗﻐﻴﻴ ﺮ ﻣ ﻲ ده ﻴﻢ ‪ .‬ﻣ ﺜﻼ ﺑ ﺮاي‬ ‫آﻠﻴﺪ ‪ 2‬آﺪ را ﺑﻪ اﻳﻦ ﺷﻜﻞ ﻣﻲ ﻧﻮﻳﺴﻴﻢ ‪:‬‬ ‫"‪Lb1.Caption=Lb1.Caption+"2‬‬

‫‪4‬‬

‫هﻤﭽﻨﻴﻦ ﺑﺎ ﺗﻐﻴﻴﺮ "‪ "2‬ﺑﻪ" ‪ ".‬ﺑﺮاي آﻠﻴﺪ ﻣﺮﺑﻮط اﻋﺸﺎر ‪ ،‬اﻋﺪاد اﻋﺸﺎري را ﻧﻴﺰ وارد ﻣﺤﺎﺳﺒﻪ‬ ‫آﻨﻴﻢ ‪.‬‬ ‫"‪Lb1.Caption=Lb1.Caption+".‬‬

‫هﻤﺎﻧﻄﻮر آ ﻪ از اﻳ ﻦ دﺳ ﺘﻮر ﭘﻴ ﺪا ﺳ ﺖ آ ﻪ اﻋ ﺪاد ﺑ ﻪ ﺻ ﻮرت رﺷ ﺘﻪ در ﺷ ﻲ ‪ Label‬ﻗ ﺮار ﻣ ﻲ‬

‫‪O‬‬ ‫‪M‬‬

‫ﮔﻴﺮﻧﺪ و ﺑﻪ هﻤﻴﻦ دﻟﻴﻞ از ﻧﻤﺎد " اﺳﺘﻔﺎدﻩ آ ﺮدﻳﻢ ‪ .‬دﻟﻴ ﻞ ﻧﻮﺷ ﺘﻦ ‪ Lb1.Caption‬ﺑﻌ ﺪ از ﻣ ﺴﺎوي‬ ‫اﻳﻦ ﺑﻮد آﻪ ﺑﺎ زدن هﺮ آﻠﻴﺪ ‪ ،‬اﻋﺪاد ﻗﺒﻠﻲ از ﺑﻴﻦ ﻧﺮوﻧﺪ و ﻋﺪد ﺟﺪﻳﺪ ﺑﻌﺪ از ﺁﻧﻬﺎ ﻗﺮار ﺑﮕﻴﺮد ‪.‬‬

‫‪.C‬‬

‫آﺪ ﻧﻮﻳﺴﻲ آﻠﻴﺪهﺎي ﺟﻤﻊ‪،‬ﺿﺮب‪ ،‬ﺗﻘﺴﻴﻢ ‪ ،‬ﺗﻔﺮﻳﻖ ‪:‬‬ ‫ﺑﺎ دوﺑﺎر آﻠﻴﻚ آﺮدن روي ﺷﻲ و رﻓﺘﻦ ﺑﻪ ﺗﺎﺑﻊ ﻣﺨ ﺼﻮص اﻳ ﻦ آﻠﻴ ﺪ و ﻧﻮﺷ ﺘﻦ اﻳ ﻦ ﺳ ﻪ دﺳ ﺘﻮر‬

‫‪E‬‬ ‫‪V‬‬

‫ﻣﻲ ﺗﻮاﻧﻴﻢ اوﻟﻴﻦ ﻋﺪد را ذﺧﻴﺮﻩ آﺮد و ﻣﻨﺘﻈﺮ ﻋﺪد دوم ﻣﺎﻧﺪ ‪.‬‬ ‫)‪a=Val(Lb1.Caption‬‬ ‫""=‪Lb1.caption‬‬

‫‪R‬‬ ‫‪D‬‬

‫"‪S="+‬‬

‫‪.P‬‬

‫در ﺧﻂ اول اﻳﻦ دﺳﺘﻮر ﺑﺎ اﺳﺘﻔﺎدﻩ از ﺗﺎﺑﻊ ‪ VAL‬ارزش ﻋﺪدي رﺷﺘﻪ ﻣﻮﺟ ﻮد در ﺷ ﻲ ‪Label‬‬ ‫را در ﻣﺘﻐﻴﺮ ‪ a‬ذﺧﻴﺮﻩ آﺮدﻳﻢ و در ﺧﻂ دوم ﻣﻘﺪار ﻣﺎﻧﻴﺘﻮر را ﺧﺎﻟﻲ آﺮدﻳﻢ ﺗﺎ ﺁﻣﺎدﻩ ﺑﺮاي ﮔﺮﻓﺘﻦ‬ ‫آﻨﺪ ‪.‬‬

‫‪W‬‬ ‫‪W‬‬

‫ﻋﺪد ﺟﺪﻳﺪ ﺑﺎﺷﺪ ‪ .‬ﺧﻂ ﺳﻮم هﻢ ﺑﺮاي اﻳﻦ اﺳﺖ آ ﻪ آﻠﻴ ﺪ ﻣ ﺴﺎوي ﺑﻔﻬﻤ ﺪ آ ﻪ ﺑﺎﻳ ﺪ دو ﻋ ﺪد را ﺟﻤ ﻊ‬ ‫ﻧﻜﺘﻪ ‪ :‬ﻣﺘﻨﺎﺳﺐ ﺑﺎ هﺮ ﻋﻤﻠﮕﺮ از ﻣﻴﺎن ﺟﻤﻊ و ﺗﻔﺮﻳﻖ و ﺿﺮب و ﺗﻘﺴﻴﻢ ﻣﻘﺪار اﻳ ﻦ ﻣﺘﻐﻴ ﺮ رﺷ ﺘﻪ‬ ‫ﻣﺜﻼ ﺑﺮاي ﺗﻔﺮﻳﻖ و در ﻗﺴﻤﺖ ﻣﺮﺑﻮط ﺑﻪ ﺁن اﻳﻦ دﺳﺘﻮرهﺎ را ﻣﻲ ﻧﻮﻳﺴﻴﻢ ‪.‬‬

‫‪W‬‬

‫اي ﺗﻐﻴﻴﺮ ﻣﻲ آﻨﺪ ‪.‬‬

‫)‪a=Val(Lb1.Caption‬‬ ‫""=‪Lb1.caption‬‬ ‫"‪S="-‬‬ ‫آﺪ ﻧﻮﻳﺴﻲ آﻠﻴﺪ ﻣﺴﺎوي ‪:‬‬

‫‪5‬‬

‫ﺑ ﺎ ﻧﻮﺷ ﺘﻦ دﺳ ﺘﻮرات زﻳ ﺮ در ﻣﻨﻄﻘ ﻪ ﻣﺨ ﺼﻮص ﺑ ﻪ آﻠﻴ ﺪ ﻣ ﺴﺎوي آ ﻪ ﺑ ﺎ ‪ Private‬ﺷ ﺮوع و ﺑ ﺎ‬ ‫‪ End Sub‬ﺧﺎﺗﻤﻪ ﻣﻲ ﻳﺎﺑﺪ ﻣﻲ ﺗﻮاﻧﻴﻢ ﺣﺎﺻﻞ را ﻣﺸﺎهﺪﻩ آﺮد ‪:‬‬ ‫)‪b=Val(Lb1.Caption‬‬ ‫‪select case S‬‬ ‫‪case "+" : lb1.caption=a+b‬‬

‫‪O‬‬ ‫‪M‬‬

‫‪case "*" : lb1.caption=a*b‬‬ ‫‪case "-" : lb1.caption=a-b‬‬ ‫‪End select‬‬

‫‪.C‬‬

‫‪if (S="*") And (b>0) then‬‬ ‫‪lb1.caption=a/b‬‬

‫‪E‬‬ ‫‪V‬‬

‫‪Else‬‬

‫" ‪lb1.caption=" Cannot Division By Zero‬‬

‫‪R‬‬ ‫‪D‬‬

‫‪End if‬‬ ‫‪a=0‬‬ ‫‪b=0‬‬

‫‪.P‬‬

‫""=‪s‬‬

‫ﺧﻂ اول اﻳﻦ دﺳﺘﻮرات ‪ ،‬هﺮ ﺁﻧﭽﻪ آﻪ در ﺷﻲ ‪ Label‬اﺳ ﺖ ‪ ،‬ﺗﺒ ﺪﻳﻞ ﺑ ﻪ ﻋ ﺪد آ ﺮدﻩ ) ﺑ ﺎ اﺳ ﺘﻔﺎدﻩ‬

‫‪W‬‬ ‫‪W‬‬

‫از ﺗﺎﺑﻊ ‪ ( Val‬و در ﻣﺘﻐﻴﺮ ‪ b‬ﻗﺮار ﻣﻲ دهﺪ ‪ .‬در اداﻣ ﻪ ﺑﻨ ﺎ ﺑ ﻪ ﻋﻤﻠﮕ ﺮي آ ﻪ از ﻗﺒ ﻞ ﺗﻌﻴ ﻴﻦ ﺷ ﺪﻩ‬ ‫ﺣﺎﺻﻞ دو ﻋﺪد ‪ a‬و ‪ b‬را ﻣﺤﺎﺳﺒﻪ ﻣﻲ آﻨﺪ ‪ .‬دﺳﺘﻮر ‪ Select Case‬ﻳﻚ دﺳﺘﻮر ﺷﺮﻃﻲ اﺳﺖ آﻪ‬ ‫ﺑﻨ ﺎ ﺑ ﻪ ﻣﻮﺟﻮدﻳ ﺖ ﻣﺘﻐﻴ ﺮ ‪ S‬ﺣﺎﺻ ﻞ را در ﻣ ﺎﻧﻴﺘﻮر ﺑ ﻪ ﻧﻤ ﺎﻳﺶ در ﻣ ﻲ ﺁورد ‪ .‬دﺳ ﺘﻮر ‪ IF‬ه ﻢ‬

‫‪W‬‬

‫ﺑﺮرﺳﻲ ﻣﻲ آﻨﺪ آﻪ اﮔﺮ ﻣﺤﺘ ﻮاي ﻣﺘﻐﻴ ﺮ ‪ S‬ﺑﺮاﺑ ﺮ ﺗﻘ ﺴﻴﻢ ﺑ ﻮدﻩ و ﻣﺘﻐﻴ ﺮ ‪ b‬ﻋ ﺪدي ﻏﻴ ﺮ از ﺻ ﻔﺮ‬ ‫ﺑﺎﺷﺪ ) ﭼﻮﻧﻜﻪ ﺗﻘﺴﻴﻢ هﺮ ﻋﺪد ﺑﺮ ﺻﻔﺮ ﺗﻌﺮﻳﻒ ﻧﺸﺪﻩ اﺳﺖ و اﮔﺮ اﻳﻨﺠﺎ آﻨﺘﺮل ﻧﺸﻮد ‪ Error‬ﻣﻲ‬ ‫دهﺪ ( ﻋﻤﻞ ﺗﻘﺴﻴﻢ را اﻧﺠﺎم دهﺪ و اﻻ ﭘﻴﻐ ﺎم ﻣﺮﺑﻮﻃ ﻪ ﺑ ﻪ ﻣﻌﻨ ﺎي ﻧﻤ ﻲ ﺗ ﻮاﻧﻢ ﺗﻘ ﺴﻴﻢ ﺑ ﺮ ﺻ ﻔﺮ آ ﻨﻢ‬ ‫روي ﻣﺎﻧﻴﺘﻮر ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﺑﻪ ﻧﻤﺎﻳﺶ در ﻣﻲ ﺁﻳﺪ ‪.‬‬

‫آﺪ ﻧﻮﻳﺴﻲ آﻠﻴﺪ ‪-‬‬

‫‪: +/‬‬

‫‪6‬‬

‫آﺪ ﻣﺮﺑﻮط ﺑﻪ اﻳ ﻦ ﻋﻤ ﻞ ﺑ ﺴﻴﺎر ﺳ ﺎدﻩ و ﻗﺎﺑ ﻞ ه ﻀﻢ اﺳ ﺖ ‪ .‬ﺑ ﺎ ﻗ ﺮار دادن ﺿ ﺮب ﻋﻤﻠﮕ ﺮ – در‬ ‫ﻋﺪد ﻣﻲ ﺗﻮان ﻣﺜﺒﺖ ﻳﺎ ﻣﻨﻔﻲ ﻳﻚ ﻋﺪد را ﺑﺪﺳﺖ ﺁورد ‪ ،‬ﭼﻮﻧﻜﻪ اﮔﺮ ﻋﺪد ﻣﺜﺒ ﺖ ﺑﺎﺷ ﺪ ﺁن را ﻗﺮﻳﻨ ﻪ‬ ‫و ﺑﻪ ﻣﻨﻔﻲ ﺗﺒﺪﻳﻞ ﻣﻲ آﻨﺪ و اﮔﺮ ﻣﻨﻔﻲ ﺑﻪ ﻣﺜﺒﺖ ‪.‬‬ ‫آﺪ زﻳﺮ اﻳﻦ آﺎر را ﻣﻲ آﻨﺪ ‪:‬‬ ‫))‪Lb1.Caption=-(Val(Lb1.Caption‬‬

‫‪O‬‬ ‫‪M‬‬

‫آﺪ ﻧﻮﻳﺴﻲ آﻠﻴﺪ ﻓﺎآﺘﻮر ﻳﻞ ‪:‬‬ ‫ﺑﻌﻀﻲ ﻣﻮاﻗﻊ ﻧﻴﺎز اﺳﺖ آﻪ ﻓﺎآﺘﻮرﻳﻞ ﻳﻚ ﻋﺪد را ﻣﺤﺎﺳﺒﻪ آﻨﻴﻢ ‪ ،‬اﻳﻦ آﺎر ﺑﺮاي اﻋﺪاد آﻮﭼﻚ ﺑ ﻪ‬

‫‪.C‬‬

‫ﺻﻮرت دﺳﺘﻲ ﻗﺎﺑﻞ اﺟﺮاﺳﺖ ‪ ،‬اﻣﺎ ﺑﺮاي اﻋﺪاد ﺑﺰرگ ﺧﻴﺮ ‪.‬‬ ‫ﺟﻬﺖ اﻳﺠﺎد آﻠﻴﺪ ﻓﺎآﺘﻮرﻳﻞ ﺑﺎﻳﺪ ﻣﺮاﺣﻞ زﻳﺮ را ﻃﻲ آﻨﻴﻢ ‪:‬‬

‫‪E‬‬ ‫‪V‬‬

‫‪.1‬ﺳﺎﺧﺖ ﻳﻚ ‪Command Button‬‬ ‫‪.2‬آﺪ ﻧﻮﻳﺴﻲ ﺑﻪ ﺻﻮرت زﻳﺮ ‪:‬‬

‫‪R‬‬ ‫‪D‬‬

‫; ‪Fact=1‬‬

‫)‪For i=1 To Val(Lb1.Caption‬‬ ‫‪Fact=Fact* i‬‬

‫‪.P‬‬

‫‪Next i‬‬

‫‪Lb1.Caption=Fact‬‬

‫‪W‬‬ ‫‪W‬‬

‫آﺪ ﻧﻮﻳﺴﻲ آﻠﻴﺪ ﺟﺬر وﺑﻪ ﺗﻮان‬

‫‪:2‬‬

‫ﺑﺮاي ﮔﺮﻓﺘﻦ ﺟﺬر ﻳﻚ ﻋﺪد از ﺗ ﺎﺑﻊ ‪ SQR‬اﺳ ﺘﻔﺎدﻩ ﻣ ﻲ ﺷ ﻮد و ﻣ ﺎ ﻣ ﻲ ﺗ ﻮاﻧﻴﻢ ﺑ ﺎ ﻧﻮﺷ ﺘﻦ اﻳ ﻦ آ ﺪ‬ ‫ﺑﺮاي آﻠﻴﺪ ﻣﺮﺑﻮﻃﻪ اﻳﻦ ﻣﻬﻢ را ﻣﻴﺴﺮ آﻨﻴﻢ ‪:‬‬

‫‪W‬‬

‫))‪Lb1.Caption= Sqr(Val(Lb1.Caption‬‬

‫اﻳﻦ دﺳﺘﻮر اﺑﺘﺪا رﺷﺘﻪ ه ﺎي ﻣﻮﺟ ﻮد در ﺷ ﻲ ‪ Label‬را ﺑ ﺎ اﺳ ﺘﻔﺎدﻩ از ﺗ ﺎﺑﻊ ‪ Val‬ﺗﺒ ﺪﻳﻞ ﺑ ﻪ ﻋ ﺪد‬ ‫ﻣﻲ آﻨﺪ و ﺳﭙﺲ ﺑﺎ ﺑﻬﺮﻩ ﮔﻴﺮي از ﺗﺎﺑﻊ ‪ Sqr‬ﺟﺬر اﻳﻦ ﻋﺪدرا ﮔﺮﻓﺘﻪ و درﻣ ﺎﻧﻴﺘﻮر ﺑ ﻪ ﻧﻤ ﺎﻳﺶ ﻣ ﻲ‬ ‫ﮔﺬارد ‪.‬‬ ‫ﺑﺮاي ﻣﺤﺎﺳﺒﻪ ﺑﻪ ﺗﻮان ‪ 2‬هﻢ ﻣﻲ ﺗﻮان اﻳﻦ رﺷﺘﻪ آﺪ را ﺑﺮاي آﻠﺪ ﻣﺮﺑﻮﻃﻪ اش ﻧﻮﺷﺖ ‪:‬‬ ‫‪Lb1.Caption= Val(Lb1.Caption)^2‬‬ ‫‪7‬‬

‫ﻋﻼﻣﺖ ^ ﺑﻪ ﻣﻌﻨﺎي " ﺑﻪ ﺗﻮان " اﺳﺖ و ﻣﺎ ﻣﻲ ﺗ ﻮاﻧﻴﻢ ﺑ ﺎ اﺳ ﺘﻔﺎدﻩ از اﻳ ﻦ ﻋﻼﻣ ﺖ ﺗ ﻮان ﻋ ﺪد را‬ ‫ﺑﺪﺳﺖ ﺁورﻳﻢ ‪.‬‬ ‫آﺪ ﻧﻮﻳﺴﻲ آﻠﻴﺪ هﺎي ‪: Sin , Cos , Tan , Cot‬‬ ‫ﺑﺮاي اﻳﻦ آﺎر آﺎﻓﻲ اﺳﺖ آﻪ از ﺗﺎﺑﻊ هﺎي ﺁﻣﺎدﻩ در ‪ VB‬اﺳﺘﻔﺎدﻩ آﻨ ﻴﻢ و آ ﺪ ه ﺎي زﻳ ﺮ را ﺑ ﺮاي‬

‫‪O‬‬ ‫‪M‬‬

‫آﻠﻴﺪهﺎﻳﺸﺎن ﺑﻨﻮﻳﺴﻴﻢ ‪:‬‬ ‫ﻣﺤﺎﺳﺒﻪ ﺳﻴﻨﻮس ‪:‬‬

‫))‪Lb1.Caption=Sin(Val(Lb1.Caption‬‬

‫‪.C‬‬

‫ﻣﺤﺎﺳﺒﻪ آﺴﻴﻨﻮس ‪:‬‬

‫‪E‬‬ ‫‪V‬‬

‫ﻣﺤﺎﺳﺒﻪ ﺗﺎﻧﮋاﻧﺖ ‪:‬‬

‫))‪Lb1.Caption=Cos(Val(Lb1.Caption‬‬ ‫))‪Lb1.Caption=Tan(Val(Lb1.Caption‬‬

‫ﻣﺤﺎﺳﺒﻪ آﺘﺎﻧﮋاﻧﺖ ‪:‬‬

‫‪R‬‬ ‫‪D‬‬

‫)))‪Lb1.Caption=1/(Tan(Val(Lb1.Caption‬‬ ‫از ﺁﻧﺠﺎ آﻪ ﺗﺎﺑﻊ آﺘﺎﻧﮋاﻧﺖ در ‪ VB‬ﻣﻮﺟ ﻮد ﻧﻴ ﺴﺖ از راﺑﻄ ﻪ )‪ 1/Tan(x‬آﺘﺎﻧﮋاﻧ ﺖ را ﺑ ﻪ دﺳ ﺖ‬

‫‪W‬‬

‫‪W‬‬ ‫‪W‬‬

‫‪.P‬‬

‫ﻣﻲ ﺁورﻳﻢ‬

‫‪8‬‬

‫ﻧﻤﻮﻧﻪ اي از ﻣﺎﺷﻴﻦ ﺣﺴﺎب ﻧﻮﺷﺘﻪ ﺷﺪﻩ ﺑﺎ وﻳﮋوال ﺑﻴﺴﻴﻚ ﺑﺎ اﻟﮕﻮ‬ ‫ﺑﺮداري از ﻣﺎﺷﻴﻦ ﺣﺴﺎب وﻳﻨﺪوز ‪98‬‬

‫‪O‬‬ ‫‪M‬‬ ‫‪.C‬‬ ‫‪E‬‬ ‫‪V‬‬ ‫‪R‬‬ ‫‪D‬‬

‫ﻣﺮﺣﻠﻪ ﺳﻮم ‪:‬ﺁﺷﻨﺎﻳﻲ ﺑﺎ ﺗﻮاﺑﻊ ﻣﻬﻢ ‪ VB‬و ﺳ ﺎﺧﺖ ﺗﻮاﺑ ﻊ ﭘﻴﭽﻴ ﺪﻩ‬ ‫در ‪ VB‬وﺟﻮد ﻧﺪارﻧﺪ(‬

‫)ﺗ ﻮاﺑﻌﻲ آ ﻪ‬

‫‪.P‬‬

‫ﺑﺮاﯼ ﻧﻮﺷﺘﻦ ﺑﺮﻧﺎﻣﻪه ﺎﯼ ﻣﻬﻨﺪﺳ ﯽ‪ ،‬ﻣﺤﺎﺳ ﺒﺎﺗﯽ‪ ،‬ﮔﺮاﻓﻴﮑ ﯽ و ﺁﻣ ﺎرﯼ ﻧﻴ ﺎز دارﻳ ﺪ ﺗ ﺎ از ﺑﺮﺧ ﯽ ﺗﻮاﺑ ﻊ‬

‫‪W‬‬ ‫‪W‬‬

‫رﻳﺎﺿ ﯽ اﺳ ﺘﻔﺎدﻩ ﻧﻤﺎﺋﻴ ﺪ‪ .‬وﻳ ﮋوال ﺑﻴ ﺴﻴﮏ ‪ 6‬داراﯼ ﻣﺠﻤﻮﻋ ﻪاﯼ از ﺗﻮاﺑ ﻊ اﺳ ﺖ ﮐ ﻪ ﺑ ﺮاﯼ اﻧﺠ ﺎم‬ ‫ﻣﺤﺎﺳ ﺒﺎت ﻋ ﺪدﯼ ﭘ ﻴﺶ ﺑﻴﻨ ﯽ ﺷ ﺪﻩ اﻧ ﺪ‪ .‬در اداﻣ ﻪ اﻳ ﻦ ﻣﻘﺎﻟ ﻪ اﺑﺘ ﺪا ﺑ ﺎ اﻳ ﻦ ﺗﻮاﺑ ﻊ ﺁﺷ ﻨﺎ ﺷ ﺪﻩ و ﺳ ﭙﺲ‬ ‫ﭼﮕﻮﻧﮕﯽ اﻳﺠﺎد ﺳﺎﻳﺮ ﺗﻮاﺑﻊ رﻳﺎﺿﯽ را ﮐﻪ در ﻣﻴﺎن اﻳﻦ ﻣﺠﻤﻮﻋﻪ وﺟﻮد ﻧﺪارﻧﺪ ﺧﻮاهﻴﺪ دﻳﺪ‪.‬‬

‫ﺗﺎﺑﻊ ﻗﺪرﻣﻄﻠﻖ‪(Abs) :‬‬ ‫ﻣﻘﺪار ﺑﺪون ﻣﺜﺒﺖ ﻳﮏ ﻋﺪد را ﺑﺮﻣﯽﮔﺮداﻧﺪ ‪.‬‬

‫‪W‬‬

‫ﺑﺮرﺳﻲ ﺗﻮاﺑﻊ ﻣﻮﺟﻮد در وﻳﮋوال ﺑﻴﺴﻴﻚ ‪:‬‬

‫ﺗﺎﺑﻊ ﺁرﮎ ﺗﺎﻧﮋاﻧﺖ‪( Atn) :‬‬ ‫ﺧﺮوﺟﯽ اﻳﻦ ﺗﺎﺑﻊ ﻋﺪدﯼ از ﻧﻮع ‪ double‬اﺳﺖ ﮐﻪ ﺑﺮاﺑﺮ زاوﻳﻪاﯼ اﺳﺖ ﮐﻪ ﺗﺎﻧﮋاﻧﺖ ﺁن ﻋﺪد‬ ‫ورودﯼ ﺗﺎﺑﻊ اﺳﺖ ‪.‬‬ ‫‪9‬‬

‫ﺗﺎﺑﻊ ﺗﻮان ﻧﻤﺎﻧﯽ‪( Exp):‬‬ ‫ﺧﺮوﺟﯽ اﻳﻦ ﺗﺎﺑﻊ ﻋﺪدﯼ از ﻧﻮع ‪ double‬اﺳﺖ ﮐﻪ ﺑﺮاﺑﺮ ‪ e‬ﺑﻪ ﺗﻮان ورودﯼ ﺗﺎﺑﻊ اﺳﺖ ‪.‬‬ ‫ﺗﺎﺑﻊ ﮐﻒ ﻳﺎ ﺗﺎﺑﻊ ﺟﺰء ﺻﺤﻴﺢ‪(Int):‬‬ ‫ﻧﺰدﻳﮑﺘﺮﻳﻦ ﻋﺪد ﺻﺤﻴﺢ ﻣﺴﺎوﯼ ﻳﺎ ﮐﻮﭼﮑﺘﺮ ﻧﺴﺒﺖ ﺑﻪ ﻋﺪد ورودﯼ را ﺑﺮﻣﯽﮔﺮداﻧﺪ ‪.‬‬

‫‪O‬‬ ‫‪M‬‬

‫ﺗﺎﺑﻊ ﻟﮕﺎرﻳﺘﻢ ‪( Log ):‬‬

‫ﺧﺮوﺟﯽ اﻳﻦ ﺗﺎﺑﻊ ﻋﺪدﯼ از ﻧﻮع ‪ double‬اﺳﺖ ﮐﻪ ﺑﺮاﺑﺮ ﻟﮕﺎرﻳﻢ ﻃﺒﻴﻌﯽ ﻋﺪد ورودﯼ اﺳﺖ‬ ‫)ﻟﮕﺎرﻳﺘﻢ ﺑﺮ ﻣﺒﻨﺎﯼ ﻋﺪد ‪ e‬ﻳﺎ هﻤﺎن ‪Ln‬‬

‫‪.C‬‬

‫ﺗﺎﺑﻊ ﮔﺮد ﮐﺮدن) ‪( Round‬‬ ‫ورودﯼ اﺳﺖ ‪.‬‬

‫‪E‬‬ ‫‪V‬‬

‫ﺧﺮوﺟﯽ اﻳﻦ ﺗﺎﺑﻊ ﻋﺪدﯼ از ﻧﻮع ‪ double‬اﺳﺖ ﮐﻪ ﺑﺮاﺑﺮ ﻧﺰدﻳﮑﺘﺮﻳﻦ ﻋﺪد ﺻﺤﻴﺢ ﺑﻪ ﻣﻘﺪار ﻋﺪد‬

‫‪R‬‬ ‫‪D‬‬

‫ﺗﺎﺑﻊ ﻋﻼﻣﺖ ‪(Sgn):‬‬

‫ﺧﺮوﺟﯽ اﻳﻦ ﺗﺎﺑﻊ ﻋﺪدﯼ از ﻧﻮع ﺻﺤﻴﺢ اﺳﺖ ﮐﻪ ﻧﺸﺎن دهﻨﺪﻩ ﻋﻼﻣﺖ ﻋﺪد ورودﯼ اﺳﺖ ‪ .‬اﮔﺮ‬ ‫ﺻﻔﺮ ﺑﺎﺷﺪ ﻣﺤﺼﻮل ﺗﺎﺑﻊ ﻋﺪد ‪ -1‬اﺳﺖ ‪.‬‬

‫‪W‬‬

‫‪W‬‬ ‫‪W‬‬

‫‪.P‬‬

‫ﺧﺮوﺟﻲ ﺑﺰرﮔﺘﺮ از ﺻﻔﺮ ﻋﺪد ‪ 1‬را ﺑﺮﻣﻲ ﮔﺮداﻧﺪ ‪ ،‬اﮔﺮ ﺑﺮاﺑﺮ ﺻﻔﺮ ﻋﺪد ‪ 0‬و اﮔﺮ آﻮﭼﻜﺘﺮ از‬

‫‪10‬‬

‫اﻳﺠﺎد ﺳﺎﻳﺮ ﺗﻮاﺑﻊ رﻳﺎﺿﯽ ﮐﻪ در وﻳﮋوال ﺑﻴﺴﻴﮏ ‪ 6‬وﺟﻮد ﻧﺪارﻧﺪ ‪:‬‬ ‫ﺟﺪول زﻳﺮ ﭼﮕﻮﻧﮕﯽ ﻣﺤﺎﺳﺒﻪ ﺳﺎﻳﺮ ﺗﻮاﺑﻊ رﻳﺎﺿﯽ ﮐﻪ در وﻳﮋوال ﺑﻴﺴﻴﮏ ‪ 6‬وﺟﻮد ﻧﺪارﻧﺪ را ﻧﺸﺎن‬ ‫ﻣﯽدهﺪ ‪:‬‬ ‫ﺗﺎﺑﻊ‬ ‫ﺳﮑﺎﻧﺖ‬

‫ﻓﺮﻣﻮل‬ ‫)‪Sec(X) = 1 / Cos(X‬‬

‫‪O‬‬ ‫‪M‬‬

‫)‪Cosec(X) = 1 / Sin(X‬‬

‫ﮐﺴﮑﺎﻧﺖ‬

‫)‪Cotan(X) = 1 / Tan(X‬‬

‫ﮐﺘﺎﻧﮋاﻧﺖ‬

‫‪.C‬‬

‫ﺁرﮎ ﺳﻴﻨﻮس‬

‫ﺁرﮎ ﺳﮑﺎﻧﺖ‬

‫ﺁرﮎ ﮐﺘﺎﻧﮋاﻧﺖ‬

‫ﺗﺎﻧﮋاﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫ﺳﮑﺎﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫ﮐﺘﺎﻧﮋاﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫‪HSin(X) = (Exp(X) - Exp(-X)) / 2‬‬

‫‪HCos(X) = (Exp(X) + Exp(-X)) / 2‬‬

‫))‪HTan(X) = (Exp(X) - Exp(-X)) / (Exp(X) + Exp(-X‬‬

‫))‪HSec(X) = 2 / (Exp(X) + Exp(-X‬‬

‫))‪HCosec(X) = 2 / (Exp(X) - Exp(-X‬‬

‫‪W‬‬

‫ﮐﺴﮑﺎﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫)‪Arccotan(X) = Atn(X) + 2 * Atn(1‬‬

‫‪W‬‬ ‫‪W‬‬

‫ﮐﺴﻴﻨﻮس هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫))‪Arccosec(X) = Atn(X / Sqr(X * X - 1)) + (Sgn(X) - 1) * (2 * Atn(1‬‬

‫‪.P‬‬

‫ﺳﻴﻨﻮس هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫))‪Arcsec(X) = Atn(X / Sqr(X * X - 1)) + Sgn((X) -1) * (2 * Atn(1‬‬

‫‪R‬‬ ‫‪D‬‬

‫ﺁرﮎ ﮐﺴﮑﺎﻧﺖ‬

‫)‪Arccos(X) = Atn(-X / Sqr(1-X * X)) + 2 * Atn(1‬‬

‫‪E‬‬ ‫‪V‬‬

‫ﺁرﮎ ﮐﺴﻴﻨﻮس‬

‫)) ‪Arcsin(X) = Atn(X / Sqr(1-X * X‬‬

‫))‪HCotan(X) = (Exp(X) + Exp(-X)) / (Exp(X) - Exp(-X‬‬

‫ﺁرﮎ ﺳﻴﻨﻮس هﻴﭙﺮﺑﻮﻟﻴﮏ ))‪HArcsin(X) = Log(X + Sqr(X * X + 1‬‬

‫ﺁرﮎ ﮐﺴﻴﻨﻮس هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫ﺁرﮎ ﺗﺎﻧﮋاﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫))‪HArccos(X) = Log(X + Sqr(X * X - 1‬‬

‫‪HArctan(X) = Log((1 + X) / (1 - X)) / 2‬‬

‫‪11‬‬

‫ﺁرﮎ ﺳﮑﺎﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫ﺁرﮎ ﮐﺴﮑﺎﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫ﺁرﮎ ﮐﺘﺎﻧﮋاﻧﺖ هﻴﭙﺮﺑﻮﻟﻴﮏ‬

‫ﻟﮕﺎرﻳﺘﻢ ﺑﺮ ﻣﺒﻨﺎﯼ‪N‬‬

‫)‪HArcsec(X) = Log((Sqr(1-X * X) + 1) / X‬‬

‫)‪HArccosec(X) = Log((Sgn(X) * Sqr(X * X + 1) +1) / X‬‬

‫‪HArccotan(X) = Log((X + 1) / (X - 1)) / 2‬‬

‫)‪LogN(X) = Log(X) / Log(N‬‬

‫‪O‬‬ ‫‪M‬‬

‫اﻋﺪاد ‪ p‬و ‪n‬‬

‫‪.C‬‬

‫ﺑﺮاﯼ اﺳﺘﻔﺎدﻩ از اﻋﺪاد ﭘﯽ و ‪ e‬در ﺑﺮﻧﺎﻣﻪهﺎﯼ ﺧﻮد‪ ،‬ﺛﻮاﺑﺖ زﻳﺮ را ﺗﻌﺮﻳﻒ ﻧﻤﺎﺋﻴﺪ ‪:‬‬

‫‪E‬‬ ‫‪V‬‬

‫‪Const Pi = 3.14159265358979‬‬ ‫‪Const e = 2.71828182845904‬‬

‫وﺑﺮاي ﻧﻤﺎﻳﺶ ﺁن ﻣﻲ ﺗﻮان اﻳﻦ آﺪ را ﺑﺮاي آﻠﻴﺪ ﻣﺮﺑﻮﻃﻪ ﻧﻮﺷﺖ ‪:‬‬

‫‪R‬‬ ‫‪D‬‬

‫‪La1.Caption=Pi‬‬

‫هﻤﭽﻨﻴﻦ ﻋﺪد ﭘﯽ را ﻣﯽﺗﻮان ﺑﻪ ﺻﻮرت زﻳﺮ ﺗﻌﺮﻳﻒ ﮐﺮد‬

‫‪.P‬‬

‫‪W‬‬ ‫‪W‬‬

‫ﺗﺒﺪﻳﻞ رادﻳﺎن ﺑﻪ درﺟﻪ و ﺑﺮﻋﻜﺲ‬

‫)‪Pi = 4 * Atn(1‬‬

‫ﭼﻮن اﮐﺜﺮ ﺗﻮاﺑﻊ ﻣﺜﻠﺜﺎﺗﯽ ﺑﺮ ﺣﺴﺐ رادﻳﺎن ﮐﺎر ﻣﯽ ﮐﻨﻨﺪ ﮔﺎهﯽ اوﻗﺎت ﻧﻴﺎز دارﻳﻢ ﺗﺎ زواﻳﺎ را از در‬ ‫ﺟﻪ ﺑﻪ رادﻳﺎن و ﺑﺎﻟﻌﮑﺲ ﺗﺒﺪﻳﻞ ﮐﻨﻴﻢ‪ .‬ﺑﺮاﯼ ﺗﺒﺪﻳﻞ ﻳﮏ زاوﻳﻪ ﺑﺮ ﺣﺴﺐ رادﻳﺎن ﺑﻪ درﺟﻪ‪ ،‬ﺁﻧﺮا در‬ ‫‪ 180‬ﺿﺮب ﮐﺮدﻩ و ﺳﭙﺲ ﺑﺮ ﻋﺪد ﭘﯽ ﺗﻘﺴﻴﻢ ﻣﯽﮐﻨﻴﻢ ‪:‬‬

‫‪W‬‬

‫‪Darage = x * 180 / Pi‬‬ ‫ﺑﺮاﯼ ﺗﺒﺪﻳﻞ ﻳﮏ زاوﻳﻪ ﺑﺮ ﺣﺴﺐ درﺟﻪ ﺑﻪ رادﻳﺎن‪ ،‬ﺁﻧﺮا در ﻋﺪد ﭘﯽ ﺿﺮب ﮐﺮدﻩ و ﺳﭙﺲ ﺑﺮ ‪180‬‬ ‫ﺗﻘﺴﻴﻢ ﻣﯽﮐﻨﻴﻢ ‪:‬‬

‫‪Radian= x * Pi / 180‬‬

‫‪12‬‬

‫در ﭘﺎﻳﺎن ‪:‬‬ ‫اﻧﺸﺎاﷲ آﻪ از اﻳﻦ ﻣﻄﺎﻟﺐ اﺳﺘﻔﺎدﻩ آﺎﻣﻞ آﺮدﻩ ﺑﺎﺷﻴﺪ ‪ ،‬اﻣﺎ اﮔﺮ ﺑﺨﻮاهﻴﺪ در زﻣﻴﻨ ﻪ ﺑﺮﻧﺎﻣ ﻪ ﻧﻮﻳ ﺴﻲ‬ ‫ﭘﻴ ﺸﺮﻓﺖ آﻨﻴ ﺪ ‪ ،‬ﺑﺎﻳ ﺪ ازآﺘ ﺐ ﻣﺮﺟ ﻊ اﺳ ﺘﻔﺎدﻩ آﻨﻴ ﺪ و هﺮﮔ ﺰ در ﺑﺮﻧﺎﻣ ﻪ ﻧﻮﻳ ﺴﻲ ﻧﺎاﻣﻴ ﺪ و ﻣ ﺎﻳﻮس‬ ‫ﻧﺸﻮﻳﺪ ‪.‬‬

‫‪O‬‬ ‫‪M‬‬

‫ﻣﻨﺎﺑﻊ ‪:‬‬

‫ﺗﺠﺰﻳﻪ و ﺗﺤﻠﻴﻞ و ﻃﺮاﺣﻲ ﺳﻴﺴﺘﻢ هﺎي آﺎﻣﭙﻴﻮﺗﺮي – دآﺘﺮ ﻣﻮﻧﺲ ﻋﻠﻲ ﻓﺮﻣﻨﺶ‬ ‫وﻳﮋوال ﺑﻴﺴﻴﻚ –ﻣﻴﺮ ﻣﺤﻤﺪ رﺿﺎ ﻋﻠﻮي ﻣﻴﻼﻧﻲ‬ ‫ﺗﺠﺮﺑﻴﺎت ﺧﻮدم‬

‫‪.C‬‬

‫هﻤﻜﺎري ﺳﺎﻳﺖ ‪ iDevCenter.com‬در زﻣﻴﻨﻪ ﺗﻮاﺑﻊ رﻳﺎﺿﻲ‬

‫‪E‬‬ ‫‪V‬‬

‫ﻣﺴﻌﻮد آﺎﻳﺪﺧﻮردﻩ‬

‫‪[email protected]‬‬

‫‪www.masoudarticle.mihanblog.com‬‬

‫‪R‬‬ ‫‪D‬‬

‫‪www.irankorea.com/masoudarticle‬‬

‫‪.P‬‬ ‫‪W‬‬ ‫‪W‬‬ ‫‪W‬‬ ‫‪13‬‬

Related Documents

Createcalculatorbyvb6
April 2020 1

More Documents from "Roozbeh Razavi"

Visual Basic 6
April 2020 10
Createcalculatorbyvb6
April 2020 1