| فناورياطلاعات ، برنامهنويسي |
برنامه نويسي ، شبكه ، سيستم عامل ، پايگاه داده ، سيستم اطلاعات جغرافيايي ، مديريت و كنترل پروژه
|
Information
![]()
سلام دوست عزيز . اين وبلاگ در مورد فناوري اطلاعات و علوم مرتبط با اون هست و داراي آموزش كامل و گام به گام برنامه نويسي به زبان ++C .
************************ پيشنهاد ميكنم از لينكهاي بخش مقالات فناوري اطلاعات ديدن كنيد . ************************ به اميد اينكه مطالب مفيد واقع بشه . با ارائه نظرات سازنده ي خودتون من رو در هرچه پربارتر كردن اين وب ياري كنيد . متشكرم مقالات فناوري اطلاعات
سيستم اطلاعات جغرافيايي
گزارش كار آزمايشگاه فيزيك2 خلاصهي كتاب سيستمهاي عامل تأليف ويليام استالينگز بانك اطلاعات چيست ؟ علل كاهش سرعت كامپيوتر فركانس بالاتر يا هسته بيشتر؟! مديريت و كنترل پروژههاي IT راه اندازي شبكه ي بي سيم تمام پیوندها پیوندها
ترفندستان (حسين)
كليك كن سرگرم ميشي يه غريب آموزش امنيت و برنامهنويسي(مهدي زارعي) وبلاگ علمي تخصصي فناوري اطلاعات اديب آموزش حرفهاي هك ترفند و آموزش (smn) ۩۞۩ تبدیل صدای مرد به زن ۩۞۩ ترفندهای کامپیوتر و موبایل و آموزش آفیس(بهزاد) آموزش حرفه اي ويروس نويسي (رضا) گل سرخ كلبه درويشي (محمد) انجمن تخصصي ويژوال بيسيك 6 (سيد كمال رضايي) : :سایت تخصصی موبایل:: (نويد) سايت تخصصي برنامه نويسي (مهدي) ترفندستان (محمد) مرکز دانلود مقاله و کتاب و فونت و سوال فؤاد (قلبها) سهيلستان سايت بزرگ موبايل و كامپيوتر حسين كوهساري عشقاي بچگي (شهر دانلود...جاوا..فيلم..عکس) خدمات انفورماتيك و اطلاع رساني ماموت: وبلاگ مقالات مهندسي مكانيك و خودرو آموزش جامع كامپيوتر وبلاگ تخصصي كامپيوتر (محمد) مهندسان عمران آموزش گام به گام دلفي برنامه نويسي ( عليرضا ) پسرهاي با معرفت بهترین وبلاگ دانلود نرم افزار اورميا هك جستجوگر
طراح قالب
|
كلمات كليدي تا اينجا با كلماتي مثل if و case و float آشنا شديم . دانستيم كه اين كلمات براي ++C معني خاصي دارند . از اين كلمات نميتوان بعنوان نام يك متغير يا هر منظور ديگري استفاده كرد و فقط بايد براي انجام همان كار خاص استفاده شوند . مثلاٌ كلمهي float فقط بايد براي معرفي يك نوع اعشاري بكار رود . يك كلمهي كليدي در يك زبان برنامهنويسي كلمهاي است كه از قبل تعريف شده و براي هدف مشخصي منظور شده است . ++C استاندارد اكنون شامل ۷۴ كلمهي كليدي است : and / and_eq / asm / auto / bitand / bitor / bool / break / case / catch / char / class / compl / const / const_cast / continue / default / delete / do / double / dynamic_cast / enum / explicit / export / extern / false / float / for / friend / goto / if / inline / int / long / mutable / namespace / new / not / not_eq / operator / or / or_eq / private / protected / public / register / reinterpret_cast / return / short / signed / sizeof / static / static_cast / struct / switch / template / this / throw / true / try / typedef / typoid / typename / using / union / unsigned / virtual / void / volatile / wchar_t / while / xor / xor_eq كلمات كليدي مانند if و else تقريباٌ در هر زبان برنامهنويسي يافت ميشوند . ديگر كلمات كليدي همچون dynamic_cast منحصر به ++C هستند . دو نوع كلمهي كليدي وجود دارد : كلمههاي رزرو شده و كلمات استاندارد . يك كلمهي رزرو شده كلمهاي است كه يك دستور خاص از آن زبان را نشان ميدهد . كلمهي كليدي if و else كلمات رزرو شده هستند . يك شناسهي استاندارد كلمهاي است كه يك نوع دادهي استاندارد از زبان را مشخص ميكند . كلمات كليدي bool و int شناسههاي استاندارد هستند زيرا هر يك از آنها يك نوع دادهي خاص را در زبان ++C مشخص ميكنند . براي اطلاعات بيشتر در مورد كلمات كليدي به كامپايلر ++C مراجعه كنيد . عملگر عبارت شرطي يكي از مزيتهاي ++C اختصار در كدنويسي است . عملگر عبارت شرطي يكي از امكاناتي است كه جهت اختصار در كد نويسي تدارك ديده شده است . اين عملگر را ميتوانيم بجاي دستور if..else بكار ببريم . اين عملگر از نشانههاي ؟ و : به شكل زير استفاده ميكند : condition ? expression1 : expression2 ; در اين عملگر ابتدا شرط condition بررسي ميشود . اگر اين شرط درست بود ، حاصل كل عبارت برابر با expression1 ميشود و اگر شرط نادرست بود ، حاصل كل عبارت برابر با expression2 ميشود . مثلاٌ در دستور انتساب زير : min = ( x اگر x ************************************************************** مثال : نسخهي جديدي از برنامهي يافتن مقدار مينيمم int main() عبارت شرطي ( m : n ؟ m مثال : تلهي سقوط در دستور switch برنامهي زير بدون دستورهاي break دچار تلهي سقوط ميشود . int main() خروجي برنامه : enter your test score : 83 در اجراي فوق ، پس از اينكه به case 8 انشعاب شد و عبارت مقابل آن چاپ شد ، چون دستور break وجود ندارد ، اجراي برنامه به خط بعدي كه case 7 است ميرود و عبارت your grade is C را نيز چاپ ميكند و به همين ترتيب يكييكي همهي عبارتهاي case را اجرا ميكند و سرانجام عبارت default را هم اجرا نموده و آنگاه از دستور switch خارج ميشود .
مثال : استفاده از دستور switch int main() خروجي برنامه : enter your test score : 83 در برنامهي بالا ابتدا score بر 10 تقسيم ميشود تا محدودهي اعداد بين صفر تا 10 محدود شود . بنابراين در اجراي آزمايشي ، نمرهي 83 به 8 تبديل ميشود ، اجراي برنامه به case 8 انشعاب ميكند و خروجي مربوطه چاپ ميگردد . سپس دستور break موجب ميشود كه اجراي برنامه از دستور switch خارج شده و به اولين دستور بعد از بلوك switch انشعاب ميكند . در آنجا عبارت Goodluck چاپ ميشود . لازم است در انتهاي هر case دستور break قرار بگيرد . بدون اين دستور ، اجراي برنامه پس از اينكه case مربوطه را اجرا كرد از دستور switch خارج نميشود ، بلكه همهي caseهاي زيرين را هم خط به خط ميپيمايد و دستورات مقابل آنها را اجرا ميكند . به اين اتفاق ، تلهي سقوط (Fall Throw Error) ميگويند .
دستورالعمل switch دستور switch ميتواند بجاي ساختار else if براي بررسي مجموعهاي از حالتهاي متناوب و موازي بكار رود . نحو اين دستور به شكل زير است : switch (expressions) اين دستور ابتدا expression را برآورد ميكند و سپس ميان ثابتهاي case به دنبال مقدار آن ميگردد . اگر مقدار مربوطه از ميان ثابتهاي فهرست شده يافت شد ، دستور statementlist مقابل آن case اجرا ميشود . اگر مقدار مورد نظر ميان caseها يافت نشد و عبارت default وجود داشت ، دستور statementlist مقابل آن اجرا ميشود . عبارت default يك عبارت اختياري است . يعني ميتوانيم در دستور switch آن را قيد نكنيم . expression بايد به شكل يك نوع صحيح ارزيابي شود و constantها بايد ثابتهاي صحيح باشند . مثال : استفاده از ساختار else if براي مشخص كردن محدودهي نمره برنامهي زير يك نمرهي امتحان را به درجهي حرفي معادل تبديل ميكند : int main() خروجي برنامه : enter your test score : 83 مقدار متغير score به شكل آبشاري با دستورهاي انتخاب بطور متوالي بررسي ميشود تا اينكه يكي از شرطها درست شود و يا به آخرين else برسيم . ساختار else if دستور if..else تودرتو ، اغلب براي بررسي مجموعهاي از حالتهاي متناوب يا موازي بكار ميرود . در اين حالات ، فقط عبارت else شامل دستور if بعدي خواهد بود . اين قبيل كدها را معمولاٌ با ساختار else if ميسازند . مثال : استفاده از ساختار else if براي بررسي حالتهاي موازي برنامهي زير ، زبان كاربر را سؤال ميكند و سپس يك پيغام به همان زبان در خروجي چاپ ميكند : int main() خروجي برنامه : Engl . , Fren . , Ger . , Ital . , or Rus . ? ( e|f|g|i|r ) : i در حقيقت اين برنامه از دستور if..else تودرتو استفاده كرده است . مثال : يك بازي حدسي برنامهي زير عددي را كه كاربر بين 1 تا 8 در ذهن دارد ، را پيدا ميكند : int main() برنامهي بالا با تجزيهي مسأله قادر است تنها با سه پرسش ، هريك از اعداد 1 تا 8 را بيابد . در اجراي زير ، كاربر عدد 6 را مد نظر داشته است : pick a number from 1 to 8 . در منطق برنامهي بالا دقت كنيد . به الگوريتم استفاده شده در اين برنامه الگوريتم جستجوي دودويي (Binary Search) ميگويند . اين الگوريتم روي مجموعههاي مرتب بكار ميرود و به سرعت مشخص ميكند آيا يك دادهي مفروض در اين مجموعه هست يا خير . در پستهاي بعد روشهاي ديگري از جستجو را بيان خواهم كرد . مثال : استفاده از دستورهاي انتخاب تودرتو در اين برنامه براي يافتن مينيمم سه عدد صحيح از دستورهاي if..else تودرتو استفاده ميشود : int main() خروجي برنامه : enter three integers : 77 33 55 در اجراي بالا ، اولين شرط (n1<n2) نادرست است و سومين شرط (n2<n3) درست است . بنابراين گزارش ميشود كه n2 مينيمم است . در هر بار اجراي اين برنامه فقط دو شرط سادهي تودرتو ارزيابي ميشود . منطق اين برنامه كمي از برنامههاي گفته شده در پستهاي قبل پيچيدهتر است ، ولي كارايي بيشتري دارد و در مقايسه بين كارايي و سادگي بهتر است كارايي انتخاب شود . |
Technology
آرشیو
هفته اوّل آبان 1388
هفته سوم شهریور 1388 هفته سوم مرداد 1388 هفته چهارم تیر 1388 هفته دوم فروردین 1388 هفته اوّل بهمن 1387 هفته سوم مهر 1387 هفته چهارم شهریور 1387 هفته سوم شهریور 1387 هفته دوم شهریور 1387 هفته اوّل شهریور 1387 هفته چهارم مرداد 1387 هفته سوم مرداد 1387 هفته دوم مرداد 1387 هفته اوّل مرداد 1387 هفته چهارم تیر 1387 هفته سوم تیر 1387 هفته دوم تیر 1387 هفته دوم اسفند 1386 هفته سوم بهمن 1386 هفته چهارم دی 1386 هفته دوم دی 1386 آمار وبلاگ
» تعداد بازدیدها:
» مرورگر: امکانات اضافي
|
© All Rights Reserved by mrz-it.Blogfa.com ©