دوره ی آموزش الگوریتم و فلوچارت (پایه ای ترین مفاهیم برنامه نویسی)

صفحۀ اصلی

مقدمه

با سلام. به دوره ی آموزش مقدمات برنامه نویسی؛ آموزش الگوریتم و فلوچارت خوش آمده اید.

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

صدها سال پیش، زماینکه هنوز انقلاب صنعتی در اروپا رخ نداده بود و هیچ یک از تکنولوژی هایی که پیرامون خود می بینیم وجود نداشت، ریاضی دانی از شهر خوارزم (این شهر امروزه در داخل کشور ازبکستان قرار گرفته است) روشی را برای حل مسائل مشکل ریاضی ابداع کرد که در آن با پیروی از یک دستورالعمل روتین و بدون داشتن کمترین دانش ریاضی، می شد یک مسئله ی پیچیده ی ریاضی را حل کرد. این دانشمند بزرگ، آقای خوارزمی بود و روشی را که ابداع کرده بود تحت عنوان "روش الخوارزم" در کتاب خود ثبت کرد. صدها سال از آن موضوع گذشت و زمانیکه دانشمندان و ریاضی دان های دیگری در انگلستان داشتند بر روی ساخت اولین کامپیوتر جهان کار می کردند و کتاب ترجمه شده ی خوارزمی را نیز خوانده بودند، متوجه شدند که می توانند از روش الخوارزم برای اجرا شدن نرم افزارها بر روی کامپیوتر بهره ببرند اما آنها نمی توانستند کلمه ی الخوارزم را به خوبی تلفظ کنند و آن را بصورت الگوریتم تلفظ می کردند و به این ترتیب الگوریتم به عنوان پایه ی برنامه نویسی، توسط تمامی مهندسان و دانشمندان توسعه دهنده ی کامپیوتر پذیرفته شد.

الگوریتم را می شود بصورت یک نمودار گرافیکی نیز نشان داد که به آن فلوچارت (Flowchart) گفته می شود. فلوچارت از دو کلمه Flow به معنی جریان و Chart به معنی نمودار تشکیل شده است و در کل به معنی "نمودار جریان" می باشد. پس فلوچارت، همان الگوریتم است که بجای کلمات، با شکل ها بیان می شود.

چه شد که به فکر ایجاد این دوره ی آموزشی افتادیم

دوستان قدیمی وب سایت آکسفورد پلاس می دانند و برای دوستان جدید هم عرض کنم که بنده (موسس و مدیر وب سایت آکسفورد پلاس)، معلم هستم و در هنرستان های شهرستان میاندوآب برای دانش آموزان رشته ی کامپیوتر تدریس می کنم. در مقطع یازدهم کامپیوتر درسی داریم به اسم رایانه کار پیشرفته که شامل چهار کتاب می باشد و یکی از آنها، کتاب برنامه نویسی مقدماتی می باشد که من معمولا هر سال آنرا تدریس می کنم. امسال مهرماه که قصد داشتم درس برنامه نویسی مقدماتی را شروع کنم، ایده ای به ذهنم رسید و به دانش آموزان کلاس گفتم که بچه ها یک فکر شیطانی! (به شوخی) به ذهنم رسیده و می خواهم همزمان که برایتان تدریس می کنم، فیلم تدریس ها را نیز بگیرم تا شما بعدا اگر خواستید، در خانه دوباره این فیلم ها را پخش کنید و آخر سال خود را برای امتحان آماده کنید. به این ترتیب از ابتدای امسال (سالتحصیلی 1397/98) شروع کردیم از تدریسمان در کلاس فیلم گرفتیم و این دوره ی آموزشی را تهیه کردیم.

در واقع کتابی که در این دوره تدریس می شود، این کتاب هنرستانی می باشد:

شکل 1. کتاب برنامه نویسی مقدماتی - یازدهم کاردانش هنرستان

اگر قصد گذراندن این دوره ی ارزشمند را دارید، به شما توصیه می کنم که از لینک زیر فایل PDF کتاب مورد تدریس را نیز دانلود کنید تا در حین گذراندن این دوره، کتاب هم زیر دستتان باشد و همچنین از مطالب اضافی کتاب که در این دوره زمان پوشش دادنشان نبوده، بهره ببرید.

دانلود کتاب برنامه نویسی مقدماتی یازدهم هنرستان - شاخه کاردانش

محض اطلاع دوستان گرامی عرض کنم که سال گذشته هم دوره ی سریع آموزش Java Script بوسیله ی مثال های کوچک (ویژه ی برنامه نویسانی که وقت کافی ندارند) را بصورت آنلاین و کاملا رایگان منتشر کرده بودیم که دوستان علاقه مند می توانند از آن نیز بهره ببرند.

آنچه که در این دوره ی آموزشی خواهید آموخت

این دوره ی آموزشی نسبتا فشرده حاوی حدود 6.5 ساعت تدریس بنده در کلاس می باشد و شامل 14 جلسه است. از آنجاییکه برخی جلسات را در دو نوبت ضبط کرده ایم، جمعا 23 فایل (جلسات اصلی و ادامه های برخی جلسات) خدمتتان تقدیم خواهد شد که هرکدام از این فایل ها حاوی جلسات درسی ده-دوازده دقیقه ای تا نیم ساعتی هستند و حجم کلی ویدئوها 1.3 گیگابایت می باشد.

