سلام دوستان عزیز .. امیدوارم حالتون خوب باشه .. با قسمت سوم از ویژه برنامه ی کانال انجمن علمی علوم کامپیوتر دانشگاه گیلان ، در خدمت شما بزرگواران هستیم .. امیدوارم مطالبی که امروز تقدیم حضورتون میشه ، براتون مفید باشه ..
با ما همراه باشید 🌹
با ما همراه باشید 🌹
تشکر میکنیم از همه ی کسانی که در مسابقه ی شماره ی یک شرکت کردند .. پاسخ ها رو در پایان این مجموعه برنامه براتون قرار خواهیم داد .. اما میریم سراغ سوال مسابقه ی شماره ی دو .. این سوال مربوط به "نظریه ی محاسبات" هست و شما تا روز چهارشنبه 4 فروردین 95 فرصت دارید تا پاسخ خودتون رو به @SaeedZiadid ارسال کنید
این نکته رو هم بگم که کسانی که در مسابقه شرکت نکردند ، میتونن با پاسخ دادن به این سوال ،در قرعه کشی جایزه ی ما شرکت کنن .. پس هنوز فرصت هست
سوال رو باهم ببینیم :
این نکته رو هم بگم که کسانی که در مسابقه شرکت نکردند ، میتونن با پاسخ دادن به این سوال ،در قرعه کشی جایزه ی ما شرکت کنن .. پس هنوز فرصت هست
سوال رو باهم ببینیم :
دوستان عزیز
امروز در بحث معرفی زبان برنامه نویسی قصد داریم ، زبان برنامه نویسی سی شارپ رو معرفی کنیم .. گزیده ای از مطالب سایت ویکیپدیا رو پیرامون زبان # C با هم میبینیم .. در کل امیدواریم در پایان این 14 قسمت ، یک آشنایی کلی با زبان های برنامه نویسی معروف و مشهور پیدا کنیم همگی ..
این بخش رو ببینید ، بعدش باز هم در خدمت شما خواهیم بود 🌹
امروز در بحث معرفی زبان برنامه نویسی قصد داریم ، زبان برنامه نویسی سی شارپ رو معرفی کنیم .. گزیده ای از مطالب سایت ویکیپدیا رو پیرامون زبان # C با هم میبینیم .. در کل امیدواریم در پایان این 14 قسمت ، یک آشنایی کلی با زبان های برنامه نویسی معروف و مشهور پیدا کنیم همگی ..
این بخش رو ببینید ، بعدش باز هم در خدمت شما خواهیم بود 🌹
سی شارپ زبانی شیءگرا و سطح بالا از خانوادهٔ زبانهای چارچوب داتنت شرکت مایکروسافت است. زبان سی شارپ، یک زبان برنامهنویسی چند الگویی و منظم شده مدلهای تابعی، امری، عمومی، شیءگرا و جز گرا و در بستر دات نت میباشد. این زبان توسط مایکروسافت و جزئی از دات نت به وجود آمد و بعداً استانداردهای ECMA و ISO را نیز در بر گرفت. سی شارپ یکی از ۴۴ زبان برنامهنویسی است که توسط زمان اجرای زبان مشترک از چارچوب داتنت پشتیبانی میشوند و در همه جا به وسیله مایکروسافت ویژوال استودیو شناخته میشود. زبان سی شارپ با قدرت و در عین حال سطح بالایی خود توانسته توجه بسیاری از برنامه نویسان را به خود جلب کند.
این زبان برپایه سادگی، مدرن بودن، همه منظوره و شیءگرا بودن ساخته شد. آندرس هجلزبرگ، طراح زبان برنامهنویسی دلفی، سرپرستی تیم طراحان زبان سی شارپ را بر عهده داشت. در ابتدا نام این زبان COOL بود که مخفف C like Object Oriented Language بود، هر چند در ژوئیه ۲۰۰۰، زمانی که مایکروسافت پروژه را عمومی اعلام کرد، اسم آن به سی شارپ تغییر پیدا کرد.
این زبان برپایه سادگی، مدرن بودن، همه منظوره و شیءگرا بودن ساخته شد. آندرس هجلزبرگ، طراح زبان برنامهنویسی دلفی، سرپرستی تیم طراحان زبان سی شارپ را بر عهده داشت. در ابتدا نام این زبان COOL بود که مخفف C like Object Oriented Language بود، هر چند در ژوئیه ۲۰۰۰، زمانی که مایکروسافت پروژه را عمومی اعلام کرد، اسم آن به سی شارپ تغییر پیدا کرد.
💡سی شارپ یک زبان برنامهسازی ساده، مدرن، برای اهداف عمومی و شیءگرا است.
💡به دلیل اهمیت داشتن موضوع نیرومندی و دوام و بهرهوری برنامهنویس، زبان دارای چککننده Strong Type، چککننده مرزهای آرایه، تشخیص حالتهایی که یک متغیر مقداردهی اولیه نشدهاست، قابلیت انتقال کدها و Garbage Collection خودکار است.
💡این زبان برای استفاده در اجزای توسعه نرمافزار برای دستیابی به مزایای سامانههای توزیعی در نظر گرفته شدهاست.
💡قابلیت انتقال برنامهنویس بسیار مهم است، خصوصاً برای آن دسته از برنامهنویسانی که با زبانهای C و C++ آشنا هستند.
💡پشتیبانی از این زبان برای بینالمللی شدن بسیار مهم است.
💡زبان سی شارپ برای نوشتن برنامهها برای سامانههای تعبیه شده و میزبان در نظر گرفته شدهاست، سیستمعاملهای پیچیده بسیار بزرگ گرفته تا توابع اختصاصی بسیار کوچک.
💡هر چند برنامههای نوشته شده با سی شارپ طوری هستند که از لحاظ حافظه و پردازنده مورد نیاز مقرون به صرفه باشند، ولی خود زبان از لحاظ اندازه و کارایی به خوبی زبانهای C و اسمبلی نیست.
💡به دلیل اهمیت داشتن موضوع نیرومندی و دوام و بهرهوری برنامهنویس، زبان دارای چککننده Strong Type، چککننده مرزهای آرایه، تشخیص حالتهایی که یک متغیر مقداردهی اولیه نشدهاست، قابلیت انتقال کدها و Garbage Collection خودکار است.
💡این زبان برای استفاده در اجزای توسعه نرمافزار برای دستیابی به مزایای سامانههای توزیعی در نظر گرفته شدهاست.
💡قابلیت انتقال برنامهنویس بسیار مهم است، خصوصاً برای آن دسته از برنامهنویسانی که با زبانهای C و C++ آشنا هستند.
💡پشتیبانی از این زبان برای بینالمللی شدن بسیار مهم است.
💡زبان سی شارپ برای نوشتن برنامهها برای سامانههای تعبیه شده و میزبان در نظر گرفته شدهاست، سیستمعاملهای پیچیده بسیار بزرگ گرفته تا توابع اختصاصی بسیار کوچک.
💡هر چند برنامههای نوشته شده با سی شارپ طوری هستند که از لحاظ حافظه و پردازنده مورد نیاز مقرون به صرفه باشند، ولی خود زبان از لحاظ اندازه و کارایی به خوبی زبانهای C و اسمبلی نیست.
❎ منبع چارچوب داتنت مایکروسافت برای اجرا فقط ویندوز است. پیادهسازیهای دیگری برای اجرای برنامههای سی شارپ در ویندوز، لینوکس،BSD یا Mac OS X وجود دارند اما هنوز کامل نیستند: Mono و DotGNU در نوامبر سال ۲۰۰۲ توسط مایکروسافت (نسخه ۱٫۰) برای پیادهسازی CLI برای کار در Free BSD و Mac OS X ۱۰٫۲ ارائه شد، اما نسخههای بعدی آنها فقط قابل اجرا بر روی ویندوز بود.
دوستان عزیز .. انشاءالله در ساعات آینده ، درباره ی موضوع "نظریه محاسبات" صحبت میکنیم .. البته خیلی جنبه ی آموزشی شاید نداشته باشه .. بلکه قصد داریم درباره ی این درس مطالبی رو خدمتتون عرض کنیم ..
خوش بگذره به شما و همراه ما باشید
🌺🌺🌺🌺🌺🌺🌺🌺🌹🌹🌹🌹🌹🌹🌹🌹🌹
خوش بگذره به شما و همراه ما باشید
🌺🌺🌺🌺🌺🌺🌺🌺🌹🌹🌹🌹🌹🌹🌹🌹🌹
خب .. دوستان عزیز .. خسته نباشید میگم به همه ی شما .. امیدوارم هرجا که هستید ، سالم و پر نشاط باشید .. در اینجا قصد داریم مطالبی رو درباره ی مبحث نظریه ی محاسبات خدمت شما عرض کنیم
همونطور که در جریان هستید ، مبحث نظریه ی محاسبات یکی از مهمترین بحث های رشته ی علوم کامپیوتر هست..البته در دانشگاه و مقطع کارشناسی دو درس داریم در این موضوع که یکیش مبانی نظریه ی محاسبه هست و دیگری هم نظریه ی محاسبه .. این دو درس در کنکور ارشد هم بسیار مهم هستند .. برای همین خوبه که با کلیات این مبحث آشنا بشیم ..
در ابتدای کار چند سوال مطرح میشه :
❓- خواص ریاضی سخت افزار و نرم افزار های کامپیوتر چیست ؟
❓- محاسبه و الگوریتم چیست ؟ آیا می توان تعاریف دقیقی برای این مفاهیم ارائه کرد ؟
❓- محدودیت های کامپیوتر چیست؟ آیا هر چیزی محاسبه پذیر هست ؟
در ابتدای کار چند سوال مطرح میشه :
❓- خواص ریاضی سخت افزار و نرم افزار های کامپیوتر چیست ؟
❓- محاسبه و الگوریتم چیست ؟ آیا می توان تعاریف دقیقی برای این مفاهیم ارائه کرد ؟
❓- محدودیت های کامپیوتر چیست؟ آیا هر چیزی محاسبه پذیر هست ؟
هدف از نظریه ی محاسبه 🏁
تدوین مدل های ریاضی رسمی که دنیای واقعی کامپیوتر ها را نمایان سازند ، هدف اصلی نظریه ی محاسبه است . این زمینه از تحقیق توسط ریاضیدانان و اهل منطق در دهه ی 1930 شروع شد . زمانی که آنها تلاش می کردند تا معنی معنی محاسبات را درک نمایند ، سوال اصلی این بود که آیا همه ی مسائل ریاضی را می توان با روش های سیستماتیک حل کرد ؟ این تحقیقات در آن زمان منجر به وجود کامپیوتر گردید . این روزها نظریه ی محاسبه می تواند به 3 زمینه ی زیر تقسیم گردد :
⭐️نظریه ی پیچیدگی
⭐️نظریه ی محاسبه پذیری
⭐️نظریه ی اتوماتا
تدوین مدل های ریاضی رسمی که دنیای واقعی کامپیوتر ها را نمایان سازند ، هدف اصلی نظریه ی محاسبه است . این زمینه از تحقیق توسط ریاضیدانان و اهل منطق در دهه ی 1930 شروع شد . زمانی که آنها تلاش می کردند تا معنی معنی محاسبات را درک نمایند ، سوال اصلی این بود که آیا همه ی مسائل ریاضی را می توان با روش های سیستماتیک حل کرد ؟ این تحقیقات در آن زمان منجر به وجود کامپیوتر گردید . این روزها نظریه ی محاسبه می تواند به 3 زمینه ی زیر تقسیم گردد :
⭐️نظریه ی پیچیدگی
⭐️نظریه ی محاسبه پذیری
⭐️نظریه ی اتوماتا
⭐️نظریه ی پیچیدگی
سوال اصلی در این زمینه عبارت است از :
چه عواملی باعث می شوند که محاسبه پذیری برخی مسائل سخت و برخی دیگر ، آسان انجام می شوند.در بیان ساده و غیر رسمی ، مسئله ای را آسان گوییم هرگاه به راحتی حل پذیر باشد . مثلا منظم کردن اعداد یک تا یک ملیون و یا پیدا کردن نام در یک لیست تلفن و پیدا کردن سریع ترین راه برای رانندگی از نظقه ی الف تا ب یا از شهری به شهر دیگر در شمار مسائل حل پذیر ساده هستند . از طرف دیگر مسئله ای را سخت گوییم ، هرگاه راه حل کارا و ساده ای نداشته باشد و یا اصلا ندانیم که چنین راه هایی برایش وجود دارد . مثلا تجزیه ی یک عدد صحیح سیصد رقمی به عوامل اول و نظایر آن ، جزء مسائل سخت است .
سوال اصلی در این زمینه عبارت است از :
چه عواملی باعث می شوند که محاسبه پذیری برخی مسائل سخت و برخی دیگر ، آسان انجام می شوند.در بیان ساده و غیر رسمی ، مسئله ای را آسان گوییم هرگاه به راحتی حل پذیر باشد . مثلا منظم کردن اعداد یک تا یک ملیون و یا پیدا کردن نام در یک لیست تلفن و پیدا کردن سریع ترین راه برای رانندگی از نظقه ی الف تا ب یا از شهری به شهر دیگر در شمار مسائل حل پذیر ساده هستند . از طرف دیگر مسئله ای را سخت گوییم ، هرگاه راه حل کارا و ساده ای نداشته باشد و یا اصلا ندانیم که چنین راه هایی برایش وجود دارد . مثلا تجزیه ی یک عدد صحیح سیصد رقمی به عوامل اول و نظایر آن ، جزء مسائل سخت است .
⭐️نظریه محاسبه پذیری
در سال های 1930 به بعد ، Codel, Turing, Church کشف کردند که برخی مسائل با پایه ی ریاضی ، با کامپیوتر قابل حل نیست . مثالی از این نوع عبارت است از آیا یک گزاره ی دلخواه ریاضی ، صحیح است یا غلط . برای درگیر شدن با این مسائل ، به تعاریفی رسمی از این مفاهیم نیاز داریم :
کامپیوتر - الگوریتم - محاسبه
در سال های 1930 به بعد ، Codel, Turing, Church کشف کردند که برخی مسائل با پایه ی ریاضی ، با کامپیوتر قابل حل نیست . مثالی از این نوع عبارت است از آیا یک گزاره ی دلخواه ریاضی ، صحیح است یا غلط . برای درگیر شدن با این مسائل ، به تعاریفی رسمی از این مفاهیم نیاز داریم :
کامپیوتر - الگوریتم - محاسبه
⭐️نظریه ی اتوماتا
نظریه ی اتوماتا با تعاریف و خواص انواع مختلف مدل های محاسباتی سر و کار دارد . نظیر اتوماتای متناهی . این ها در پردازش متن ، کامپایلر ها و طراحی سخت افزار به کار می روند . گرامر های مستقل از متن برای تعریف زبان های برنامه نویسی و هوش مصنوعی به کار می روند .
نظریه ی اتوماتا با تعاریف و خواص انواع مختلف مدل های محاسباتی سر و کار دارد . نظیر اتوماتای متناهی . این ها در پردازش متن ، کامپایلر ها و طراحی سخت افزار به کار می روند . گرامر های مستقل از متن برای تعریف زبان های برنامه نویسی و هوش مصنوعی به کار می روند .
به طور خلاصه موضوعات اصلی در این 3 نظریه عبارت هستند از :
🎲نظریه ی پیچیدگی : دسته بندی اصلی بر طبق میزان سختی آنها و ارائه ی یک اثبات دقیق از اینگونه مسائل که سخت به نظر می آیند .
🎲نظریه ی محاسبه پذیری: دسته بندی مسائل از جنبه ی حل پذیری و یا حل ناپذیری
🎲نظریه ی اتوماتا : آیا همه ی این مدل ها دارای توانایی یکسان هستند یا برخی از آنها قادرند مسائل بیشتری حل کنند .
🎲نظریه ی پیچیدگی : دسته بندی اصلی بر طبق میزان سختی آنها و ارائه ی یک اثبات دقیق از اینگونه مسائل که سخت به نظر می آیند .
🎲نظریه ی محاسبه پذیری: دسته بندی مسائل از جنبه ی حل پذیری و یا حل ناپذیری
🎲نظریه ی اتوماتا : آیا همه ی این مدل ها دارای توانایی یکسان هستند یا برخی از آنها قادرند مسائل بیشتری حل کنند .
خب دوستان عزیز . به پایان این قسمت از عیدانه ی علوم کامپیوتری می رسیم . انشاءالله بتونیم در روزهای آینده با مطالبی بیشتر و کارآمد تر در خدمت شما عزیزان باشیم
شاد و پیروز باشید🌹
شاد و پیروز باشید🌹