دانلود pdf مبانی برنامه نویسی کمیاب و عالی
آشنایی با مبانی برنامه نویسی ، برای دانشجویان رشته مهندسی کامپیوتر اهمیت بسیاری دارد و این درس به عنوان پایه و اساس یادگیری زبانهای برنامهنویسی مختلف شناخته میشود. این درس با هدف آموزش منطق برنامهنویسی و ساختار دادهها، جایگاهی کلیدی در سرفصلهای آموزشی دارد و دانشجویان را برای پروژههای عملی و پیچیدهتر آماده میسازد.
مبانی برنامه نویسی با مفهوم الگوریتمها آغاز میشود؛ جایی که هدفهای کلی و رفتاری برای حل یک مسئله مشخص میگردند. الگوریتمها شامل مجموعهای از مراحل دقیق و متوالی هستند که برای دستیابی به یک نتیجه خاص طراحی میشوند، مانند محاسبه مجموع یا میانگین چند عدد. نمایش این مراحل از طریق فلوچارت و نمادهای استاندارد آن، به درک بصری جریان منطقی برنامه کمک شایانی میکند.

یکی از ارکان مهم در طراحی الگوریتم، توانایی جابجایی مقادیر بین متغیرها و استفاده از دستورالعملهای شرطی است.
این دستورات به برنامه امکان میدهند تا بر اساس شرایط مختلف تصمیمگیری کند، مثلاً تشخیص فرد یا زوج بودن یک عدد، یا یافتن بزرگترین و کوچکترین مقدار در مجموعهای از دادهها.
حلقهها، ابزارهای قدرتمندی برای تکرار یک دستور یا مجموعه دستورات به تعداد مشخص یا نامشخص هستند. این ساختارها شامل حلقههای با تکرار مشخص (مانند حلقه For) و حلقههای با تکرار نامشخص (مانند حلقه While) میشوند، که در فلوچارتها به خوبی نمایش داده میشوند.
کاربرد آنها در مسائلی چون محاسبه مجموع اعداد، یافتن بزرگترین مقدار، توانرسانی، شمارش ارقام و تولید سری فیبوناچی بسیار گسترده است.
نوع فایل: پی دی اف – 478 صفحه
فهرست مطالب:
- مبانی برنامه نویسی
- فصل ۱: الگوریتمها
- هدفهای کلی (الگوریتمها)
- هدفهای رفتاری (الگوریتمها)
- مقدمه (الگوریتم)
- تعریف الگوریتم
- مراحل الگوریتم
- مثال: الگوریتم مجموع دو عدد
- مثال: الگوریتم مجموع و میانگین سه عدد
- فلوچارت
- نمادهای فلوچارت
- مثال فلوچارت مجموع سه عدد
- جابجایی دو متغیر
- مراحل جابجایی مقادیر
- فلوچارت جابجایی دو عدد
- تمرینات فلوچارت
- دستورالعملهای شرطی
- ساختار کلی دستورات شرطی
- مثال فلوچارت شرطی (فرد یا زوج)
- مثال فلوچارت شرطی (بزرگترین عدد)
- مثال فلوچارت شرطی (کوچکترین عدد)
- نمونه اجرای فلوچارت (کوچکترین عدد)
- تمرینات (دستورات شرطی)
- حلقه ها
- انواع حلقه ها
- حلقه های با تکرار مشخص
- نمایش فلوچارتی حلقه با تکرار مشخص
- مثال فلوچارت حلقه (مجموع اعداد)
- فلوچارت محاسبه مجموع اعداد
- نمونه اجرای فلوچارت (مجموع اعداد)
- مثال فلوچارت حلقه (بزرگترین مقدار)
- فلوچارت یافتن بزرگترین مقدار
- مثال فلوچارت حلقه (توان)
- فلوچارت محاسبه توان
- حلقه های با تکرار نامشخص (While)
- نمایش فلوچارتی حلقه با تکرار نامشخص
- مثال فلوچارت حلقه (شمارش ارقام)
- فلوچارت شمارش ارقام
- مثال فلوچارت حلقه (سری فیبوناچی)
- فلوچارت تولید سری فیبوناچی
- تمرینات (حلقه ها)
- حلقه های تودرتو
- عملکرد حلقه های تودرتو
- نمایش فلوچارتی حلقه های تودرتو
- مثال فلوچارت حلقه های تودرتو (مجموع سری)
- فلوچارت محاسبه مجموع سری
- تمرینات آخر فصل (فصل ۱)
- فصل ۲: کاربرد آرایه ها در الگوریتم ها
- هدفهای کلی (آرایهها)
- هدفهای رفتاری (آرایهها)
- مقدمه (آرایهها)
- تعریف آرایه
- فلوچارت خواندن آرایه
- دسترسی و نمایش آرایه
- فلوچارت خواندن و نمایش آرایه
- مثال فلوچارت تبدیل مبنا
- مثال فلوچارت تولید اعداد اول در آرایه
- فلوچارت تولید اعداد اول
- جستجو و مرتب سازی
- الگوریتم های جستجو
- جستجوی خطی
- فلوچارت جستجوی خطی
- جستجوی دودویی
- مراحل جستجوی دودویی
- مرتب سازی حبابی
- برنامه مرتب سازی حبابی
- مرتب سازی انتخابی
- برنامه مرتب سازی انتخابی
- چند مثال در مورد آرایه ها
- ادامه برنامه تولید اعداد اول
- مثال برنامه آرایه (مجموع سطر ماتریس)
- مثال برنامه آرایه (ادغام دو آرایه مرتب)
- برنامه ادغام دو آرایه مرتب
- ادامه برنامه ادغام دو آرایه مرتب
- مثال برنامه آرایه (جایگزینی کاراکتر)
- تمرینات (اعلان آرایه)
- تمرین محاسبه حافظه اشغال شده توسط آرایه
- تمرینات برنامه نویسی (آرایه)
- ادامه تمرینات برنامه نویسی (آرایه)
- مسائل پیشرفته آرایه
- فصل ۳: آشنایی با کامپیوتر
- هدفهای کلی (کامپیوتر)
- هدفهای رفتاری (کامپیوتر)
- کامپیوترهای قدیمی
- ویژگیهای کامپیوترهای نسل اول
- کامپیوترهای امروزی
- اجزای تشکیل دهنده کامپیوتر
- مدل ورودی، پردازش، خروجی
- قطعات تشکیل دهنده کامپیوترهای امروزی
- نرم افزار
- نرم افزار سیستم عامل
- لایه های سیستم کامپیوتری
- زبانهای برنامه نویسی
- انواع زبان های برنامه نویسی
- فرآیند کامپایل برنامه
- زبان Pascal
- فصل ۴: ساختار برنامه در زبان پاسکال
- هدفهای کلی (پاسکال)
- هدفهای رفتاری (پاسکال)
- اجزای تشکیل دهنده یک برنامه
- کلمات ذخیره شده (Reserved Words)
- لیست کلمات ذخیره شده در پاسکال
- شناسه ها (Identifier)
- انواع شناسه ها
- ساختار برنامه در زبان پاسکال
- قسمت تعاریف برنامه
- شکل کلی برنامه در پاسکال
- نمودار ساختار بلوکی برنامه
- خروجی (Output)
- مثال های حل شده (خروجی)
- نمونه خروجی برنامه
- فصل ۵: انواع عملگرها و داده ها در زبان پاسکال
- هدفهای کلی (عملگرها و داده ها)
- هدفهای رفتاری (عملگرها و داده ها)
- عملگرها
- دسته بندی عملگرها در پاسکال
- عملگرهای محاسباتی
- عملگرهای رابطه ای
- عملگرهای منطقی
- عملگرهای بیتی
- تقدم عملگرها
- انواع داده ها (Data Types)
- داده های ساده (Simple Data Type)
- انواع داده های صحیح
- انواع داده های اعشاری
- داده های ساخت یافته (Structural Data Types)
- داده های اشاره گر (Pointer Data Types)
- متغیرها (Variables)
- ثابت ها (Constants)
- دستور جایگزینی
- افزودن توضیحات به برنامه (Comment)
- مثال جابجایی دو متغیر
- برنامه جابجایی دو متغیر
- نکاتی چند در مورد برنامه نویسی
- تمرینات (عملگرها)
- تمرینات (عبارات منطقی)
- تمرینات برنامه نویسی (مسائل)
- فصل ۶: ورودی و خروجی
- هدفهای کلی (ورودی و خروجی)
- هدفهای رفتاری (ورودی و خروجی)
- خروجی با دستور Write
- نمونه برنامه با دستور Write
- خروجی با دستور Writeln
- نمونه برنامه با دستور Writeln
- خروجی فرمت بندی شده
- طریقه تعیین فرمت چاپ برای اعداد صحیح
- نکات تعیین فرمت اعداد صحیح
- مثال خروجی فرمت بندی شده (اعداد صحیح)
- طول میدان اعداد اعشاری
- نکات تعیین فرمت اعداد اعشاری
- ادامه نکات تعیین فرمت اعداد اعشاری
- طول میدان کاراکترها و رشته ها
- ورودی با Readln و Read
- شکل کلی دستور Read
- مثال جابجا کردن محتویات دو عدد
- نمونه خروجی برنامه جابجایی اعداد
- تمرینات (خروجی)
- تمرینات (خروجی با فرمت)
- تمرینات برنامه نویسی (ورودی و خروجی)
- تمرینات برنامه نویسی (حسابداری)
- فصل ۷: ساختارهای شرطی و کنترلی
- هدفهای کلی (شرطی و کنترلی)
- هدفهای رفتاری (شرطی و کنترلی)
- دستورات شرطی
- دستور If
- دستور If-Then
- ادامه دستور If-Then
- مثال برنامه If-Then
- دستور If همراه Else
- ساختار کلی دستور If-Else
- مثال برنامه If-Else
- ساختار بلوکی If-Else
- If های متداخل
- انواع If های متداخل
- مثال برنامه If متداخل (تعیین درجه نمره)
- برنامه تعیین درجه نمره
- دستور Case
- مثال برنامه Case (ماشین حساب ساده)
- دیاگرام دستور Case
- ساختارهای کنترلی
- ساختار کلی حلقه For
- حلقه For
- مثال برنامه حلقه For (مجموع اعداد)
- حلقه For با Downto
- مثال برنامه حلقه For (فاکتوریل)
- For های متداخل
- مثال حلقه For متداخل
- دیاگرام دستور For
- حلقه While
- مثال برنامه حلقه While (بزرگترین مقسوم علیه)
- دیاگرام دستور While
- دستور Repeat
- توضیحات دستور Repeat
- ساختار کلی دستور Repeat-Until
- مثال برنامه حلقه Repeat (مجموع و میانگین)
- دیاگرام دستور Repeat
- معرفی چند پروسیجر
- پروسیجر Exit
- پروسیجر Break
- پروسیجر Continue
- کاربرد حلقه ها و شرط ها
- مثال برنامه تبدیل عدد به مبنای ۲ (Repeat-Until)
- مثال برنامه تولید سری فیبوناچی (Repeat-Until)
- تمرینات (حلقه ها و شرط ها)
- ادامه تمرینات (حلقه ها و شرط ها)
- تمرینات برنامه نویسی (الگوهای ستاره)
- تمرینات برنامه نویسی (مسائل متنوع)
- فصل ۸: آرایه ها
- هدفهای کلی (آرایهها)
- هدفهای رفتاری (آرایهها)
- آرایه و انواع آن
- آرایه های یک بعدی
- مثال اعلان آرایه
- مقداردهی و دسترسی به آرایه
- مثال برنامه آرایه (یافتن بیشترین مقدار)
- مثال برنامه آرایه (معکوس کردن)
- آرایه های دو بعدی
- مثال برنامه آرایه (نمایش ماتریس)
- آرایه های چند بعدی
- نکاتی چند در مورد آرایه ها
- ادامه نکات آرایه ها
- جستجو در آرایه
- برنامه جستجوی خطی
- حالت اول جستجوی دودویی
- حالت دوم جستجوی دودویی
- حالت سوم جستجوی دودویی
- مرتب سازی حبابی
- برنامه مرتب سازی حبابی
- مرتب سازی انتخابی
- برنامه مرتب سازی انتخابی
- چند مثال در مورد آرایه ها
- ادامه برنامه تولید اعداد اول
- مثال برنامه آرایه (مجموع سطر ماتریس)
- مثال برنامه آرایه (ادغام دو آرایه مرتب)
- برنامه ادغام دو آرایه مرتب
- ادامه برنامه ادغام دو آرایه مرتب
- مثال برنامه آرایه (جایگزینی کاراکتر)
- تمرینات (اعلان آرایه)
- تمرین محاسبه حافظه اشغال شده توسط آرایه
- تمرینات برنامه نویسی (آرایه)
- ادامه تمرینات برنامه نویسی (آرایه)
- مسائل پیشرفته آرایه
- فصل ۹: توابع و روال های کتابخانه ای
- هدفهای کلی (توابع و روال)
- هدفهای رفتاری (توابع و روال)
- ساختار تابع
- تابع Abs (اعداد صحیح و اعشاری)
- مثال تابع Abs
- تابع Sin
- مثال تابع Sin
- تابع Cos
- مثال تابع Cos
- تابع ArcTan
- مثال تابع ArcTan
- تابع Exp
- مثال تابع Exp
- تابع frac
- مثال تابع frac
- تابع Int
- مثال تابع Int
- تابع Ln
- مثال تابع Ln
- تابع Odd
- مثال تابع Odd
- تابع Ord
- مثال تابع Ord
- تابع pi
- تابع Pred
- مثال تابع Pred
- تابع Random
- مثال تابع Random
- تابع Round
- مثال تابع Round
- تابع sqr
- مثال تابع sqr
- تابع sqrt
- مثال تابع sqrt
- تابع succ
- مثال تابع succ
- تابع Trunc
- مثال تابع Trunc
- تابع chr (توابع کاراکتری)
- مثال تابع chr
- تابع Upcase
- مثال تابع Upcase
- روال های استاندارد
- روال Dec
- مثال روال Dec
- روال Exit
- مثال روال Exit
- روال Halt
- روال Inc
- مثال روال Inc
- روال Randomize
- مثال روال Randomize
- مثال برنامه نویسی (ماتریس مربع)
- مثال برنامه تبدیل حروف بزرگ به کوچک
- تمرینات توابع و روال (محاسبات)
- تمرینات برنامه نویسی (توابع و روال)
- فصل ۱۰: متغیرهای کاراکتری و رشته ها
- هدفهای کلی (کاراکتر و رشته)
- هدفهای رفتاری (کاراکتر و رشته)
- متغیرهای کاراکتری
- مثال مقایسه متغیرهای کاراکتری
- دسته بندی کاراکترها (اردینال)
- متغیرهای رشته ای (String)
- تعریف متغیر رشته ای
- مقداردهی متغیر رشته ای
- خواندن متغیر رشته ای
- چاپ متغیر رشته ای
- مثال برنامه ورودی/خروجی اطلاعات دانشجو
- تعریف آرایه ای از رشته
- خواندن و نمایش آرایه ای از رشته
- مثال برنامه مرتب سازی آرایه رشته ها
- مثال برنامه جستجو اطلاعات دانشجو
- تمرینات توابع رشتهای
- تمرینات برنامه نویسی (رشته و کاراکتر)
- فصل ۱۱: برنامه های فرعی
- هدفهای کلی (برنامه های فرعی)
- هدفهای رفتاری (برنامه های فرعی)
- روال ها
- ساختار کلی روال ها
- ساختار برنامه اصلی و فراخوانی روال
- انواع پارامترها (صوری و واقعی)
- انواع پارامترهای صوری
- پارامترهای مقداری (Value Parameters)
- مثال پارامترهای مقداری
- تناظر پارامترهای صوری و واقعی
- نکات پارامترهای مقداری
- ادامه مثال پارامترهای مقداری
- توضیح انتقال پارامترهای مقداری
- پارامترهای متغیری (Variable Parameters)
- مثال روال ComputeSumAve
- تناظر پارامترها (مثال ComputeSumAve)
- متغیرهای محلی و سراسری
- مثال برنامه با متغیرهای محلی
- نمایش تعامل متغیرهای محلی و سراسری
- مثال خروجی برنامه با روال و متغیرها
- انواع روال ها
- بکارگیری روال های بدون پارامتر
- مثال روال بدون پارامتر
- بکارگ
قیمت: 250/500 تومان
حلقههای تودرتو برای حل مسائل پیچیدهتر، که نیاز به تکرار چندگانه دارند، استفاده میشوند. عملکرد این حلقهها به گونهای است که یک حلقه در دل حلقهای دیگر قرار میگیرد و به برنامهنویس امکان میدهد تا عملیات را در ابعاد مختلف تکرار کند، مانند محاسبه مجموع سریها.
مطالب مرتبط
- دانلود pdf برنامه نویسی پیشرفته C در 248 صفحه
- دانلود pdf برنامه نویسی PLC به زبان STL در 455 صفحه
کاربرد آرایهها در الگوریتمها، پس از معرفی مفاهیم پایه، بخش مهمی از برنامهنویسی را تشکیل میدهد. آرایهها ساختارهای دادهای هستند که برای ذخیره مجموعهای از مقادیر از یک نوع مشخص به کار میروند، و خواندن و نمایش اطلاعات آنها از طریق فلوچارت به سادگی قابل درک است. این ساختارها در مسائلی مانند تبدیل مبنا یا تولید اعداد اول کاربرد دارند.
یکی از موارد کلیدی در کار با آرایهها، الگوریتمهای جستجو و مرتبسازی است. روشهای جستجوی خطی و دودویی به یافتن اطلاعات خاص در آرایهها کمک میکنند، در حالی که الگوریتمهای مرتبسازی حبابی و انتخابی به سازماندهی و چینش دادهها در آرایه میپردازند. این تکنیکها پایه و اساس کارایی برنامه در مقیاس بزرگ هستند.
پیش از ورود عمیق به مبانی برنامه نویسی، آشنایی با کامپیوتر و اجزای آن ضروری است. درک تاریخچه کامپیوترها از نسل اول تا امروز، اجزای سختافزاری و نرمافزاری آن از جمله سیستم عامل، و لایههای مختلف یک سیستم کامپیوتری، دید جامعی به برنامهنویس میدهد. همچنین، شناخت انواع زبانهای برنامهنویسی و فرآیند کامپایل برنامه از جمله زبان پاسکال اهمیت دارد.
ساختار برنامه در زبان پاسکال با کلمات ذخیرهشده (Reserved Words) و شناسهها (Identifier) تعریف میشود. هر برنامه پاسکال دارای قسمت تعاریف و بدنه اصلی است که از بلوکهای مشخصی تشکیل شده و برای تولید خروجیهای گوناگون به کار میرود.
انواع عملگرها و دادهها در زبان پاسکال، شامل عملگرهای محاسباتی، رابطهای، منطقی و بیتی میشوند که هر یک تقدم خاص خود را دارند. دادهها نیز به انواع ساده (مانند صحیح و اعشاری)، ساختیافته و اشارهگر تقسیم میشوند، و آشنایی با متغیرها، ثابتها و دستور جایگزینی، برای نوشتن برنامههای صحیح حیاتی است.
مبحث ورودی و خروجی در برنامه نویسی، امکان تعامل برنامه با کاربر را فراهم میآورد. دستورات Write و Writeln برای نمایش خروجیهای متنوع به کار میروند، در حالی که دستورات Read و Readln برای دریافت اطلاعات از کاربر استفاده میشوند. همچنین، قابلیت فرمتبندی خروجیها برای اعداد صحیح، اعشاری و رشتهها، نمایش اطلاعات را خواناتر میسازد.
ساختارهای شرطی و کنترلی، قلب منطق برنامهنویسی به شمار میآیند و شامل دستور If با حالتهای Then و Else، و همچنین If های متداخل میشوند. دستور Case نیز برای انتخاب از میان گزینههای متعدد به کار میرود. در کنار اینها، حلقههای For، While و Repeat-Until ابزارهایی قدرتمند برای کنترل جریان تکرار عملیات در برنامه هستند.
بحث آرایهها در ادامه، به تفصیل به انواع آرایههای یکبعدی، دوبعدی و چندبعدی در زبان پاسکال میپردازد. چگونگی اعلان، مقداردهی و دسترسی به عناصر آرایه، به همراه الگوریتمهای جستجو و مرتبسازی مانند جستجوی خطی و دودویی، و مرتبسازی حبابی و انتخابی، برای سازماندهی کارآمد دادهها بررسی میشود.
توابع و روالهای کتابخانهای در مبانی برنامه نویسی ، مجموعهای از دستورات از پیش تعریفشده هستند که کار برنامهنویس را بسیار ساده میکنند. توابع ریاضی مانند Abs، Sin، Cos، و توابع کاراکتری مانند Chr و Upcase، نمونههایی از این ابزارها هستند که برای انجام محاسبات و دستکاری دادهها استفاده میشوند. روالهای استاندارد نیز وظایف خاصی را انجام میدهند که در برنامه نویسی بسیار پرکاربردند.
متغیرهای کاراکتری و رشتهها برای پردازش متون و اطلاعات الفبایی عددی کاربرد دارند. تعریف، مقداردهی، خواندن و چاپ متغیرهای رشتهای، و همچنین استفاده از آرایهای از رشتهها، امکان مدیریت اطلاعات پیچیدهتر مانند دادههای دانشجویی را فراهم میکند.
برنامههای فرعی، شامل روالها و توابع، ساختار مدولار به برنامهها میدهند. این زیربرنامهها با پارامترهای مقداری (Value Parameters) و متغیری (Variable Parameters) کار میکنند و مفهوم متغیرهای محلی و سراسری را معرفی میکنند. توابع بازگشتی (Recursion Functions) نیز روشی قدرتمند برای حل مسائلی هستند که با تکرار خودکار زیرمسائل کوچکتر قابل حلاند.
مجموعهها و دادههای شمارشی در مبانی برنامه نویسی ، ساختارهای دادهای هستند که به برنامهنویس امکان میدهند تا با گروههایی از مقادیر یا لیستهای از پیش تعریفشده کار کند. رکوردها نیز ساختارهایی منعطف برای ذخیره دادههای ناهمگون تحت یک نام واحد هستند که میتوانند شامل رکوردهای تودرتو یا آرایهای از رکوردها باشند. این مفاهیم برای سازماندهی پیچیدهتر اطلاعات حیاتی هستند.
فایلها به عنوان ابزاری برای ذخیره دائمی دادهها خارج از حافظه موقت برنامه عمل میکنند. انواع فایلهای متنی و فایلهای دودویی و نوعدار، روشهای مختلفی برای خواندن، نوشتن و مدیریت اطلاعات فراهم میآورند. در نهایت، تحلیل الگوریتمها با مفهوم مرتبه یا پیچیدگی الگوریتم (نماد O بزرگ)، به ارزیابی کارایی و منابع مورد نیاز یک الگوریتم کمک میکند و پایانی بر مبانی برنامه نویسی است.