برنامهنویسی رایانه در فرهنگ واژه غیر متخصّصین ممکن است به تمام پروژه ساخت نرمافزار یا برنامهٔ رایانهای گفته شود. با این همه برنامهنویسی تنها بخشی از فرایند توسعهٔ نرمافزار یا برنامه رایانهای است. اهمیت، توجه و منابع اختصاص داده شده به برنامهنویسی، بسته به ویژگیهای مشخص شده محصول و خواست افراد درگیر در پروژه و کاربران و در نهایت شیوهٔ انتخاب شدهمهندسی نرمافزار متغیر است.
برنامهنویسی رایانه (که اغلب به طور کوتاه برنامهنویسی نامیده میشود) فرایند سوق دادن ساختار اصلی یک مسئله محاسباتی به برنامهای قابل اجرا است. این کار مستلزم فعالیتهایی همچون تحلیل و درک مسئله است و عموماً حل چنین مسایلی منجر میشود به ایجاد یک الگوریتم، بازبینی نیازمندیهای الگوریتم که شامل صحت و میزان منابع مصرفی است، پیادهسازی (که معمولاً به عنوان کدینگ از آن یاد میشود) این الگوریتم در یک زبان برنامهنویسی مقصد، تست کردن، اشکال زدایی، نگه داری کد منبع، پیادهسازی سیستم ساخت(build system) و مدیریت مصنوعات مشتق شده مانند کد ترجمه شده به زبان ماشین برنامههای کامپیوتری. الگوریتم اغلب تنها به شکل قابل تجزیه و تحلیل برای انسان و قابل استدلال با منطق نمایش داده میشود. کد منبع به یک یا چند زبان برنامهنویسی، مانند جاوااسکریپت، اسمالتاک، پایتون، جاوا، سی شارپ، سی پلاسپلاس و سی نوشته شده است.
زبانهای برنامهنویسیزبانهای متعدد برنامهنویسی وجود دارند که هر کدام از آنها سبکهای خاصی را پشتیبانی میکنند . انتخاب زبان برنامهنویسی مورد نظر بر اساس ملاحظات متعددی صورت میگیرد: مانند سیاست شرکت، مناسب بودن برای وظیفه در نظر گرفته شده، موجود بودن بستههای برنامه از پیش آماده شده یا نظرات شخصی. به شکل ایدهآل مناسبترین زبان برنامهنویسی برای کاربرد مورد نظر که در دسترس باشد ، انتخاب میشود. موضوعاتی که باعث میشوند از این وضعیت ایدهآل فاصله گرفته شوند شامل موضوعاتی مانند یافتن تعداد کافی برنامه نویسان ماهر که بتوانند تیم کاری تشکیل دهند، در دسترس بودن کامپایلرهای مناسب برای زبان مورد نظر، کارایی برنامههای نوشته شده با زبان مورد نظر، است.
زبانهای برنامهنویسی در طیفی بین زبانهای "سطح پائین " تا "زبانهای سطح بالاً قرار میگیرند. زبانهای سطح پائین معمولاً به زبان ماشین نزدیکتر هستند و سریعتر اجرا میشوند، در مقابل زبانهای سطح بالا خلاصه تر و برای کاربرد آسان تر هستند ولی با سرعت کمتری اجرا میشوند. کد نویسی با زبانهای سطح بالا معمولاً آسان تر از کد نویسی با زبانهای سطح پائین هستند.
آلن داونی در کتاب " چگونه به شکل یک استاد رایانه فکر کنیم " مینویسد:
جزئیات در زبانهای برنامهنویسی مختلف متفاوت به نظر میرسند ولی تعدادی از ساختارهای اساسی در همه زبانهای برنامهنویسی یکسان هستند:
ورودی: دادهها را از صفحه کلید، یک فایل یا وسایل دیگر فراهم میکند.خروجی: اطلاعات را روی صفحه تصویر نشان میدهد، به یک فایل میفرستد یا به دستگاههای دیگری انتقال میدهد.محاسبات: اعمال محاسباتی اساسی مثل جمع و ضرب را انجام میدهد.حالتهای شرطی: شرطهای مشخصی را کنترل میکند و بر اساس آن رشته مناسبی از عبارات را اجرا میکند.حلقه: بعضی اعمال را به شکل تکراری انجام میدهد، معمولاً با استفاده از تعدادی از متغیرها این کار انجام میشود.بسیاری از زبانهای برنامهنویسی مکانیسمهایی را برای استفاده از کتابخانههای مشترک فراهم میکنند. توابعی در این کتابخانهها بر اساس الگوهای مناسب اجرایی ایجاد میشوند (مانند روشهای انتقال آرگومانها) و سپس میتوان از این توابع در زبانهای متعدد برنامهنویسی استفاده کرد.
فهرست مطالب:
فصل اول: مقدمات زبان ++C
تاریخچه مختصر
قانون نامگذاری شناسه ها
متغیر ها
اعلان متغیر
تخصیص مقادیر به متغیر
داده های از نوع کرکتر
کرکتر های مخصوص
رشته ها
نمایش مقادیر داده ها
دریافت مقادیر
عملگر انتساب
عملگر های محاسباتی
عملگرهای افزایش و کاهش
عملگر sizeof
عملگرهای جایگزینی محاسباتی
اولویت عملگرها
توضیحات
توابع کتابخانه
برنامه در ++C
فصل دوم: ساختارهای تصمیم گیری و تکرار
عملگر های رابطه ای عملگر شرطی دستورالعمل شرطی عملگر کاما عملگر های منطقی دستورالعمل For فصل سوم: سایر ساختارهای تکرار دستورالعمل while دستورالعمل do while دستورالعمل break دستورالعمل continue دستورالعمل switch تابع cin.get عملگر static_cast جدول اولویت عملگرها فصل چهارم: اعداد تصادفی تولید اعداد تصادفی تعریف نوع داده ( typedef ) داده های از نوع شمارشی فرمت های مختلفه مقادیر خروجی فصل پنجم: آرایه ها آرایه یک بعدی آرایه دو بعدی فصل ششم: توابع تعریف تابع تابع بازگشتی توابع درون خطی انتقال پارامترها از طریق ارجاع کلاس های حافظه ( storage classes ) سربارگذاری توابع فصل هفتم: ساختارها و اشاره گرها ساختارها Union ها اشاره گرها ( Pointer) تعریف آرایه آرایه های دو بعدی و اشاره گرها تخصیص حافظه بصورت پویا ( عملگر new ) رشته ها و توابع مربوطه فصل هشتم: برنامه نویسی شی گرا تعریف شی گرایی چند ریختی خاصیت ارث بری پشته ایجاد شی ارث بری سازنده ها و نابود کننده ها توابع دوست کلاس های دوست توابع سازنده پارامتر دار توابع سازنده یک پارامتری عضوهای static کلاسهای تو در تو کلاس های محلی استفاده از object ها بعنوان پارامترهای تابع برگشت اشیاء انتساب اشیاء آرایه اشیاء اشاره گر به اشیاء اشاره گر this توابع مجازی و پلی مرفیسم
الگوریتم (نسبت: الگوریتمی، خوارزمیک) یا خوارزمی مجموعهای متناهی از دستورالعملها است، که به ترتیب خاصی اجرا میشوند و مسئلهای را حل میکنند. به عبارت دیگر یک الگوریتم، روشی گام به گام برای حل مسئله است. شیوه محاسبه معدل در مدرسه، یکی از نمونههای الگوریتم است.
ریشه واژهٔ الگوریتمواژه الگوریتم از نام ریاضیدان و ستارهشناس و جغرافیدان نامی ایرانی، ابوجعفر محمد بن موسی خوارزمی (الخوارزمی)، گرفته شده است، که در خوارزم زاده شد و در دانشگاه «بیت الحکمه» بغداد به اوج شهرت رسید. خوارزم یکی از شهرهای «ایران بزرگ» بود، که امروزه در ازبکستان واقع شده است و خیوه نام دارد. رسالهای که خوارزمی در قرن ۹ میلادی به عربی نگاشته بود، در قرن ۱۲ بهلاتین با نام "Algoritmi de numero Indorum" ترجمه شد؛ یعنی "[کتابی بدست] «الگوریتمی» در مورد اعداد هندی"، که «الگوریتمی» نام الخوارزمی بود که مترجم در تبدیل به لاتین نام وی را جلوی نام اصلی کتاب (در مورد اعداد هندی) آورده بود. در قرن ۱۳ میلادی واژه الگوریسموس(algorismus) به معنای «سیستم شمارش عربی (دهدهی)» (یعنی اعداد ۱ تا ۹ به علاوه صفر، و نیز مفهوم اعشار) بود؛ که هنوز هم یکی از معانی واژه الگوریسم(algorism) است. معنای دیگر الگوریسم «حساب کردن با کمک اعداد عربی» است؛ یعنی فن انجام أعمال حسابی پایه، مانند جمع و ضرب، با قرار دادن اعداد در زیر هم و إعمال قواعدی خاص، که جایگزین به کارگیری اعداد رومی و استفاده از چرتکه شد. حتی روش انجام دستی تقسیم و جذر گرفتن (رادیکال) هم الگوریسم نامیده میشود. در قرن ۱۹ این کلمه در فرانسوی به algorithme تغییر شکل پیدا کرد، البته معنایش ثابت ماند. طولی نکشید که این کلمه به شکل algorithm وارد زبان انگلیسی شد؛ ولی فقط در اواخر قرن ۱۹ میلادی بود که معنای عامتر امروزیاش را یافت، و به «هر مجموعه قواعدی برای انجام یک رویه محاسباتی یا روال رایانهای به کار رود» الگوریتم گفته شد.
تبدیل نام الخوارزمی به الگوریسم و سپس الگوریتم احتمالاً تحت تأثیر واژه یونانی arithmos (به معنای عدد) و arithmetic (به معنای محاسباتی) بوده است. برخی منابع هم کلمه لگاریتم را هم در تبدیل الگوریسم و الگوریتم بی تأثیر ندانستهاند.
برنامهنویسی رایانه در فرهنگ واژه غیر متخصّصین ممکن است به تمام پروژه ساخت نرمافزار یا برنامهٔ رایانهای گفته شود. با این همه برنامهنویسی تنها بخشی از فرایند توسعهٔ نرمافزار یا برنامه رایانهای است. اهمیت، توجه و منابع اختصاص داده شده به برنامهنویسی، بسته به ویژگیهای مشخص شده محصول و خواست افراد درگیر در پروژه و کاربران و در نهایت شیوهٔ انتخاب شدهمهندسی نرمافزار متغیر است.
برنامهنویسی رایانه (که اغلب به طور کوتاه برنامهنویسی نامیده میشود) فرایند سوق دادن ساختار اصلی یک مسئله محاسباتی به برنامهای قابل اجرا است. این کار مستلزم فعالیتهایی همچون تحلیل و درک مسئله است و عموماً حل چنین مسایلی منجر میشود به ایجاد یک الگوریتم، بازبینی نیازمندیهای الگوریتم که شامل صحت و میزان منابع مصرفی است، پیادهسازی (که معمولاً به عنوان کدینگ از آن یاد میشود) این الگوریتم در یک زبان برنامهنویسی مقصد، تست کردن، اشکال زدایی، نگه داری کد منبع، پیادهسازی سیستم ساخت(build system) و مدیریت مصنوعات مشتق شده مانند کد ترجمه شده به زبان ماشین برنامههای کامپیوتری. الگوریتم اغلب تنها به شکل قابل تجزیه و تحلیل برای انسان و قابل استدلال با منطق نمایش داده میشود. کد منبع به یک یا چند زبان برنامهنویسی، مانند جاوااسکریپت، اسمالتاک، پایتون، جاوا، سی شارپ، سی پلاسپلاس و سی نوشته شده است.
زبان برنامهنویسی سی، زبانی همه منظوره، ساختیافته، دستوری و روندگرا میباشد که در سال ۱۹۷۲ توسط دنیس ریچی در آزمایشگاههای بل ساخته شد.
پیشینهدر سال ۱۹۶۷ مارتین ریچاردز زبان BCPL را برای نوشتن نرمافزارهای سیستمعامل و کامپایلر در دانشگاه کمبریج ابداع کرد. سپس در سال ۱۹۷۰ کن تامسون بل زبان B را بر مبنای ویژگیهای زبان BCPL نوشت و از آن برای ایجاد اولین نسخههای سیستمعامل یونیکس در آزمایشگاههای بلاستفاده کرد. زبان C در سال ۱۹۷۲ توسط دنیس ریچی از روی زبان B و BCPL در آزمایشگاه بل ساخته شد و ویژگیهای جدیدی همچون نظارت بر نوع دادهها نیز به آن اضافه شد. ریچی از این زبان برای ایجاد سیستمعامل یونیکس استفاده کرد اما بعدها اکثر سیستمعاملهای دیگر نیز با همین زبان نوشته شدند. این زبان با سرعت بسیاری گسترش یافت و چاپ کتاب "The C Programming Language" در سال ۱۹۷۸ توسط برایان کرنیگان و ریچی باعث رشد روزافزون این زبان در جهان شد.
متأسفانه استفاده گسترده این زبان در انواع کامپیوترها و سختافزارهای مختلف باعث شد که نسخههای مختلفی از این زبان بوجود آید که با یکدیگر ناسازگار بودند. در سال ۱۹۸۳ مؤسسه استانداردهای ملی آمریکا (ANSI) کمیتهای موسوم به X3J11 را را مأمور کرد تا یک تعریف فاقد ابهام و مستقل از ماشین را از این زبان تدوین نماید. در سال ۱۹۸۹ این استاندارد تحت عنوان ANSI C به تصویب رسید و سپس در سال ۱۹۹۰، سازمان بینالمللی استانداردسازی (ISO) نیز این استاندارد را پذیرفت و مستندات مشترک آنها تحت عنوان ANSI/ISO C منتشر گردید.
در سالهای بعد و با ظهور روشهای برنامهنویسی شئگرا نسخه جدیدی از زبان C بنام C++ توسط بییارنه استراستروپ در اوایل ۱۹۸۰ در آزمایشگاههای بل توسعه یافت. در C++ علاوه بر امکانات جدید، خاصیت شئگرایی نیز به C اضافه شدهاست.
با گسترش شبکه و اینترنت، نیاز به زبانی احساس شد که برنامههای آن بتوانند برروی هر ماشین و هر سیستمعامل دلخواهی اجرا گردد. شرکت سان مایکروسیستمز در سال ۱۹۹۵ میلادی زبانجاوا را برمبنای C و C++ ایجاد کرد که هم اکنون از آن در سطح وسیعی استفاده میشود و برنامههای نوشته شده به آن برروی هر کامپیوتری که از جاوا پشتیبانی کند (تقریباً تمام سیستمهای شناخته شده) قابل اجرا میباشد.
فهرست مطالب:
فصل اول: مفاهیم اولیه
الگوریتم
شرایط الگوریتم ها
فلوچارت
نوع داده مجرد
انواع توابع یک نوع داده
بررسی نحوه اجرای برنامه
و...
فصل دوم: زبان برنامه نویسی
مقدمه
ویژگی های مهم زبان C
کاراکتر
شناسه
متغیر
علامت توضیح
ساختار برنامه ها
دستورالعمل های اجرایی
و...
فصل سوم: انواع داده ها
مقدمه
انواع داده های اسکالر
انواع داده های غیر اسکالر
اعلان متغیرها
داده های صحیح
مقادیر ثابت صحیح
داده های اعشاری
داده های کاراکتری
و...
فصل چهارم: توابع ورودی و خروجی
مقدمه
تابع () printf
کاراکتر فرمت n%
تابع () scanf
و...
فصل پنجم: ساختارهای کنترلی و شرطی
مقدمه
دستور کنترلی while
دستور کنترلی do while
دستور کنترلی for
دستورهای شرطی if و if-else
دستور شرطی switch
و...
فصل ششم: برنامه سازی پیمانه ای
مقدمه
تعریف تابع
دستور return
فراخوانی تابع
تابع بازگشتی
استفاده از چند تابع
پارامترهای خط فرمان
و...
فصل هفتم: آرایه
مقدمه
تعریف آرایه
اندیس آرایه
مقداردهی اولیه آرایه
آرایه های چند بعدی
انتقال آرایه به یک تابع
آرایه ها و رشته ها
و...
فصل هشتم: اشاره گر
مقدمه
تعریف اشاره گر
آدرس متغیر
مقداردهی اولیه اشاره گر
اشاره گر تهی
عملیات روی اشاره گرها
و...
فصل نهم: نوع داده کاربر
مقدمه
ساختار
ساختارهای تو در تو
اختصاص مقادیر اولیه
آرایه ای از ساختارها
پردازش یک ساختار
انتقال ساختار به تابع
داده تعریف شده توسط کاربر
و...
فصل دهم: پشته و صف
مقدمه
نوع داده مجرد پشته
پشته چندگانه
ارزشیابی عبارات infix ،postfix ،prefix
نوع داده مجرد صف
صف حلقوی
و...
فصل یازدهم: ساختار درختی
مقدمه
درخت
نمایش درخت
نمایش لیست
نمایش فرزند چپ ـ همزاد راست
نمایش دودویی یک درخت
درخت دودویی
تفاوتهای درخت عادی با درخت دودویی
خواص درختان دودویی
درخت دودویی پر
و...
فصل دوازدهم: فایل
مقدمه
انواع فایل
بازکردن و بستن فایل
توابع کار با فایل ها
فایل های ورودی و خروجی
توابع دیگر
دستگاههای ورودی و خروجی استاندارد
و...
فصل سیزدهم: توابع کتابخانه ای
مقدمه
توابع تبدیل نوع
توابع ریاضی
توابع کاراکتری
توابع رشته ای
توابع تخصیص حافظه پویا
و...
توابع بسل، (به انگلیسی: Bessel functions) اولین بار توسط دانیل برنولی تعریف شدند و سپس فردریش بسل فرم عمومی آن را بررسی نمود. توابع بسل جوابهای معادله دیفرانسیل زیر میباشند:
معادله بسل معادلهای است که از معادلات قابل حل با سریهاست، و دارای نقطه تکین منظم است. نقطه تنها نقطه غیرعادی معادله فوق است. جوابهای معادله به توابع بسل معروفند. در معادلهٔ بالا یک عدد حقیقی یا یک عدد مختلط دلخواه میباشد که مرتبه تابع بسل را مشخص میکند.
بطورکلی توابع بسل از حل معادلات دیفرانسیل پارهای لاپلاس و معادله هلمهولتز در مختصات استوانهای و مختصات کروی بدست میآیند. از این رو این توابع در تئوری انتشار امواج و تئوری پتانسیل اهمیت بسزایی دارند. البته این توابع در حل معادلات ارتعاشات، معادلات رسانایی گرما و امواج الکترومغناطیس در مختصات استوانهای ظاهر میشوند.
تعریفتوابع بسل نوع اول آن دسته توابعی هستند که مربوط به بعنوان عدد طبیعی منفی میباشند که در صفر متناهی میباشد:
که تابع گاما میباشد که حالت کلی فاکتوریل برای اعداد غیرطبیعی میباشد.
نمودار توابع بسل از نوع اول، Jα(x)، به ازای مقادیر صحیح مرتبه α=0,1,2.
توابع بسل نوع دوم آن دسته توابعی هستند که در مبدا مختصات (نقطه صفر) تکین (Singular) هستند:
فهرست مطالب:
تابع مولد
بسط سری
مرتبه درست منفی
نمودار
روابط بازگشتی
معادله دیفرانسیل بسل
نمایش انتگرالی
حالت خاص
پرش فرانهوفر
کاواک مشدد استوانه ای
شرایط مرزی
صفرهای توابع بسل
رهیافتها به توابع بسل
تعامد
سری بسل
پتانسیل الکتروستاتیکی در استوانه توخالی
تابع نویمن
فرمولهای رونسکی
موجبرهای هم محور مغناطیسی عرضی
توابع هنکل
امواج پیشرونده استوانه ای
انتگرال اشلافلی
توابع بسل و نویمن بر حسب توابع هنکل
معادله هلم هولتز
توابع تعدیل یافته بسل
تابع تعدیل یافته بسل نوع دوم
تابع تعدیل یافته بسل نوع اول
یک نمایش انتگرالی برای تابع تعدیل یافته نوع دوم
بسط مجانبی تابع تعدیل یافته نوع دوم
و...
در آنالیز ریاضی، به تابعی مختلط تابع هرمیتی گویند که برابر باشد با مزدوج خودش که متغیرش تغییر علامت یافته: برای هر عضو دامنهٔ تابع f.
از این تعریف این خصوصیات نتیجه میشود که اگر تابع f تابعی هرمیتی بود آنگاه:
بخش حقیقی تابع f تابعی زوج است.بخش موهومی تابع f تابعی فرد است.چندجملهایهای چبیشف یک دنباله از چندجملهایهای متعامد هستند که به طرز بازگشتی محاسبه میشوند. نام این چندجملهایها از نام ریاضیدان روس پافنوتی چبیشف برگرفته شده که آنها را اولین بار در سال ۱۸۵۴ معرفی کرد.
تاریخپافنوتی چبیشف ریاضیدان روس متولد ۱۶ مه سال ۱۸۲۱ بود. چندجملهایهای چبیشف که به نام او شناخته میشوند، است یک توالی از چندجملهایهایارتوگونال هستند که می توان آنها را مثل فیبوناچی به صورت برگشت پذیر نوشت. این چندجملهایها دو نوع اول و دوم دارند که نوع اول آنها با T و نوع دوم آنها با U نشان داده میشوند. علت نام گذاری T این است که chebyshev به زبان فرانسوی Tchebyshev و به زبان آلمانی Tschebyschow می باشد.
کاربردچندجمله ایهای چبیشف بیشتر در تخمین کاربرد دارند و استفاده از آنها برای تخمین به مقدار زیادی خطا را کاهش می دهد. مثلاً در اندازه گیری طول یک نیم دایره و اشکال دارای قوس.
فهرست مطالب:
توابع هرمیت
تابع مولد
نمایش رودریگز
بسط سری
نوسانگر هماهنگ ساده
محاسبه برخی انتگرال ها
عملگرهای فزاینده و کاهنده
توابع لاگر
چند جمله ایهای وابسته لاگر
تعامد
اتم هیدروژن
چند جمله ایهای چبیشف
صورت مثلثاتی
سری چبیشف
چند جمله ایهای انتقال یافته چبیشف
توابع فوق هندسی
نماد پوکهامر
تابع فوق هندسی بر حسب نماد پوکهامر
رابطه توابع مجاور
نمایش فوق هندسی تابع فراکروی
نمایش فوق هندسی توابع لژاندر
توابع چبیشف
معادله فوق هندسی همشار
تابع خطا بر حسب تابع فوق هندسی همشار
تابع ناکامل گاما بر حسب تابع فوق هندسی همشار
فرمول اول کومر
نمایش توابع بسل
و...
مشتق ایدهٔ اصلی حساب دیفرانسیل، بخش اول آنالیز ریاضی است که نرخ لحظهای (یا نقطهای) تغییرات تابع را نشان میدهد. مشتق نیز، نظیر انتگرال، از مسئلهای در هندسه، یعنی یافتن خط مماس در یک نقطه از منحنی ناشی شدهاست.
مفهوم مشتق تا اوائل قرن ۱۷ میلادی، یعنی تا قبل از آنکه ریاضیدان فرانسوی، پییر دو فرما به تعیین اکسترممهای چند تابع خاص دست بزند، تنظیم نشده بود. فرما دریافت که خطوط مماس، در نقاطی که منحنی ماکزیمم یا مینیمم دارد، باید افقی باشد. از اینرو به نظرش رسید که مسئلهٔ تعیین نقاطاکسترمم تابع، به حل مسئلهٔ دیگر، یعنی یافتن مماسهای افقی مربوط میشود، تلاش برای حل این مسئلهٔ کلیتر بود که فرما را به کشف برخی از ایدههای مقدماتی مفهوم مشتق هدایت کرد.
در نگاه نخست اینطور به نظر میرسید که بین مسئلهٔ یافتن مساحت سطح زیر یک نمودار و موضوع تعیین خط مماس بر منحنی در یک نقطه رابطهای وجود ندارد، اما اولین کسی که دریافت این دو مفهومِ به ظاهر دور از هم، در واقع ارتباط نسبتاً نزدیکی با هم دارند آیزاک بارو معلم آیزاک نیوتون بودهاست.
اما مفهوم مشتق به شکل امروزی آن، نخستین بار در سال ۱۶۶۶ میلادی توسط نیوتون و به فاصلهٔ چند سال بعد از او، توسط گوتفرید لایب نیتس، مستقل از یکدیگر پدید آمد. این دو دانشمند در ادامهٔ کار خود، باز هم به طور مستقل، بخش دوم آنالیز ریاضی یعنی حساب انتگرال را عرضه کردند که اساس آن بر عمل انتگرالگیری قرار دارد.
نیوتون از شیوهٔ استدلال سینماتیک و با دیدگاه فیزیکی به بررسی مشتق پرداخته و از آن برای بدست آوردن سرعت لحظهای استفاده میکرد. اما لایب نیتس با دیدگاهی هندسی، از مشتق برای بدست آوردن ضریب زاویهٔ مماس در منحنیها استفاده میکرد. هر یک از این دو دانشمند نمادهای جداگانهای را برای نشان دادن مشتق به کار میبردند.
پیشرفت حساب دیفرانسیل و انتگرال در دوران بعد به آگوستین لویی کوشی، برنارد ریمان و برادران برنولی، یعنی ژاکوب و یوهان، مربوط میشود. گیوم لوپیتال (به فرانسوی: Guillaume de lHôpital)، دانشمند فرانسوی، در سال ۱۶۹۶ نخستین کتاب درسی مربوط به آنالیز ریاضی را با نام «آنالیز بینهایت کوچکها برای بررسی منحنیها» منتشر کرد که در واقع خلاصهای از درسهایی بود که یوهان برنولی به عنوان معلم برای او نوشته بود. در این کتاب، قاعدهٔ رفع ابهام در حد، با استفاده از مشتق نیز آمده که به قاعدهٔ هوپیتال مشهور است ولی در واقع متعلق به یوهان برنولی بودهاست.
فهرست مطالب:
تعریف مشتق
نمو تابع
نماد لایبنیتز
محاسبه مشتق توابع با استفاده از تعریف
تعبیر هندسی مشتق
قضیه
خط مماس
خط قائم
مشتق تابع مرکب
قانون زنجیری
جبر مشتقات
مشتق خارج قسمت
مشتقات توابع معکوس
مشتقات مراتب بالاتر
مشتق مرتبه nام
مشتق توابع مثلثاتی
تعبیر هندسی نسبتهای مثلثاتی
دایره مثلثاتی
علامت توابع مثلثاتی در ناحیههای مختلف
قضیه
توابع مثلثاتی و معکوس آنها
تابع متناوب
تابع سینوس و معکوس آن
تابع کسینوس و معکوس آن
تابع تانژانت و معکوس آن
تابع کوتانژانت و معکوس آن
مشتق توابع معکوس مثلثاتی
توابع نمایی، لگاریتمی و مشتق آنها
لگاریتم طبیعی
اهم فرمولهای لگاریتم
کاربرد توابع نمایی در اقتصاد و بازرگانی
توابع هذلولی و مشتق آنها
روابط بین توابع مثلثاتی هذلولی
توابع معکوس هذلولی و مشتق آنها
دیفرانسیل
دیفرانسیل تابع مرکب
جبر دیفرانسیل ها
دیفرانسیل مرتبه nام
محاسبات تقریبی به کمک دیفرانسیل
کاربردهای مشتق
جهت تغییرات تابع
ماکزیمم و مینیمم یک تابع
شرط لازم ماکزیمم و مینیمم نسبی
قضیه رول
تعبیر هندسی قضیه رول
قضیه مقدار میانگین برای مشتق
تحدب و تقعر یک منحنی و نقطه عطف
و...