تبليغاتX
فناوري‌اطلاعات ، برنامه‌نويسي

برنامه نويسي ، شبكه ، سيستم عامل ، پايگاه داده ، سيستم اطلاعات جغرافيايي ، مديريت و كنترل پروژه

Information
سلام دوست عزيز . اين وبلاگ در مورد فناوري اطلاعات و علوم مرتبط با اون هست و داراي آموزش كامل و گام به گام برنامه نويسي به زبان ++C .
************************
پيشنهاد مي‌كنم از لينك‌هاي بخش مقالات فناوري اطلاعات ديدن كنيد .
************************
به اميد اينكه مطالب مفيد واقع بشه . با ارائه نظرات سازنده ي خودتون من رو در هرچه پربارتر كردن اين وب ياري كنيد .
متشكرم

مقالات فناوري اطلاعات
پیوندها
جستجوگر

طراح قالب

Powered By
BLOGFA.COM
لینک RSS
برنامه نويسي به زبان ++C (پست 35)
انواع مميز شناور

عدد مميز شناور به بيان ساده همان عدد اعشاري است . عددي مثل 123.45 يك عدد اعشاري است . براي اينكه مقدار اين عدد در كامپيوتر ذخيره شود ، ابتدا بايد به شكل دودويي تبديل شود :

123.45 = 1111011.0111001

اكنون براي مشخص نمودن محل اعشار در عدد ، تمام رقم‌ها را به سمت راست مميز منتقل مي‌كنيم . البته با هر جابه‌جايي مميز ، عدد حاصل بايد در تواني از 2 ضرب شود :

123.45 = 0.11110110111001 * 27

به مقدار 11110110111001 مانتيس عدد ، و به 7 كه توان روي 2 است، نماي عدد گفته مي‌شود . از آنجا كه مميز مي‌تواند به شكل شناور جابه‌جا شود ، به اعداد اعشاري اعداد مميز شناور مي‌گويند . حال براي ذخيره سازي عدد مفروض كافي است كه مانتيس و نما را ذخيره كنيم . هنگامي كه بخواهيم اين مقدار ذخيره شده را بازيابي كنيم ، سيستم‌عامل نما و مانتيس را در مسيري عكس مسير بالا بكار مي‌گيرد تا عدد 123.45 را از روي آن دوباره بسازد . در مورد عددي مثل عدد مذكور ممكن است اين روش ذخيره سازي ، طولاني و بي‌مورد به نظر برسد ، اما اعداد مميز شناور شامل اعداد خيلي كوچك مثل 0.000000001 يا اعداد خيلي بزرگ مثل 100000000.00000002 هستند كه ذخيره سازي و انجام محاسبات رياضي روي آنها با استفاده از مانتيس و نما بسيار آسان‌تر است .

در ++C سه نوع مميز شناور وجود دارد : نوع float و نوع double و نوع long double .

معمولاٌ نوع float از چهار بايت براي نگهداري عدد استفاده مي‌كند ، نوع double از هشت بايت و نوع long double از هشت يا دوازده يا شانزده بايت . در يك float سي‌ودو بيتي (چهار بايتي) از بيست‌وسه بيت براي ذخيره سازي مانتيس استفاده مي‌شود و هشت بيت نيز براي ذخيره سازي نما بكار مي‌رود و يك بيت نيز علامت عدد را نگهداري مي‌كند .

در يك double شصت‌وچهار بيتي (هشت بايتي) از 52 بيت براي ذخيره سازي مانتيس استفاده مي‌شود و 11 بيت براي نگهداري نما بكار مي‌رود و يك بيت نيز علامت عدد را نشان مي‌دهد .

نوشته شده توسط: مرضيه در جمعه چهاردهم تیر 1387|+|
برنامه نويسي به زبان ++C (پست 34)
عملگرهاي مقدارگذاري مركب

قبلاٌ از عملگر = براي مقدارگذاري در متغيرها استفاده كرديم . مثلاٌ دستور 75=m مقدار 75 را درون m قرار مي‌دهد و همچنين دستور m=m+8 مقدار m را 8 واحد افزايش مي‌دهد . ++C عملگرهاي ديگري دارد كه مقدارگذاري در متغيرها را تسهيل مي‌كنند . مثلاٌ با استفاده از عملگر =+ مي‌توانيم 8 واحد به m اضافه كنيم اما با دستور كوتاه‌تر : m+=8 .

دستور بالا معادل دستور m=m+8 است با اين تفاوت كه كوتاه‌تر است . به عملگر =+ عملگر مركب مي‌گويند زيرا تركيبي از عملگرهاي = و + است . پنج عملگر مركب در ++C عبارتند از : =+ ، =- ، =* ، =/ و =٪ .

نحوه‌ي عمل اين عملگرها بشكل زير است :

