تالار روانشناسی و مشاوره آنلاین ازدواج، خانواده، تحصیلی همیاری
زمان کنونی:  مهمان عزیز خوش‌آمدید. (ورودعضــویت)

تالار همیاری نسبت به محتویات تبلیغات مسئولیتی ندارد.

کانال رسمی همیاری در تلگرام ads مشاوره قبل از ازداج مشاوره قبل از ازدواج




اموزش الگوریتم نویسی زمان کنونی: 
کاربران در حال بازدید این موضوع: برای دسترسی به این بخش باید ورود کنید
نویسنده:andromeda
آخرین ارسال:andromeda
پاسخ ها 19

صفحه‌ها (2): صفحه 1 از 2 12 آخرینآخرین

اموزش الگوریتم نویسی

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

  2. ارسال:2#
    niloofarabi آواتار ها
    سلام

    من زیاد کامپیوتر بلد نیستم ولی یادمه که وقتی داشتم یاد می گرفتم قدیما ... اول یه سری مبانی رو گفتن که توش الگوریتم هم بود. بعدش هم که رسیدیم به برنامه نویسی (اونموقع ها gwbasic و بعدش هم Qbasic) برمبنای همون الگوریتم ها بود.

    بگید ...ببینم یاد می گیرم یانه .
    پاسخ با نقل و قول

  3. ارسال:3#
    مقدمه
    در زندگی روزمره،انسان با مسائل مختلفی رو بروست و برای هرکدام از این مسائل(حل مشکلات)راه حلی و روشی را برمی گزیند.مثل غذا خوردن،خوابیدن...
    همه این مسائل نیاز به روشی برای حل کردن دارند.مثلا راه رفتن باید با تربییت خاص و مراحل معین انجام شود.
    اصطلاحا  روش انجام کار یا حل مسئله را الگوریتم آن مسئله می نامند.
    الگوریتم از نام ابوجعفرمحمدبن موسی الخوارزمی ریاضیدان و منجم ایرانی در قرن دوم هجری گرفته شده.
    پس تعریف الگویتم چی شد؟
    -مجموعه ای از دستورالعمل ها،برای حل مسئله که شرایط زیر را داشته باشد:
    1-دقیق باشد.(حالت های خاص و مرزی در نظر گرفته شود.)
    2-جزئیات کامل حل مسئله را داشته باشد.
    3-پایان پذیر باشد.(حداقل یک خروجی را باید داشته باشد.)

    در طراحی الگوریتم معمولا سه مرحله زیر را ازهم جدا می کنند:
    1-خواندن داده(ورودی)
    2-انجام محاسبات(پردازش)
    3-جروجی ها

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

    x=12
    نکته:هیچگاه از حل مسائل نهراسید.چراکه در برنامه نویسی جواب،در صورت سوال ذکر شده و شما تنها باید این جواب را به صورت مرحله به مرحله به زبانی مناسب پیش ببرید.
    مثال:
    الگوریتمی بنویسید که دو عدد از کاربر دریافت کرده ومجموع را محاسبه و چاپ کند.
    قبل از اینکه به حلش نگاه کنید،خودتان کمی تجزیه و تحلیل بفرماییید.
    حل:ما برای دریافت دو ععد به 2 ظرف جداگانه احتیاج داریم که هرکدام اسم مشخص شده ی خودشان را دارند.به هرحال باید این دو عدد در متغیری ذخیره شوند تا برای پردازش،بتوان از انها استفاده کرد.
    پس از این که دو عدد ذخیره شد،مجموع را محاسبه کرده.(آیا این مجموع راکه مایع است همین طور به حال خود رها می کنید یا باید در ظرف جداگانه ای که نمایانگر مجموع دو عدد است ذخیره شوند؟!)
    در اخر متغیر مجموع را چاپ می کنیم.
    طریقه نوشتن:
    شروع
    a,bرا از کاربر بگیر
    مجموعa,bرا محاسبه ودرsumقراربده
    sumرا درخروجی چاپ کن
    پایان

    کمی پیشرفته تر...

    شروع
    بخوان(a,b)
    a+b ->sum
    چاپ کنsum
    پایان

    همراه ما باشید...


     
    پاسخ با نقل و قول

  4. ارسال:4#
    سلام
    من که خیلی مشتاقم به یادگیری برنامه نویسی
    استاد اجازه هست یه سوال داشتم
    اگه مثلا 6 عدد بگه باید همشونو با اعداد انگلیسی بنویسیم یا نه؟
    پاسخ با نقل و قول

  5. ارسال:5#
    نقل قول نوشته اصلی توسط 'gole yakhi' pid='16271' dateline='1374672516'
    سلام
    من که خیلی مشتاقم به یادگیری برنامه نویسی
    استاد اجازه هست یه سوال داشتم
    اگه مثلا 6 عدد بگه باید همشونو با اعداد انگلیسی بنویسیم یا نه؟
     
    دقیقا یانه!
     احتیاج به حلقه و تکرار داریم که در هر مرحله کار مشخصی را انجام دهد.در مثال های بعدی بیشتر توضیح خواهم داد.
    پاسخ با نقل و قول

  6. ارسال:6#
    سلام دوستان
    درادامه جلسه قبل،با ذکر مثال هایی قصد داریم بیشتر با الگوریتم نویسی اشنا شویم.
    همانطور که دوست عزیزمان خانمgoleyakhiسوال کردند،اگر تعداد ورودی ها بسیار شود ایا باید به همان اندازه متغیر تعریف کرد؟
    مسلما این کار بسیار وقت گیرمی باشد و حافظه ی اضافی مصرف می کند.
    گاهی در حل مسئله نیاز است قسمتی از دستور یا دستورات چند باری تکرار شوند تا به پردازش مورد نظر نزدیک شویم.مثلا دریافت 10 عدد یا بیشتر از کاربر،محاسبه مجموع،کوچک ترین یا بزرگ ترین عدد و ....
    یک حلقه می تواند توسط "شرط "کنترل شود تا پایان پذیرد.وگرنه دستورات داخل حلقه تا بی نهایت تکرار می شوند و هیچگاه برنامه خاتمه نمی یابد که گاهی به اصطلاح گویند  سیستم هنگ کرده!

    پس تا زمانی که شرط حلقه "درست"باشد تکرار ادامه خواهد داشت.به محض"نادرست"شدن شرط یا برقرار نبودن شرط خط اجرا از حلقه خارج شده و به دستورات بعدی(خارج از حلقه)می پردازد.
    ارزش درست=true=هرعددی غیر از صفر
    ارزش نادرست=false=عدد صفر

    مثال:
    الگوریتمی بنویسید که 10عدد از کاربر دریافت کرده ،مجموع و میانگین را محاسبه کرده و نمایش دهد.
    حل:ابتدا یک متغیر به نمایندگی این 10 عدد تعریف می کنیم.حلقه ای ایجاد می کنیم.
    نکته:یکی از شروط کنترل حلقه در واقع تعیین تعداد تکرار ان می باشد.
    متغیری را به عنوان تعداد مراحل تکرار تعریف می کنیم که باید مقدار اولیه ای باشد.مثلا از 1 شروع به شمارش کند.
    به متغیری برای ذخیره سازی مجموع اعداد نیاز داریم.هر بار که حلقه از سر شروع میشود عدد گرفته شده با مجموع اعداد قبلی جمع بسته میشود.
    دقت:میانگین 10عدد=10/مجموع
    شروع
    sum=0
    i=1
    مادامی که (i<=10)تکرارکن
    {
    بخوان(num)
    sum=sum+num
    i=i+1(یک واحد بهiاضافه کن)
    }
    average=sum/10
    چاپ کنsum
    چاپ کنaverage
    پایان

    بیایید مثال بالا را گسترش دهیم.برای n عدد که ما نمی دانیم چند تا و کاربر تعیین کننده ان است
    خودتان تجزیه و تحلیل کنید...کف کردم
    شروع
    sum=0
    i=1

    بخوان(n)
    مادامی که(i<=n)تکرار کن
    {
    بخوان(num)
    sum=sum+num
    i=i+1
    }
    average=sum/n
    چاپ کن sum
    چاپ کن average
    پایان


    الگوریتمی بنویسید که دو عدد از کاربر دریافت کرده سپس محتویات دو عدد را جابجا کند.
    حل:
    به یاد دارید گفته بودم متغیر ها فعلا برای ما مثل ظرف می ماند و داده ها مثل مایع؟!
    خب...
    شما فرض کنید که می خواهید محتویات دو ظرف را با هم جا بجا کنید.می توانید یکی از ظرف ها را روی زمین خالی کنید؟؟؟
    ایا داده(مایع)از بین نمی رود؟؟؟؟!!!!!
    پس نتیجه می گیریم به ظرف خالی سومی با نام مشخص احتیاج داریم تا جابجایی را انجام دهیم.
    حالا الگوریتم بالا را می نویسیم:
    شروع
    temp=0
    بخوان(a,b)
    temp=a
    a=b
    b=temp
    چاپ کن(a,b)
    پایان

    خلاص...
    حالا یک تمرین برای شما که بیکار نباشید.
    الگوریتمی بنویسید که عددی را دریافت کرده،مجموع 1 تا ان عدد را محاسبه کرده و نمایش دهد.
    مثلا من می گم5
    خروجی باید بشه 15
    می گم 100
    خروجی بشه 5050
    در همین تاپیک جواب را بگذارید


     
    پاسخ با نقل و قول

  7. ارسال:7#
    sum=0
    i=1
    بخوان(n)
    مادامی که(i<=n)تکرار کن
    {
    بخوان(num)
    sum=sum+num
    i=i+1
    }
    چاپ کن sum
    پایان
    درست نوشتم یا نه استاد؟؟:hang:
    تو آمپاس شدید قرار گرفتم خیلی سخته.
    پاسخ با نقل و قول

  8. ارسال:8#
    متشكرم عزيزم.
    كمي تا قسمتي...
    اولا شروعش كو؟؟؟
    ثانيا گفته بودم جواب همان صورت مسئله است.گفته يك عدد بخوان.سپس مجموع از عدد يك تا آن عدد دريافتي را جمع كن.اما شما هربار عددي را گرفته.در واقع شما الگوريتم اين مسئله رو نوشتي:!
    مجموع nعدد را محاسبه كن.
    اما حل :
     شروع 
    i=1
    Sum=0
    بخوان(num)
    مادامي كه(i<= num)تكرار كن
    {
    Sum= Sum+i
    i=i+1
    }
    چاپ كن Sum
    پايان
    پاسخ با نقل و قول

  9. ارسال:9#
    نقل قول نوشته اصلی توسط 'tarane' pid='17246' dateline='1375299425'


     
    چرا ناراحتي عزيزم؟بد توضيح دادم؟
    پاسخ با نقل و قول

  10. ارسال:10#
    عزیزم بازم بذار دیگه
    اگه زحمتی نیست من خیلی دوست دارم
    قربونت.
    پاسخ با نقل و قول

صفحه‌ها (2): صفحه 1 از 2 12 آخرینآخرین

کاربران دعوت شده

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •