برنامه نویسی
اطلاعات سايت

رمز عبور را فراموش کردم ؟
آمار مطالب
کل مطالب : 5
کل نظرات : 0

بازديد امروز : 15 نفر
بارديد ديروز : 10 نفر
بازديد هفته : 90 نفر
بازديد ماه : 51 نفر
بازديد سال : 1,986 نفر
بازديد کلي : 4,781 نفر

افراد آنلاين : 1
عضويت سريع
نام کاربری :
رمز عبور :
تکرار رمز :
موبایل :
ایمیل :
نام اصلی :
کد امنیتی :
 
کد امنیتی
 
بارگزاری مجدد
پيوندهاي روزانه
کدهاي اختصاصي
پشتيباني
theme by
roztemp.ir
RSS

Powered By
Rozblog.Com
تبليغات
رزتمپ

تهیه کنند:سعید شیرزاد

الگوریتم اصلا چیست؟

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

  1. به آشپزخانه برو.

  2. کتری را از آب پر کن.

  3. کتری را روی گاز بگذار.

  4. گاز را روشن کن.

  5. صبر کن تا آب جوش بیاید.

  6. چای را درون قوری بریز.

  7. قوری را از آب جوش پر کن.

  8. قوری را روی کتری بگذار.

به همین سادگی! ما معمولا جواب مسائل را میدانیم. فقط بلد نیستیم چطور آنها را به الگوریتم تبدیل کنیم. تعدادی مثال واقعی تر:

فرض کنید قرار است برنامه ای بنویسیم که دو عدد را جمع کند و حاصل را چاپ کند.

  1. اولین عدد را بگیر.

  2. دومین عدد را بگیر.

  3. عدد اول و دوم را با هم جمع کن و حاصل را در حافظه نگه دار

  4. حاصل را چاپ کن.

فرض کنید میخواهیم برنامه ای بنویسیم که مربع هر عدد را حساب کند. مربع یعنی عدد به توان ۲:

  1. یک عدد را بگیر.

  2. عدد را در خودش ضرب کن و حاصل را در حافظه نگه دار. (هر عدد به توان ۲ یعنی آن عدد در خودش ضرب شود)

  3. حاصل را چاپ کن.

دقت کنید که تنها کاری که انجام میدهم، شکستن مسئله به مراحل کوچک تر و ساده تر، و نوشتن آنها به صورت امری است. همین و بس.

فرض کنید میخواهیم برنامه ای بنویسیم که عددی را از ورودی بگیرد و مشخص کند زوج است یا فرد.

ما جواب این مسئله را میدانیم. اما نمیدانیم پطور باید الگوریتم آنرا بنویسیم. من و شما میدانیم که هر عددی بر دو بخش پذیر باشد، زوج است. به همین سادگی.

  1. یک عدد را بگیر

  2. آن عدد را بر دو تقسیم کن و باقیمانده را در حافظه نگه دار

  3. اگر باقی مانده صفر است (یعنی عدد ما بر دو بخش پذیر است) چاپ کن: “زوج”

  4. اگر باقی مانده صفر نیست، چاپ کن: “فرد”

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

نکته مهم: شاید با این قبیل الگوریتم های وحشتناک مثل محاسبه ترانهاده ماتریس و محاسبه فاکتوریل چند عدد و سری فیبوناچی و … مواجه شده باشید. بگذارید خیالتان را راحت کنم. بعد از ۱۰ سال برنامه نویسی و حتی تجربه بستن نرم افزارهای مالی و محاسباتی، هیچ وقت به چیزی بیشتر از ۴ عمل اصلی ریاضی، احتیاج پیدا نکرده ام. اگر میخواهید برنامه نویس تجاری باشید، و استاد شما دارد به شما این الگوریتم های وحشتناک را یاد میدهد، استاد شما یک برنامه نویس نما است!

و اما تمرینات:

  1. برنامه ای بنویسید که دو عدد را تفریق کند.

  2. برنامه ای بنویسید که نمره دو تا از درس های دانش آموزی را گرفته، و معدل آن دو درس را بدهد. (معدل=مجموع نمره ها تقسیم بر تعداد آنها)

  3. برنامه ای بنویسید که یک عدد را بگیرد و مشخص کند آیا بر ۵ بخش پذیر هست یا خیر؟ (راهنمایی: از باقی مانده استفاده کنید.)

  4. برنامه ای را بنویسید که اول یک عدد بگیرد. سپس عدد دوم را بگیرد و مشخص کند عدد اولی بر دومی بخش پذیر است یا خیر (راهنمایی: از باقی مانده استفاده کنید.)

اگر در حل تمرین ها مشکلی داشتید، کامنت بگذارید. اگر شک داشتید که مسئله را درست حل کرده اید یا خیر، کامنت بگذارید تا شما را راهنمایی کنیم.

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

امتياز : نتيجه : 0 امتياز توسط 0 نفر مجموع امتياز : 0

بازديد : 59
[ چهارشنبه 20 آذر 1398 ] [ 23:47 ] [ سعید شیرزاد ]

تهیه کننده:سعید شیرزاد

  1. الگوریتمی بنویسید که یک عدد به واحد میلی متر دریافت کرده ، معین کند چندمتر و چند سانتی متر و چند میلی متر است.

 

1-      شروع

2-     mm   را دریافت کن

3-     ←N \ 1000 m

4-       N mod 1000 ←  mm

5-     mm \  100  ← cm

6-     Mm mod 100  ← mm

7-     mm , cm , m   را چاپ کن

8-    پایان

 

 

  1. الگوریتمی بنویسید که طول و عرض یک مستطیل را دریافت کرده ، محیط و مساحت مستطیل را محاسبه کند.

1-      شروع

2-     x , y را دریافت کن

3-     x * y ← masahat

4-     (x+y)*2  ← mohit

5-     mohit و masahat را چاپ کن