m += 8  -------------------- m = m+8
m -= 8  --------------------  m =m-8
m *= 8 --------------------  m = m*8
m /= 8 --------------------- m = m/8
m %= 8 -------------------- m = m%8

مثال زير كار اين عملگرها را نشان مي‌دهد :

int main()
{ // tests arithmetic assignment operators:
int n = 22;
cout << " n = " << n << endl;
n += 9; // adds 9 to n
cout << " After n+= 9 , n = " << n << endl;
n -= 5; // substract 5 from n
cout << " After n -= 5 , n = " << n << endl;
n *= 2; // multiplies n by 2
cout << " After n *= 2 , n = " << n << endl;
n /= 3; // divides n by 3
cout << " After n /= 3 , n = " << n << endl;
n %= 7; // reduces n to the remainder from dividing by 4
cout << " After n %= 7 , n = " << n << endl;
return 0;
}

خروجي بصورت زير است :

n = 22
After n += 9 , n = 31
After n -= 5 , n = 26
After n *= 2 , n = 52
After n /= 3 , n = 17
After n %= 7 , n = 3

نوشته شده توسط: مرضيه در جمعه چهاردهم تیر 1387|+|
برنامه نويسي به زبان ++C (پست 33)

عملگرهاي افزايشي و كاهشي

++C براي دستكاري مقدار متغيرهاي صحيح ، دو عملگر جالب ديگر دارد : عملگر ++ مقدار يك متغير را يك واحد افزايش مي‌دهد و عملگر -- مقدار يك متغير را يك واحد كاهش مي‌دهد . اما هركدام از اين عملگرها دو شكل متفاوت دارند : شكل پيشوندي و شكل پسوندي .

در شكل پيشوندي ، عملگر قبل از نام متغير مي‌آيد . مثل :m++ يا n-- . در شكل پسوندي عملگر بعد از نام متغير مي‌آيد . مثل : ++m يا --n . تفاوت شكل پيشوندي با شكل پسوندي در اين است كه در شكل پيشوندي ، متغير ابتدا متناسب با عملگر ، افزايش يا كاهش مي‌يابد و پس از آن مقدار متغير براي محاسبات ديگر استفاده مي‌شود . ولي در شكل پسوندي ابتدا مقدار متغير در محاسبات بكار مي‌رود و پس از آن مقدار متغير يك واحد افزايش يا كاهش مي‌يابد .

مثال : استفاده از عملگرهاي پيش افزايشي و پس افزايشي

int main()
{ // shows the difference between m++ and ++m
int m , n;
m = 75;
n = ++m; // the pre-increment operator is applied to m
cout << " m = " << m << " , n = " << n << endl;
m = 75;
n = m++; // the post-increment operator is applied to m
cout << " m = " << m << " , n = " << n << endl;
return 0;
}

خروجي اين برنامه بشكل زير است :

m = 45 , n = 45
m = 45 , n = 44

در خط پنجم برنامه از عملگر پيش افزايشي استفاده شده است . پس ابتدا مقدار m به 76 افزايش مي‌يابد و سپس اين مقدار به n داده مي‌شود . بنابراين وقتي در خط ششم مقدار اين دو متغير چاپ مي‌شود ، 76=m و 76=n خواهد بود .

در خط هشتم برنامه از عملگر پس افزايشي استفاده شده است . بنابراين ابتدا مقدار m كه 75 است به n تخصيص مي‌يابد و پس از آن مقدار m به 76 افزايش داده مي‌شود . پس وقتي در خط نهم مقدار اين دو متغير چاپ مي‌شود ، 76=m است ولي 75=n خواهد بود .

عملگرهاي افزايشي و كاهشي در برنامه‌هاي ++C فراوان بكار مي‌روند . گاهي بشكل پيشوندي و گاهي بشكل پسوندي ، اين بستگي به منطق برنامه دارد كه كجا از كدام نوع استفاده شود .

نوشته شده توسط: مرضيه در جمعه چهاردهم تیر 1387|+|
برنامه نويسي به زبان ++C (پست 32)
محاسبات اعداد صحيح

اكنون كه با انواع متغيرهاي عدد صحيح آشنا شديم ، مي‌خواهيم از اين متغيرها در محاسبات رياضي استفاده كنيم . ++C مانند اغلب زبان‌هاي برنامه‌نويسي براي محاسبات از عملگرهاي جمع (+) ، تفريق(-) ، ضرب (*) ، تقسيم (/) و باقيمانده (٪) استفاده مي‌كند .

مثال : محاسبات اعداد صحيح

برنامه‌ي زير نحوه‌ي استفاده و عملكرد عملگرهاي حسابي را نشان مي‌دهد .

int main()
{ //tests operators +,-,*,/,and %
int m=54;
int n=20;
cout << " m= " << m << " and n= " << n << endl;
cout << " m+n= " << m+n << endl; // 54+20=74
cout << " m-n = " << m-n << endl; // 54-20=34
cout << " m*n = " << m*n << endl; // 54*20=1080
cout << " m/n = " << m/n << endl; // 54/20=2
cout << " m%n = " << m%n << endl; // 54%20=14
return 0;
}

