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

اما با بهره گیری از آرایه می توان الگوریتمی کارا برای این برنامه داشت:

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

دریافت اسلایدهای سری چهارم (با فرمت پاورپوینت 2007)
برخی از نوشته های اسلایدها بدلیل فونت خاصی روی بعضی کامپیوتر ها صحیح نمایش داده نمی شوند. جهت رفع این مشکل می توانید فونت های زیر را دریافت کرده و روی ویندوز خود نصب نمایید.
تاکنون فقط نحوه نمایش اعداد مثبت را دیده بودیم (که با تبدیل به مبنای 2 بدست می آمد)
برای اعداد علامت دار از روشهای مختلفی استفاده می شود:

نمایش اعداد اعشاری
معمولا از روش استاندارد IEEE 754 (خوانده می شود آی تری پل ای – مخفف نام انستیتو مهندسین برق و الکترونیک)
Institute of Electrical and Electronics Engineersاستفاده می شود.
در این روش ابتدا عدد اعشاری را به فرم نرمال شده تبدیل کرده و سپس طبق دستور ارائه شده در استاندارد نمایش میدهیم.

توضیحات کاملتر همراه با مثال در اسلاید سوم


دریافت بخش دوم اسلایدهای مبانی کامپیوتر
فرصت مهم جوانی و دانشجویی
در این جلسه بعد از خوش آمد گویی به دانشجویان در مورد بخش هایی از زندگی صحبت کردیم که نقش تعیین کننده در ادامه زندگی هر فرد دارند. یکی از این زمانها، زمان دانشجویی و تحصیل است، که حتما در آینده، زمانی که از این دوره یاد کردید خواهید فهمید که از بهترین لحظات زندگی بوده اند. و این فرصتی است که فعلا بوجود آمده است. چنین فرصت هایی ممکن است به ندرت و تحت شرایط خاصی بوجود آیند و خیلی از آنها ممکن است دوباره بوجود نیایند. الان بهترین زمان برای یک دانشجو است که هم جوان است و هم پر انرژی و هم می تواند با انگیزه ای که دارد بتواند مسیر آینده زندگی به شرطی که انتخاب درست کرده باشد را به نحوی مناسب تعیین نماید.
ویژگی های تحصیل در رشته کامپیوتر
در مورد رشته کامپیوتر صحبت کردیم که یک دانش نسبتاً جدیدی است (با حدود 60 سال سابقه) ولی با این حساب توانسته است سرعت پیشرفت فوق العاده سریعی داشته باشد (که شاید هیچ رشته ای دارای چنین سرعت رشدی نباشد). برای موفق و فعال بودن در این رشته بایستی همانند خود رشته، پویا و فعال و پر انرژی بود. ضمن احترام به همه رشته های دیگر، یادآوری کردیم که اگر کسی در این رشته الان بالاترین مدرک را هم داشته باشد و در طول مدت مثلاً 20 سال از پیشرفتهای رشته کامپیوتر دور باشد، بعد از این مدت تقریباً حرف زیادی برای گفتن در این رشته را ندارد. اما در بسیاری از رشته های دیگر وضع اصلاً به این گونه نیست. قطعاً ما بایستی خودمان را با این شرایط وفق دهیم و این می تواند برای کسانی که پر انرژی بوده و ویژگیهای خلاقانه ای دارند بسیار میمون و مبارک باشد که بتوانند همیشه تازگی و به روز بودن را تجربه نمایند.
در مورد دستگاههای پردازشی و حافظه ای قانونی داریم تحت عنوان قانون مور که بیان می کند: ظرفیت پردازشی و یا حافظه ای چنین دسنگاههای در هر 18 ماه 2 برابر خواهد شد! که البته برای سیستم های نرم افزاری وضعیت متفاوت است و شاید نه به این سرعت ولی در آنجا هم نسل های مختلف زیادی را پشت سر گذاشته ایم.
موضوع مهم دیگری که صحبت کردیم، تسلط داشتن به زبان انگلیسی است که بتوانیم حداکثر بهره را از این علم ببریم. قطعاً اکثر پیشرفتهای انجام شده و منابع این رشته به زبان مادری آن، یعنی انگلیسی می باشد. و ما برای نوشیدن آب از سرچشمه اصلی آن نیاز به دانستن مناسب این زبان داریم.
موضوع مهم دیگر داشتن ارتباط با دوستان و استفاده از اینترنت و مجله های مرتبط می باشد. این موضوع به ما کمک می کند علاوه بر اینکه بتوانیم از موضوعات مطرح و جاری در این رشته آگاه شویم، بتوانیم از آنها بعنوان منابع اطلاعاتی خود نیز استفاده نماییم.
برنامه نویسی
موضوع مهم دیگری که مخصوصاً برای این رشته کلیدی و حیاتی است، برنامه نویسی است، که متاسفانه طبق بررسیهای انجام شده، رفته رفته از مهارتهای برنامه نویسی دانشجویان کاسته می شود! و دانشجویان در این زمینه فعالیت و تبحر کمتری از خود نشان میدهند. که این می تواند برای رشته کامپیوتر یک فاجعه باشد.
قطعاً برنامه نویسی نیاز به تمرین و کار زیادی دارد و یگانه راه یادگیری آن نوشتن برنامه است، البته از برنامه های ساده ساده بایستی شروع نمود. با دیدن برنامه ها و خواندن آنها هنوز کسی برنامه نویس نشده است! اگر کسی با دیدن شناکردن دیگران – حتی 20 سال – شناکردن را یاد بگیرد، شما هم خواهید توانست به این صورت برنامه نویس شوید. این کار بایستی هر چه زودتر تا دیر نشده شروع شود. بالاخره بایستی تا عمق آب کم است در استخر برنامه نویسی پرید و شروع به یادگیری شنا نمود!
روشهای یادگیری
بعد از آنکه بحث به برنامه نویسی و روش آن رسید، ما در مورد روشهای یادگیری و به یادآوردن صحبت نمودیم. و اینکه هر کدام از این روشها چقدر می توانند در به یاد آوردن بعد از گذشت مدت نسبتاً طولانی موثر بیافتند. این روشها را می توانیم بصورت شکل زیر که بسیار هم گویا است به تصویر بکشیم:
![]()
به وضوح این نمودار بیان می کند که برای یادگیری بهتر دخالت شخص بسیار کلیدی است. هر چه فرد در فرآیند کار دخالت داشته باشد، به همان نسبت هم یادگیری موثرتر خواهد بود. و اصولاً چیزی به نام یاد دادن وجود ندارد، تنها یادگیری معنا می دهد و معلم و استاد تنها می توانند کمک به یادگیری نماید.(قطعاً اگر کسی نخواهد، هیچ کسی نمی تواند به او چیزی یاد بدهد)
بنابراین بهتر است از همین ابتدا دست بکار شد و شروع به نوشتن برنامه های ساده نمود تا بتواند در آینده پایه مناسبی برای برنامه نویسی باشد.
مطالب درس
شامل 3 بخش خواهد بود.
مبانی کامپیوتر که یک مرور نسبتاً سریعی بر بخش های اصلی کامپیوتر و کارکردهای آنها خواهیم داست.
الگوریتم و فلوچارت که پایه برنامه نویسی بوده و بحث نسبتاً مفصلی درباره آن خواهیم داشت.
برنامه نویسی به زبان سی شارپ که هدف نهایی درس خواهد بود.
منابع درسی
برای دو بخش اول می توانید از کتاب "مبانی کامپیوتر و الگوریتم" نوشته جعفر نژاد قمی استفاده نمایید
کتاب کمکی برای بخش دوم "الگوریتم و فلوچارت" نوشته صادق بجانی است
کتاب منبع برای بخش برنامه نویسی هم کتاب "چگونه به زبان ویژوال سی شارپ 2005 برنامه بنویسیم" نوشته دایتل می باشد. که نسخه اصلی کتاب به زبان انگلیسی را هم بصورت کتاب الکترونیکی در اختیار قرار خواهم داد.
دریافت فایل اسلایدهای بخش اول مبانی کامپیوتر ( با فرمت پاورپوینت ۲۰۰۷)
ارزشیابی
شامل موارد زیر خواهد بود
تمرین کلاسی
میان ترم (تا پایان بخش دوم)
پایان ترم(فقط از بخش برنامه نویسی)
و پروژه ( که در یادگیری موثر بسیار مهم است)