6-     پایان

 

 

  1. الگوریتمی بنویسید که دو متغیر عددی A,B را دریافت کرده ، سپس محتوای آنها را با هم تعویض کند.

1-      شروع

2-     A, B را دریافت کن

3-     0  temp

4-     A  temp

5-     B   A

6-     temp  B

7-     پایان

 

 

  1. الگوریتمی بنویسید که سه متغیر A,B,C را دریافت کرده سپس A را در B وB را در C و سپس C را در A قرار دهد

 

1-      شروع

2-     a,b,c را دریافت کن

3-     0← temp

4-     b  temp

5-     a ← b

6-     c  a

7-     temp  c

8-    پایان

 

 

 

  1. الگوریتمی بنویسید که عددی را دریافت کرده و معین کند زوج است یا فرد

 

1-      شروع

2-     A را دریافت کن

3-اگر a mod 2 = 0        آنگاه

             پیغام  " a   زوج است "   را نمایش بده

   در غیر اینصورت 

             پیغام  "a فرد است "  را نمایش بده

4-  پایان

 

 

 

  1. الگوریتمی بنویسید که شماره یک روز و شماره یک ماه از سال را دریافت کرده ، معین کند چند روز از سال می گذرد

(مثال: اگر تاریخ 2/3 وارد شد عدد 64 نمایش داده شود.)

 

1-      شروع

2-     m , d  را دریافت کن

3-     اگر    (m-1) < =6        آنگاه

               *31 +d (m-1)       days 

        در غیر اینصورت     

              (m-7)*30 +(6*31) +d ← days

4-     days را چاپ کن

5-     پایان

 

  1. الگوریتمی بنویسید که شماره یک روز از سال را دریافت کرده ، تاریخ روز را معین کند.(مثال:اگر 64 وارد شد نمایش دهد 2/3)

 

1-      شروع

2-     Days را دریافت کن

3-     اگر days < = 186      آنگاه

               +1 days \ 31 ← m     

               m  mod   31 ← d 

                اگر     d=0 آنگاه d=31        و  m-1 ← m

در غیر اینصورت

             Days=days  -  186

              +7 days \ 30 ← m 

              m  mod   30 ← d 

              اگر d=0   آنگاه    d=30   و m-1  ← m,

4-     m , d  را نمایش بده

5-     پایان

  1. الگوریتمی بنویسید که تمام اعداد زوج دو رقمی را چاپ کند.

 

1-      شروع

2-      2← n

3-     مادامی که  n <=98  تکرار کن

         {

                N  را نمایش بده

                n +2   ← n

       }

4-     پایان

 

  1. الگوریتمی بنویسید که عددی را دریافت کرده مقسوم علیه های آن را چاپ کند.

 

1-      شروع

2-     n  را دریافت کن

3-       c

4-     مادامی که  c < = n  تکرار کن

{

       اگر  n  mod c =0     آنگاه   c را چاپ کن

      c+1  ← c

}

5-     پایان

 

 

  1. الگوریتمی بنویسید که عددی را دریافت کرده و معین کند اول است یا خیر.

 

1-      شروع

2-     N را دریافت کن

3-     2  c  و  0 ← sum

4-     مادامی که   c <= n \ 2 تکرار کن

{

         اگر   n mod  c =0    آنگاه   sum +1  ← sum

}

5-اگر sum =0   آنگاه

                پیغام  " عدد اول است " را نمایش بده

در غیر اینصورت

               پیغام " عدد اول نیست " را نمایش بده

6-پایان

 

 

  1. الگوریتمی بنویسید که دو عدد را دریافت کرده ، کوچکترین مضرب مشترک و بزرگترین مقسوم علیه مشترک آنها را چاپ کند.

 

1-      شروع

2-     a,b  را دریافت کن

3-       temp   

4-     a *b  ← mul

5-     مادامی که a mod b <> 0     تکرار کن

{

            Temp←b

            a  mod  b  ← b

          Temp   ←  a

}

6-        bmm

7-     mul \ bmm  ← kmm

8-    Bmm   و kmm  را نمایش بده

9-     پایان

 

 

 

 

 

 

  1. الگوریتمی بنویسید که فاکتوریل اعداد از 1 تا 10 را محاسبه کرده و نمایش دهد.

 

1-      شروع

2-   1←   mul

3- 1 ← c

4- 1 ←n

5- مادامی که 10  n <=  تکرار کن

{

             مادامی که   c <=n    تکرار کن

         {

                         mul*c  ←  mul

                          c+1  ← c

         }

         mul  را نمایش بده

        1← c

              n+1 ← n

 

}

6- پایان

 

 

 

  1. الگوریتمی بنویسیدکه یک عدد صحیح (n رقمی) را دریافت کرده ، مجموع رقمهای فرد آن را محاسبه و چاپ کند.

 

1- شروع

2- n را دریافت کن

3- 0  ← sum

4- مادامی که  n>0 تکرار کن

{

        n  mod 10 ← b

      اگر  b  mod 2  <> 0    آنگاه  sum + b ← sum

        n \ 10 ← n

     

}

5- sum را چاپ کن

6- پایان

 

  1. الگوریتمی بنویسید که از بین اعداد 3 رقمی آنهایی را که رقم یکان فرد- دهگان زوج و صدگان بخشپذیر بر 5 دارند را چاپ کند.

 

1- شروع

2- 100 ← n

3-  ما دامی که  n <1000  تکرار کن

{

        n  mod 10  ← yekan

       n \ 100←  sadgan

        (n mod 100)  mod 10  ← dahgan

        اگر  yakan  mod 2 <>0      and      dahgan mod 2 =0      and     sadgan mod 5 =0    آنگاه  n   را نمایش بده

        n+ 2 ← n

}

4- پایان

 

 

 

  1. الگوریتمی بنویسید که عددی را بر حسب ثانیه دریافت کرده تعیین کند چند ساعت ،چند دقیقه، و چند ثانیه است.

 