طی این دوره، سوالات مهم چهار فصل (واحد کار) نخست کتاب به صورت زیر تشریح می شوند:

واحد کار 1: توانایی حل مسایل و طراحی الگوریتم مناسب برای آنها

در جلسه ی اول مطرح می شود: الگوریتمی بنویسید که مضارب کوچک تر از 1000 عدد 5 را محاسبه کرده و نمایش دهد (مدت جلسه 12:11).

در ادامه ی جلسه ی اول مطرح می شود: الگوریتمی بنویسید که دما را بر حسب فارنهایت دریافت کرده و معادل آنرا به سانتی گراد نمایش دهد (مدت جلسه 3:54).

در جلسه ی دوم مطرح می شود: الگوریتمی بنویسید که عدد طبیعی و دلخواه N را دریافت کرده و مقدار !N (فاکتوریل N) را محاسبه کرده و نمایش دهد (مدت جلسه 14:44).

در ادامه ی جلسه ی دوم مطرح می شود: الگوریتمی بنویسید که حقوق یک کارمند را دریافت کرده و میزان مالیات حقوق وی را مطابق جدول داده شد، پس از محاسبه، نمایش دهد. (مدت جلسه 13:34).

در جلسه ی سوم مطرح می شود: الگوریتمی بنویسید که نمرات 10 درس دانش آموز را دریافت کرده و معدل و میانگین نمرات وی را نمایش دهد (مدت جلسه 22:26).

در ادامه ی جلسه ی سوم مطرح می شود: الگوریتمی بنویسید که عدد طبیعی و دلخواه N را دریافت کرده و ارقام آن را معکوس کند، مثلا عدد 2485 به 5842 تبدیل شود (مدت جلسه 23:50).

در جلسه ی چهارم مطرح می شود: الگوریتمی بنویسید که مقدار زمان را بر اساس ثانیه دریافت کرده و مقدار ساعت ها، دقیقه ها و ثانیه های آن را محاسبه کرده و نمایش دهد (مدت جلسه 13:22).

در ادامه ی 1# جلسه ی چهارم مطرح می شود: الگوریتمی بنویسید که عدد طبیعی و دلخواه M را دریافت کرده و اعداد زوج کوچک تر از آن را نمایش دهد (مدت جلسه 11:30).

در ادامه ی 2# جلسه ی چهارم مطرح می شود: الگوریتمی بنویسید که دو عدد طبیعی و دلخواه را دریافت کرده و بزرگترین مقسوم علیه مشترک آن ها را محاسبه کرده و نمایش دهد (مدت جلسه 14:14).

واحد کار 2: توانایی ترسیم فلوچارت

در جلسه ی پنجم مطرح می شود: فلوچارتی رسم کنید که مضارب عدد 5 را که کوچک تر از 500 هستند، محاسبه کرده و نمایش دهد (مدت جلسه 22:09).

در جلسه ی ششم مطرح می شود: فلوچارتی رسم کنید که اعداد دورقمی زوج را نمایش دهد (مدت جلسه 15:44).

در ادامه ی جلسه ی ششم مطرح می شود: فلوچارتی رسم کنید که میزان حافظه ی کامپیوتر را بر اساس مگابایت دریافت کرده و بر اساس واحدهای دیگر نمایش دهد. (مدت جلسه 13:07).

در جلسه ی هفتم مطرح می شود: فلوچارتی رسم کنید که ریشه معادله درجه اول یک مجهولی (ax+b=c) را محاسبه نموده و نمایش دهد. (مدت جلسه 11:08).

در ادامه ی جلسه ی هفتم مطرح می شود: فلوچارتی رسم کنید که ساعت کار و دستمزد هر ساعت کار یک کارگر را دریافت کرده و حقوق وی را محاسبه کند. (مدت جلسه 4:13).

در جلسه ی هشتم مطرح می شود: فلوچارتی رسم کنید که بتواند با شرایط داده شده، هزینه استفاده از اینترنت را برای یک مشترک در مدت یک هفته محاسبه کرده و نمایش دهد. (مدت جلسه 21:18).

در ادامه ی جلسه ی هشتم مطرح می شود: فلوچارتی رسم کنید که دو عدد را دریافت کرده و عدد اول را به توان عدد دوم برساند. (مدت جلسه 6:37).

واحد کار 3: توانایی درک و شناخت زبان برنامه نویسی ویژوال بیسیک و ایجاد یک برنامه کاربردی

در جلسه ی نهم مطرح می شود: طریقه نصب Visual Studio 6 و آشنایی با محیط برنامه نویسی Visual Basic 6 (مدت جلسه 14:00).