خروجي اين برنامه بصورت زير است :

m = 54 and n =20
m+n = 74
m-n = 34
m*n = 1080
m/n = 2
m%n = 14

نتيجه‌ي تقسيم m/n جالب توجه است . حاصل اين تقسيم برابر با 2 است ، نه 2.7 كه توجه به اين مطلب بسيار مهم است . اين امر نشان مي‌دهد كه حاصل تقسيم يك عدد صحيح بر عدد صحيح ديگر ، همواره يك عدد صحيح است نه عدد اعشاري . همچنين به حاصل m%n نيز دقت كنيد . عملگر ٪ باقيمانده‌ي تقسيم را بدست مي‌دهد . يعني حاصل عبارت 20%54 برابر با 14 است كه اين مقدار ، باقيمانده‌ي تقسيم 54 بر 20 است .

نوشته شده توسط: مرضيه در جمعه چهاردهم تیر 1387|+|
برنامه‌نويسي به زبان ++C (پست 31)

محدوده‌هاي نوع عدد صحيح

اين برنامه محدوده‌هاي شش نوع عدد صحيح در ++C را چاپ مي‌كند :

#include
#include //defines the contains SHRT_MIN, etc.
using namespace std;
int main()
{ //prints some of the constants stored in the header:
cout << " minimum short = " << SHRT_MIN << endl;
cout << " minimum short = " << SHRT_MAX << endl;
cout << " minimum unsigned short = 0 " << endl;
cout << " maximum unsigned short = " << USHRT_MAX << endl;
cout << " minimum int = " << INT_MIN << endl;
cout << " maximum int = " << INT_MAX << endl;
cout << " minimum unsigned int = 0 " << endl;
cout << " maximum unsigned int = " << UINT_MAX << endl;
cout << " minimum long = " << LONG_MIN << endl;
cout << " maximum long = " << LONG_MAX << endl;
cout << " minimum unsigned long = 0 " << endl;
cout << " maximum unsigned long = " << ULONG_MAX << endl;
return 0;
}

خروجي اين برنامه بصورت زير است :

minimum short = -32768
maximum short = 32767
minimum unsigned short = 0
maximum unsigned short = 65535
minimum int = -2147483648
maximum int = 2147483647
minimum unsigned int = 0
maximum unsigned int = 4294967295
minimum long = -2147483648
maximum long = 2147483647
minimum unsigned long = 0
maximum unsigned long = 4294967295

سرفايل <limits> حاوي تعريف شناسه‌هاي SHRT_MIN ، SHRT_MAX ، USHRT_MAX وساير شناسه‌هايي است كه در برنامه‌ي بالا استفاده شده است . اين شناسه‌ها گستره‌اي كه نوع عدد صحيح مربوطه مي‌تواند داشته باشد را نشان مي‌دهند . مثلاٌ شناسه‌ي SHRT_MIN نشان مي‌دهد كه متغيري از نوع short حداقل چه مقداري مي‌تواند داشته باشد

نوشته شده توسط: مرضيه در پنجشنبه سیزدهم تیر 1387|+|
برنامه‌نويسي به زبان ++C (پست 30)

متغير عدد صحيح

C++ شش نوع متغير عدد صحيح دارد :

انواع اصلي : انواع صحيح : نوع عددي صحيح : short ، int ، long ،  unsigned short ، unsigned int ، unsigned long .

تفاوت اين شش نوع مربوط به ميزان حافظه‌ي مورد استفاده و محدوده‌ي مقاديري است كه هركدام مي‌توانند داشته باشند . اين ميزان حافظه‌ي مورد استفاده و محدوده‌ي مقادير ، بستگي زيادي به سخت‌افزار و همچنين سيستم‌عامل دارد . يعني ممكن است روي يك رايانه ، نوع int دو بايت از حافظه را اشغال كند ، در حالي كه روي رايانه‌اي از نوع ديگر ، نوع int به چهار بايت حافظه نياز داشته باشد . با استفاده از سرفايل   مي‌توان مشخص نمود كه هرنوع عدد صحيح روي رايانه‌تان چه محدوده‌اي دارد .

نوشته شده توسط: مرضيه در پنجشنبه سیزدهم تیر 1387|+|
سلام

سلام دوستان . واقعاٌ شرمنده از اين همه تأخير در آپديت وبلاگ . سعي مي‌كنم در اسرع وقت آپ كنم . با تشكر از شكيبايي‌تون .

نوشته شده توسط: مرضيه در پنجشنبه سیزدهم تیر 1387|+|
Technology
آرشیو
آمار وبلاگ
» تعداد بازدیدها:
» مرورگر:
امکانات اضافي

© All Rights Reserved by mrz-it.Blogfa.com ©