1- شروع

2- n   را در یافت کن

3-   n \ 3600 ← hour

4- n mod 3600 ← n

5- n \ 60 ← minute

6- n mod 60  ← second

7- hour , minute , second   را چاپ کن

8- پایان

 

 

 

  1. الگوریتمی بنویسید که شعاع دایره را دریافت کند ، مساحت و محیط دایره را بدست آورد.

 

1-      شروع

2-     R را دریافت کن

3-     3.14 *r*r   ←  masahat

4-     2* 3.14 *r ← mohit

5-     masahat  و mohit  را نمایش بده

6-     پایان

 

  1. الگوریتمی بنویسید که عددی را دریافت کند ، تعیین کند مثبت است یا منفی.

1-      شروع

2-     N را دریافت کن

3-     اگر  n > 0    آنگاه 

                پیغام  " عدد مثبت است " را نمایش بده

  در غیر این صورت

             پیغام  " عدد منفی است " را نمایش بده

4-     پایان

 

  1. الگوریتمی بنویسید که نمره دانش آموزی را دریافت کند اگر مجاز است تعیین کند قبول است یا مردود.

 

1-      شروع

2-     N  را دریافت کن

3-     اگر n > = 0     and    n<= 20    آنگاه

             اگر   n > =10   آنگاه

                           پیغام  " قبول است "  را نمایش بده

            در غیر این صورت

                          پیغام  " مردود است " را نمایش بده

 در غیر این صورت

          پیغام  " عدد نا معتبر است " را نمایش بده

4-     پایان

 

  1. الگوریتمی بنویسیدکه عددی را دریافت کند  تعیین کند یک رقمی - دورقمی یا سه رقمی به بالا است.

 

1-      شروع

2-      را دریافت کن

3-     0 ←  sum

4-     مادامی که n  > 0    and       sum <4  تکرار کن

{

          n \ 10  ← n

          sum + 1  ← sum

}

5-     Sum را نمایش بده

6-     پایان

 

 

 

  1. الگوریتمی بنویسید که عدد N را دریافت کرده اعداد یک تا N را چاپ کند.

 

1-      شروع

2-       را دریافت کن

3-     1 ← c

4-     مادامی که   c <= n تکرار کن

{

        c را چاپ کن

       c+1  ← c

}

5-     پایان

  1. الگوریتمی بنویسید که عدد N را دریافت کرده اعداد زوج N تا 1 را از بزرگ به کوچک چاپ کند.

1-      شروع

2-      را دریافت کن

3-      اگر   n mod 2 <> 0   آنگاه   n-1  ← n

4-     مادامی که n >1   تکرار کن

{

        n را نمایش بده

       n-2  ← n

}

5- پایان

  1. الگوریتمی بنویسید که اعداد AوB را دریافت کرده اعداد فرد بین Aو B را چاپ کند

 

1-      شروع

2-     a , b  را دریافت کن

3-     اگر  a > b   آنگاه     

          a  ← max

          b ← min

در غیر اینصورت

       b ← max

       a ←  min

      4-  اگر  min  mod 2 =0      آنگاه  min+1  ← min در غير اين صورت min +2  ← min

       5-  مادامی که    min < = max  تکرار کن

        {

                  min را چاپ کن

                  min +2 ← min

         }

5-     پایان

  1. الگوریتمی بنویسید که اعداد AوB را دریافت کرده تعیین کند عدد بزرگ به عدد کوچک بخشپذیر هست یا خیر.

 

1-      شروع

2-     a , b  را دریافت کن

3-     اگر  a > b   آنگاه     

          a  ← max

          b ← min

در غیر اینصورت

       b ← max

       a ←  min

4-اگر   max  mod min =0  آنگاه

         پیغام  " بخشپذیر است " را نمایش بده

در غیر این صورت

      پیغام  "بخشپذیر نیست " را نمایش بده

5- پایان

  1. الگوریتمی بنویسید که عدد A را دریافت کرده تعداد ارقام آن را چاپ کند.

 

1-      شروع

2-      را دریافت کن

3-     0 ←  sum

4-     مادامی که n  > 0     تکرار کن

{

          n \ 10  ← n

          sum + 1  ← sum

}

5-     Sum را نمایش بده

6-     پایان

  1. الگوریتمی بنویسید که عدد A را دریافت کرده مجموع ارقام آن را چاپ کند.

 

1-شروع

2-N را دریافت کن

3- 0 ←  sum

4-مادامی که n  > 0     تکرار کن

{

         n  mod 10  ← b

          n\10     ← n

          sum + b  ← sum

}

5-Sum را نمایش بده

6-پایان

 

 

  1. الگوریتمی بنویسید که عدد A را دریافت کرده معکوس آن را چاپ کند.

 

1- شروع

2-N را دریافت کن

3- 0 ←  sum

4-مادامی که n  > 0     تکرار کن

{

         n  mod 10  ← b

          n\10     ← n

          Sum*10 + b  ← sum

}

5-Sum را نمایش بده

6-پایان

 

  1. الگوریتمی بنویسید که 10 عدد دریافت کرده تعیین کند هر کدام زوج است یا فرد.

 

1-      شروع

2-     1 ← c

3-     مادامی که c <= 10   تکرار کن

{

        n   را دریافت کن

        اگر n  mod  2 =0   آنگاه

                   پیغام  " زوج است " را نمایش بده

      در غیر این صورت

                 پیغام  " فرد است "  را نمایش بده

    c+1 ← c

 

}

4-     پایان

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده از یک تا آن عدد را چاپ کند.

 

1-      شروع

2-       را دریافت کن

3-     1← c

4-     مادامی که c <= n  تکرار کن

{

        c را  نمایش بده

        c+1 ← c

}

5-     پایان

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده اعداد فرد بین یک تا آن عدد را از بزرگ به کوچک چاپ کند.

 

1-      شروع

2-      را دریافت کن