در ادامه ی جلسه ی نهم مطرح می شود: یک برنامه از نوع استاندارد اجرایی ایجاد کنید که حاوی یک فرم، دو کنترل برچسب و دو کنترل کادر متن بوده و بتواند نام و نام خانوادگی کاربر را دریافت کند و نام وی را با رنگ قرمز روی زمینه سبز و نام خانوادگی را با رنگ آبی روی زمینه سفید روی کنترل های برچسب نمایش دهد. درضمن در صورت انجام عمل کلیک روی کنترل های برچسب، رنگ زمینه و قلم جابه جا شود. (مدت جلسه 18:51).

در جلسه ی دهم مطرح می شود: برنامه جلسه ی قبلی را به گونه ای تغییر دهید تا با انجام عمل کلیک روی هر کادر متن، محتویات آن پاک شود. (مدت جلسه 21:55).

واحد کار 4: توانایی تعریف انواع متغیر ها، ثابت ها و استفاده از عملگرهای ریاضی و رشته ای

در جلسه ی یازدهم مطرح می شود: پروژه ای طراحی کنید که با توجه به نوع سپرده گذاری در یک بانک، میزان بهره سالیانه را مطابق جدول داده شده محاسبه کرده و نمایش دهد. (مدت جلسه 37:21).

در جلسه ی دوازدهم مطرح می شود: یک پروژه از نوع Standard EXE طراحی کنید که شامل فرم به صورتی که در شکل داده شده و با شرایط زیر باشد: (مدت جلسه 24:36).

الف- نام کاربر با اندازه 24 و با رنگ سیاه و ضخیم در روی فرم نمایش داده شود.

ب- کاربر بتواند با کلیک روی دکمه های Red، Green و Blue رنگ قلم را در نام کاربر روی رنگ قرمز، سبز یا آبی تنظیم کند.

ج- در صورت کلیک روی دکمه Hide نام کاربر مخفی شود؛ به علاوه دکمه Hide غیرفعال و دکمه Show فعال شود.

د- در صورت کلیک روی دکمه Show نام کاربر نمایش داده شود؛ به علاوه دکمه Show غیرفعال و دکمه Hide فعال شود.

ه- فرم و پروژه را با نام Show ذخیره کنید.

در جلسه ی سیزدهم روش نوشتن عبارات ریاضی در محیط Visual Studio بررسی می شود (مدت جلسه 27:05).

در جلسه ی چهاردهم چند قطعه کد زبان Visual Basic بررسی می شود. (مدت جلسه 15:21).

نمونه برخی از جلسات

به عنوان نمونه، در اینجا می توانید ویدئوی جلسه ی دوم از این دوره ی آموزشی را مشاهده بفرمایید (یا می توانید از این لینک ویدئوی جلسه ی دوم را دانلود کنید):

ویدئوی 1. جلسه دوم

و همچنین جلسه ی پنجم (لینک دانلود جلسه ی پنجم):

ویدئوی 2. جلسه پنجم

طریقه ی دریافت پکیج این دوره ی آموزشی

اما روش خرید این پکیج فعلا به این صورت است که شما مبلغ 27،000 تومان (چهارده هزار تومان برای خود پکیج آموزشی + هزار تومان هزینه ی بسته بندی اصولی با نایلون حبابدار و غیره + دوازده هزار تومان برای هزینه ی ارسال با پست سفارشی به آدرس شما که قابل پیگیری از وب سایت اداره ی پست نیز می باشد) به کارت با شماره ی 3354-2479-0810-5029 بنام بنده (عبدالرضا قنبری) به روش کارت به کارت منتقل کرده (از طریق یکی از دستگاه های خودپرداز شهر خودتان) و سپس با شماره ی موبایل بنده یعنی 09052358238 تماس حاصل فرمایید و آدرس پستی خود را اعلام فرمایید تا بنده بلافاصله پکیج را آماده و به آدرس شما ارسال نمایم.

مسائل کپی رایت

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

استفاده ی همکاران و مدرسان محترم در مدارس و آموزشگاه ها بعنوان محتوای کمک آموزشی یا تکثیر رایگان آن بین هنرآموزان، کاملا مجاز بوده و مایه ی افتخار ما خواهد بود.

درباره ی ما

Your IP address: 3.227.208.153 ... Current time: 11/13/2019 3:09:23 PM

Oxford Plus Academy v1.1

شبکه های اجتماعی وب سایت
-----------------------
تویتر وب سایت https://twitter.com/oxford_plus
صفحه فیس بوک وب سایت https://facebook.com/oxfordpluspage
آی دی تلگرام وب سایت آکسفورد پلاس @oxfordplus
آی دی اینستاگرام صفحه اختصاصی محصول ماسک صورت اسپیرولینا @spirulinaoxfordplus

راه های تماس با مدیریت وب سایت
----------------------
ایمیل abdolreza_ghanbari@yahoo.com
فیس بوک مدیریت https://www.facebook.com/ARezaGhanbari
تلفن تماس مدیریت وب سایت (مهندس قنبری): 09052358238
آدرس دفتر وب سایت: آذربایجان غربی - میاندوآب - خیابان تختی- پلاک 330
کد پستی: 5971817118

Video sharing addresses:
----------------------
https://youtube.com/channel/UC3wT15qSyXQnu_IVj8OqGqw
https://takhtesefid.org/user/amoozin
https://www.aparat.com/oxford.plus