3-      اگر   n mod 2 = 0   آنگاه   n-1  ← n

4-     مادامی که n >0   تکرار کن

{

        n را نمایش بده

       n-2  ← n

}

5- پایان

        

 

 

  1. الگوریتمی بنویسید که 10 نمره یک دانش آموز را دریافت کند مجموع و میانگین آنها را چاپ کند.

 

1-      شروع

2-     1← c

3-      0← sum

4-     مادامی که c < = 10    تکرار کن

{

        n   را دریافت کن

         Sum + n ← sum

 

}

5- sum /10   و sum    را نمایش بده

6-پایان

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده مجموع مقسوم علیه های آن را چاپ کند.

 

1-      شروع

2-     N  را دریافت کن

3-     1  c

4-     0 ← sum

5-     مادامی که  c < n  تکرار کن

 {

         اگر  n  mod  c =0   آنگاه  sum +c  ← sum

        c+1 ←c

}

6-     sum  را چاپ کن

7-     پایان

 

 

    

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده و  فاکتوریل آنرا محاسبه کند.

 

1-      شروع

2-     n را دریافت کن

3-     1 ← fact

4-     مادامی که  n > 1  تکرار کن

{

         fact * n ← fact

         n-1 ←  n

}

5-     fact را نمایش بده

6-     پایان

 

 

  1. الگوریتمی بنویسید که 10 عدد از سری فیبوناچی را چاپ کند. (34-21-13-8-5-3-2-1-1-0)

 

1-      شروع

2- 0 ←  f 0

3- 1 ← f 1

4-  f 0 و  f 1 را نمایش بده

5- 1 ← c

6- مادامی که c  <  9   تکرار کن

{

        f 0 + f 1 ←  sum

      Sum   را نمایش بده

        f1 ← f 0

      Sum   ← f1

      c+1 ← c

}

7-     پايان

 

 

 

 

 

  1. الگوریتمی بنویسید یک جدول ضرب 10*10 را چاپ کند.

 

1-      شروع

2-     1   i

3-     1 ←  j

4-     مادامی که  I < = 10    تکرار کن

{

        مادامی که j < = 10   تکرار کن

        {

                        i* j  را نمایش بده

                        j+1 ← j

        }

        i+1 ← i

}

5-     پایان

 

 

 

 

 

 

 

  1. الگوریتمی بنویسید که N عدد صحیح دریافت کرده بزرگترین و کوچکترین عدد را یافته و چاپ کند.

 

1-      شروع

2-     A  را دریافت کن

3-     N را دریافت کن

4-     A  max

5-     A← min

6-     2  c

7-     مادامی  c < = n   تکرار کن

{

A  را دریافت کن

اگر  a > max   آنگاه   a  ← max

اگر  a < min     آنگاه  a ← min

C+1 ← c

}

8-    max  و min  را چاپ کن

9-     پایان

 

  1. الگوریتمی بنویسید که 2 عدد را دریافت کند ، مجموع آنها را بدست آورده و نمایش دهد.

 

1-      شروع

2-     A , b  را دریافت کن

3-     A+b  ← sum

4-     Sum  را نمایش بده

5-     پایان

 

  1. الگوریتمی بنویسید که ارتفاع و قاعده ی یک مثلث را دریافت کرده مساحت آن را چاپ کند.

 

1-      شروع

2-     A, b را دریافت کن

3-     (a*b) /2   masahat

4-     Masahat   را نمایش بده

5-     پایان

 

  1. الگوریتمی بنویسید که قطر دایره ای را دریافت کرده مساحت و محیط دایره را چاپ کند.

 

1-      شروع

2-     R را دریافت کن

3-     R / 2 ← R

4-     2*3.14*R  mohit

5-     3.14*R*R ← masahat

6-     Mohit , masahat را نمایش بده

7-     پایان

  1. الگوریتمی بنویسید که دو عدد دریافت کند ، سپس مقدار آنها را جابجا کند بدون استفاده از متغیر کمکی.

 

1-      شروع

2-     a,b را دریافت کن

3-     a+b ← a

4-     a-b ← b

5-     a-b  a

6-     پایان

 

  1. الگوریتمی بنویسید که دو عدد دریافت کرده عددبزرگ تر را چاپ کند.

 

1-      شروع

2-     a , b را دریافت کن

3-     اگر  a>b   آنگاه

      a   را نمایش بده

       در غیر ان صورت

                     b را نمایش بده

4-     پایان

 

 

  1. الگوریتمی بنویسید که سه عدد دریافت کرده عددبزرگ تر را چاپ کند.

 

1-      شروع

2-     a , b, c  را دریافت کن

3-     اگر  a > b    آنگاه

       a ← max

در غیر این صورت

      b ← max

4-      اگر  c > max  آنگاه  c ← max

5-      Max  را چاپ کن

6-      پایان

 

  1. الگوریتمی بنویسید که عددی دریافت کرده اگر مثبت باشد آن را به توان دو برساند و اگر منفی باشد به توان سه برساند.

1-      شروع

2-     a را دریافت کن

3-     اگر a > 0     آنگاه 

       a*a   را چاپ کن

در غیر این صورت

      a*a*a را چاپ کن

4-     پایان

 

 

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده تعیین کند عدد وارد شده بر سه بخشپذیر هست یا خیر.

1-      شروع

2-     a را دریافت کن

3-     اگر  a mod 3 =0  آنگاه

پیغام  " عدد بر 3 بخشپذیر است "  را نمایش بده

               در غیر این صورت

پیغام  " عدد بر 3 بخشپذیر نیست "  را نمایش بده

4-      پایان

 

 

 

 

  1. الگوریتمی بنویسید که حقوق کارمندی را دریافت کرده اگر کمتر از 200000  باشد 2% اگر بین  200000 تا  400000 باشد 3% و اگر بیشتر از 400000 باشد  5% مالیات ازآن کم کند و نتیجه را چاپ کند.

 

1-      شروع

2-     a را دریافت کن

3-     اگر  a < 200000  آنگاه   a- a * 0.02   ←  pardakht

4-     اگر  a > 200000     and    a < 400000        آنگاه    a- a * 0.03   ←  pardakht

5-     اگر   a > 400000   آنگاه  a- a * 0.05   ←  pardakht

6-     Pardakht را نمایش بده

7-     پایان

 

 

 

  1. الگوریتمی بنویسید که ضرائب یک معادله درجه دو را دریافت کرده و ریشه های معادله را چاپ کند.

 

1-      شروع

2-     a , b , c  را دریافت کن

3-     b*b – 4*a*c  ← delta 

4-     اگر  delta  >= 0  آنگاه

          ) *a /(2 delta ))   (-b + sqrt(    ← x1

           *a) /(2 delta ))   (-b -  sqrt(    ← x2

              x1 , x2 را نمایش بده

             در غیر این صورت

                         پیغام  "  این معادله ریشه ندارد "  را نمایش بده

5-      پایان

 

 

 

 

  1. الگوریتمی بنویسید که دو عدد دریافت کرده تعیین کند عدد بزرگتر به عدد کوچکتر بخش پذیر است یا خیر.

 

 

1-      شروع

2-     a , b  را دریافت کن

3-     اگر  a > b   آنگاه

اگر   a  mod b =0  آنگاه  پیغام  " بخشپذیر است " را نمایش بده

        در غیر این  صورت

 اگر   b  mod  a =0  آنگاه  پیغام  " بخشپذیر است " را نمایش بده

4-      پایان

 

  1. الگوریتمی بنویسید که سه عدد را دریافت کند تعیین کند این سه عدد می توانند یک مثلث ایجاد کنند یا خیر.

 

1-      شروع

2-     a , b , c  را دریافت کن

3-     اگر  a + b  > c

4-      

  1. الگوریتمی بنویسید که طول سه ضلع مثلث را دریافت کند تعیین کند که چه نوع مثلثی است.

 

1-      شروع

2-     a , b , c  را دریافت کن

3-     اگر   a=b    or    b=c   or  a=c   آنگاه  پیغام " مثلث متساوی الساقین است " را نمایش بده

4-     اگر   a=b=c   آنگاه  پیغام " مثلث متساوی الاضلاع است " را نمایش بده

5-     پایان

 

  1. الگوریتمی بنویسید که عددی در مبنای 10 دریافت کرده آن را به مبنای 2 تبدیل کند.

 

1-      شروع

2-     M  را دریافت کن

3-     0← binary  و 0  ← P

4-      مادامی که  m <> 0   تکرار کن

{

 m  mod 2 ← digit

binary + digit * 10p  ← binary

p+1 ←  p

m\2 ← m

}

 

5-     binary  را نمایش بده

6-     پایان

 

 

  1. الگوریتمی بنویسید که عددی در مبنای 10 دریافت کرده آن را به مبنای 16 تبدیل کند.

1-      شروع

2-     M   را دریافت کن

3-     "" ← Hex

4-     مادامی که M <> 0   تکرار کن

    M   mod  16 ← digit

     اگر  digit =10   انگاه   “A”  ← s

                     اگر  digit =11   انگاه   “B”  ←  s

      اگر  digit =12   انگاه   “C”  ←  s

      اگر  digit =13   انگاه   “D”  ←  s

      اگر  digit =14   انگاه   “E”  ←  s

      اگر  digit =15   انگاه   “F”  ←  s

     اگر  digit <10   آنگاه  digit ←S

     S+Hex  ← Hex

     M\16 ← M

5-     Hex  را نمایش بده

6-     پایان

 

  1. الگوریتمی بنویسید که عددی در مبنای 2 دریافت کرده آن را به مبنای 10 تبدیل کند.

1-      شروع

2-     b را دریافت کن

3-     0 ← decimal و 0 ←  p

4-     مادامی که  b <> 0   تکرار کن

{

         B  mod 10  ← digit

         decimal + digit * 2p   ← decimal

         p+1  ←  p

          b\ 10 ← b

        }

5-      پایان

 

  1. الگوریتمی بنویسید که عددی در مبنای 16 دریافت کرده آن را به مبنای 10 تبدیل کند.

 

1-      شروع

2-     1    i

3-     "" ← Hex

4-     0 ← decimal

5-     Hex را دریافت کن

6-     مادامی که   s <> “” آنگاه  تکرار کن

{

I        امین حرف از سمت راست متغیر Hex ←S

         اگر s=”A”  آنگاه   10 ← digit

                 اگر s=”B”  آنگاه   11 ← digit

                  اگر s=”C”  آنگاه   12 ← digit

               اگر s=”D”  آنگاه   13 ← digit

               اگر s=”E”  آنگاه   14 ← digit

               اگر s=”F”  آنگاه   15 ← digit

               اگر s=”9”  آنگاه   9 ← digit

               اگر s=”8”  آنگاه   8 ← digit

          اگر s=”7”  آنگاه   7 ← digit

          اگر s=”6”  آنگاه   6 ← digit

          اگر s=”5”  آنگاه   5 ← digit

          اگر s=”4”  آنگاه   4 ← digit

          اگر s=”3”  آنگاه   3 ← digit

          اگر s=”2”  آنگاه   2 ← digit

          اگر s=”1”  آنگاه   1 ← digit

           اگر s=”0”  آنگاه   0 ← digit

          decimal + digit * 16I-1  ← decimal

         i+1  ← i

}

7-     Decimal را نمایش بده

8-    پایان

 

  1. الگوریتمی بنویسید که هر بار عددی دریافت کرده و شمارش کند با ورود عدد صفر یا منفی برنامه خاتمه یابد.

 

1-      شروع

2-     1  c

3-     N   را دریافت کن

4-     مادامی که  n <>0 Or      n >0   تکرار کن

{

          N   را  دریافت کن

             c+1 ← c

 

}

5-       را چاپ کن

6-     پایان

 

  1. الگوریتمی بنویسید که هر بار عددی دریافت کند تا زمانی که صفر وارد شود در پایان بزرگترین عدد وارد شده را چاپ کند.

 

1-      شروع

2-     N   را دریافت کن

3-     N  Max

4-     مادامی که  n <>0  تکرار کن

{

          N   را  دریافت کن

             اگر  n > max   آنگاه  n   ← max

 

}

5-     max   را چاپ کن

6-     پایان

 

  1. الگوریتمی بنویسید که 10 بار دو عدد دریافت کرده (ب م م)و(ک م م) آنهارا چاپ کند.

1-شروع

2-     1← I

3-     مادامی که   I < =10   تکرار کن

{

                A,B  را دریافت کن

                مادامی که  A MOD B <> 0  تکرار کن

                {

                                A  MOD  B ← Temp

                        B ← A

                        Temp ← B

                }

            B را نمایش بده

                I+1 ← I

}

 

4-     پایان

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده ارقام آن را تک تک چاپ کند.

1-      شروع

2-     N را دریافت کن

3-     مادامی که  N <> 0 تکرار کن

}

                N  MOD 10  را چاپ کن

                N \10 ← N

{

4-     پایان

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده ، تعیین کند چند رقمی است.

1-      شروع

2-     N را دریافت کن

3-     مادامی که  N <> 0 تکرار کن

}

                N \10 ← N

            C+1 ←  C

{

4-     C را چاپ کن

5-     پایان

 

  1. الگوریتمی بنویسید که هر بار عددی دریافت کند تا زمانی که صفر وارد شود در پایان تعداد اعداد زوج و مثبت را چاپ کند.
  1. شروع
  2. N   را دریافت کن
  3. 1 ← C
  4. مادامی که  n <>0  تکرار کن

{

          N   را  دریافت کن

             اگر  n > 0    AND   n   MOD  2 =0  آنگاه  C+1   ← C

 

}

  1. C   را چاپ کن
  2. پایان

 

 

  1. الگوریتمی بنویسید که عددی دریافت کرده معکوس آن را چاپ کند.

 

1-      شروع

2-     N را دریافت کن

3-     مادامی که  N <> 0 تکرار کن

}

                N  MOD 10  = B

            B=B*10+B

                N \10 ← N

{

4-     پایان

 

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده تعیین کند  بین 2 و 3 بر کدام یک بخش پذیر است

 

1-      شروع

2-     A را دریافت کن

3-     اگر  A  MOD  2= 0 آنگاه  پیغام   " عدد بر 2 بخشپذیر است "   را چاپ کن

4-     اگر  A  MOD  3= 0 آنگاه  پیغام   " عدد بر 3 بخشپذیر است "   را چاپ کن

5-     پایان

 

 

 

 

 

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده اگر منفی بود تعیین کند که زوج است یا فرد

         1- شروع

2-     A  را دریافت کن

3-     اگر A < 0   آنگاه 

{

                اگر   A  MOD 2 =0  آنگاه

                {

  پیغام " عدد زوج است " را نمایش بده

                              در غیر این صورت

                                               پیغام " عدد فرد است"  را نمایش بده

                        }

           }

  1. الگوریتمی بنویسید که یک عدد صحیح دریافت کند مجموع ارقام آن را بدست آورده و چاپ کند.

 

1-      شروع

2-     N را دریافت کن

3-       SUM

4-     مادامی که  N <> 0 تکرار کن

}

                N  MOD 10 SUM +   ←  SUM

                N \10 ← N

{

5-     SUM  را چاپ کن

6-     پایان

 

 

  1. الگوریتمی بنویسید که عددی دریافت کند تعیین کند رقم اول و آخر آن برابر است یا خیر .

1-      شروع

2-     N را دریافت کن

3-     N mod 10  first

4-     N \10 ← N

5-     مادامی که  N <> 0 تکرار کن

}

               N mod 10 ← last

                N \10 ← N

               

{

6-     اگر first =last  آنگاه پيغام “ yes “  را نمايش بده در غير اين صورت “no “   را نمايش بده

7-     پایان

 

  1. الگوریتمی بنویسید که 10 بار 3 عدد را دریافت کند و میانگین آنها را بنویسد

1-      شروع

2-      ← I

3-     مادامي كه  I<=10 تكرار كن

{

                ,b,c   a را بگير

                (a+b+c) / 3 را نمايش بده

                 I+1 ← I

{

4-     پايان

  1. الگوریتمی بنویسید که عدد 1 تا 100 را تک تک چاپ کند

1-      شروع

2-      ← I

3-     مادامي كه I < = 100   تكرار كن

{

                I را نمايش بده

                I+1 ← I

}

   4   4- پايان        

  1. الگوریتمی بنویسید که عددی صحیح دریافت کرده فاکتوریل آن را حساب کند

1-      شروع

2-      ← Fact

3-     N را دريافت كن

4-     مادامي كه  N > 1 تكرار كن

{

        Fact *N ← Fact

       N- 1 ← N

}

5-     Fact را نمايش بده

6-     پايان

 

  1. الگوریتمی بنویسید که ده عدد دریافت کرده مجموع آنها را چاپ کند

1-      شروع

2-      ← I

3-     0   ← sum

4-     مادامي كه  I<=10 تكرار كن

{

                   a را بگير

                sum +a  ← sum

                 I+1 ← I

{

 

5-     sum  را نمايش بده

6-     پايان

 

  1. الگوریتمی بنویسید که دو عدد A و B را دریافت کرده اعداد زوج بین آنها را چاپ کند

1-      شروع

2-     a , b را دريافت كن

3-     اگر a mod b =0 انگاه  a+2 ← a  در غير اين صورت  a+1 ← a

4-     مادامي كه  a < b تكرار كن

{

                a  را نمايش بده

                a+2 ← a

}

5-     پايان

 

  1. الگوریتمی بنویسید که سن شخصی را بر حسب سال دریافت کند تعیین کند چند ماه و چند هفته و چند روز است

 

1-      شروع

2-     Age را بگير

3-     Age *12 ← m

4-     Age*12*4 ← h

5-     Age*12*4*7 ← r

6-     m,h,r را نمايش بده

7-     پايان

امتياز : نتيجه : 1 امتياز توسط 1 نفر مجموع امتياز : 1

بازديد : 2306
[ چهارشنبه 20 آذر 1398 ] [ 22:28 ] [ سعید شیرزاد ]

تهیه کننده:سعید شیرزاد

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

CodefriendCodefriend

 

دلیل اصلی این موضوع شناخت ناکافی بعضی از کارفرماها و از طرفی وجود افرادی با دانش و توانایی پایین در این بخش است.در ادامه به اختصار دو مورد از مشکلات اصلی این شغل را شرح می دهیم.

  1. کارفرماهایی با شناخت سطحی از برنامه‌نویسی همیشه مشکل این شغل هستند، کارفرمایی که فقط به رسیدن به پول و کارکردن سیستم فکر می‌کند و ساختار و محاسبات پایه سیستم برایشان از اهمیت کم تری برخوردار است و به همین دلیل اکثراٌ چنین سازمان‌هایی با مشکل از دست دادن نیروی متخصص مواجه می‌شوند.
  2. توهم برنامه‌نویسی در بعضی افراد مشکل بعدی این حرفه است، توهمی که ناشی از دانش و توانایی کم و نگاه سطحی به برنامه‌نویسی است. آیا یک برنامه‌نویس که نتواند کد ایجاد شده خود (کپی شده‌ی خود) را توضیح دهد یک برنامه‌نویس است!؟
  3. ضعف دانشگاه ها : این مورد را همه قبول دارن که دانشگاه های ایران اکثرا مدرک گرا هستن و دانشجو با حفظ کردن جزوات فقط باید ترم را پاس می کند! دانشگاه ها مهمترین مکان برای تربیت برنامه نویسان در دنیاست و جای تاسف دارد که در دانشگاه های ایران زبان های برنامه نویسی ضعیف به بدترین شکل ممکن آموزش داده میشود و آن هم الان از زبانهای 2010 به قبل مانند c , c++و…که سالهای قبل جای خودشون رو به زبانهای پیشرفته و شی گرا داده اند در کلاسهای آکادمیک تدریس میشود.
  4. تحریم : به خاطر مسائل سیاسی و تحریم های صورت گرفته علیه ایران و البته کم کاری در حوزه فناوری اطلاعات در ایران ، متاسفانه دسترسی به سایتهای عظیم علمی و پژوهشی میسر نمیباشد و برنامه نویسان باهوش و حرفه ای ایرانی مجبورند به شرکتهای اروپایی مهاجرت کنند.
  5. بی توجهی به استعداد ها : فعالان در حوزه رایانه و برنامه نویسی اکثرا در شهر های تهران ، اصفهان ، مشهد و نهایتا شیراز و یزد حمایت میشوند در صورتی که استعداد های بزرگی در سایر شهر های ایران هستند که بدلیل نبود امکانات و …حمایت نمیشوند.
  6. عدم سرمایه گذاری : برنامه نویسی یک کار پر هزینه است در صورتی که در ایران کسی حاضر به سرمایه گذاری در این حوزه نیست ، دولت و ادارات نیز هیچ حمایتی به عمل نمی آورند.اما در زمان حال این موضع یک مقدار با گذشته فرق کرده و به برنامه نویس و شغل برنامه نویسی دید بهتری پیدا شده است.

بررسی بازار کار برنامه‌ نویسی

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

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

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

بررسی حقوق برنامه‌ نویس:

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

میانگین حقوق 50% برنامه‌نویسان عادی بین 1.5 تا 3 میلیون تومان می‌باشد، که به طور کلی میانگین حقوق 2 میلیون را دارا می‌باشند

میانگین حقوق 50% برنامه‌نویسان ارشد بین 2 تا 4.5 میلیون تومان می‌باشد، که به طور کلی میانگین حقوق 3 میلیون را دارا می‌باشند.

میانگین حقوق 50% مدیر فنی (مدیر برنامه‌نویسان ارشد) بین 2.5 تا 5 میلیون تومان می‌باشد، که به طور کلی میانگین حقوق 3.7 میلیون را دارا می‌باشند.

امتياز : نتيجه : 0 امتياز توسط 0 نفر مجموع امتياز : 0

بازديد : 50
[ دوشنبه 18 آذر 1398 ] [ 0:20 ] [ سعید شیرزاد ]

بارها پیش آمده که در بین دوستان برنامه نویس در مورد “تعریف برنامه نویسی” بحث و صحبت کرده ایم و در انتها به یک تعریف جامع و دقیق نرسیده ایم و هر کسی یک تعریف اختصاصی برای برنامه نویسی ارائه داده است. در این مقاله میخواهم یک تعریف جامع از این کلمه فوق العاده دوست داشتنی ارائه بدم تا هم خیال خود و هم خیال دوستان رو راحت کنم. پس پیشنهاد میکنم تا انتهای این مقاله همراه من باشید که ابتدا یک تعریف عامیانه و در انتها یک تعریف علمی از برنامه نویسی ارائه دهم.

تعریف برنامه نویسی

برنامه نویسی چیست؟

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

نکته: دقت کنید که برنامه نویسی باید به گونه ای انجام شود که کامپیوتر دستورات شما را متوجه شده و آنها را به درستی اجرا کند.

توجه: برنامه نویسی هنر تبدیل کردن خواسته های بشر به زبان قابل فهم برای ماشین (کامپیوتر) است.

زبان برنامه نویسی :

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

زبان برنامه نویسی

نکته: زبان های برقراری ارتباط با کامپیوتر یا همان زبان های برنامه نویسی بسیار متنوع هستند، مهم این است که شما مفاهیم برنامه نویسی و تبدیل کردن خواسته های خودتان به دستورات کامپیوتری را متوجه شوید.

برنامه یا Program چی هست؟

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

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

نکته مهم: در برنامه نویسی اصطلاحاً به هر دستوری که می خواهیم اجرا شود یک Statement گفته می شود. حال برای نوشتن تعدادی Statement ما نیاز به یک ویرایشگر متن داریم تا بتوانیم دستورات مد نظر را در آن وارد سازیم.

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

برخی از افراد بر این باورند که برای برنامه نویس شدن نیاز است تا تحصیلات دانشگاهی داشت یا یک متخصص علم ریاضیات بود. درست است که داشتن ذهن ریاضیاتی و تحلیلی به هرچه بهتر شدن شما به عنوان یک برنامه نویس کمک می کند، اما این اصلاً بدان معنا نیست که اگر شما متخصص ریاضیات نباشید نمی‌توانید به یک برنامه نویس موفق مبدل شوید.

امتياز : نتيجه : 5 امتياز توسط 1 نفر مجموع امتياز : 5

بازديد : 50
[ دوشنبه 18 آذر 1398 ] [ 0:10 ] [ سعید شیرزاد ]

تهیه کننده:سعید شیرزاد

چگونه برنامه نویسی را شروع کنیم؟

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

کدفرند،برگذاری دوره های آموزش رایگان و تخصصی برنامه نویسی

CodeFriend.ir

 

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

حوزه برنامه نویسی خودتان را مشخص کنید

برنامه نویسی دسکتاپ در واقع برنامه نویسی تمام برنامه های کاربردی که توی کامپیوتر ها  میتوان نصب و اجرا شود رو شامل می شود. مانند نرم افزارهای انبار داری، حسابداری، اتوماسیون های اداری و امثال این ها… در این حوزه می شود برای سازمان ها، شرکت ها برنامه  نوشت، اما چون اکثرا سازمان ها با شرکت های بزرگ برنامه نویسی قرارداد دارند شما میتوانید به عنوان یک برنامه نویس در یکی از این شرکت های برنامه نویسی کار کنید و حقوق ماهیانه دریافت کنید.

همچنین میتونید برای خودتان یک پروژه های کوچیک را بنویسید و بفروشید که این کار هم درآمد و آینده اش  کاملا نامشخص است. در حال حاضر داشتن یک شغل مناسب در این حوزه کمی سخت است اما همیشه کار برای افراد خلاق و متخصص وجود دارد.

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

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

برای اندروید برنامه نویسی کنیم یا IOS؟

برنامه نویسانی که میخواهد در حوزه موبایل کار کند نیز بین اندروید و IOS میتوانند تردید پیدا کنند. این سوال جوابش واقعا مشخص است: خب مسلم است اندروید! بیش از ۸۰ درصد گوشی های هوشمند سیستم عامل اندروید دارند و در ایران این رقم تا ۹۰ درصد افزایش پیدا کرده. آینده اندروید نیز با حمایت گوگل درخشان است.

پس شکی نیست که کدنویسی برای اندروید بهتر است. برای نوشتن اپلیکشن های اندروید نیز زبان جاوا را بهتر است یاد بگیرید. زبان جاوا یک زبان دوست داشتنی است و چون شما احتمالا قبلا با سی یا سی پلاس پلاس کار کرده اید کار با جاوا نیز برایتان راحت خواهد بود چون بسیار شبیه بهم هستند.

بهترین زبان برنامه نویسی چیست؟

اگر از هرکسی که کمی با برنامه نویسی  آشنایی دارد بپرسید که بهترین زبان برای شروع برنامه نویس چیست؟ بدون شک جوابش C یا C++ خواهد بود.C را میتوان یک زبان مادر دانست بطوری که خیلی از زبان های کنونی از این زبان متولد شده اند. برای شروع پیشنهاد ماهم سی یا سی پلاس پلاس یا جاوا است.

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

برای یادگیری برنامه نویسی چکار کنیم؟

شاید از هر کسی که اکنون برنامه نویس است بپرسید با چه روشی توانسته برنامه نویس را یاد بگیرد به شما جواب های متفاوتی بدهند. بعضی ها بر روی کتاب تاکید دارند چون معتقند بسیار منسجم است مخالفان نیز یادگیری از روی کتاب را واقعا خسته کننده میدانند. عده ای هم اینترنت را بهترین استاد می دانند چون اعتقاد دارند هرچیزی درآن یافت میشود مخالفان نیز میگوید اینترنت در واقع انبوهی از اطلاعات است که میتواند شما را سردرگم کند همچنین هرکسی میتواند آنها را تولید کرده باشد و معتبر نباشد.

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

روشی را برای یادگیری برنامه نویسی انتخاب کنید که ساده باشد و باعث شود از یادگیری لذت ببرید. اگر از من بپرسید چه روشی را برای یادگیری برنامه نویسی پیشنهاد میدهم بدون شک اولین گزینه من دیدن فیلم های آموزشی است.

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

امتياز : نتيجه : 5 امتياز توسط 2 نفر مجموع امتياز : 10

بازديد : 54
[ یکشنبه 17 آذر 1398 ] [ 23:27 ] [ سعید شیرزاد ]
آخرين مطالب ارسالي
اموزش لگوریتم نویسی تاريخ : چهارشنبه 20 آذر 1398
نمونه سوالات الگوریتم تاريخ : چهارشنبه 20 آذر 1398
تعریف برنامه نویسی تاريخ : دوشنبه 18 آذر 1398
اموزش برنامه نویسی تاريخ : یکشنبه 17 آذر 1398
.: Weblog Themes By roztemp :.

آرشيو
جست و جو