
۴۴٬۰۰۰تومان
نوع فایل دانلود: EPUB
پس از خرید، یک فایل EPUB دریافت میکنید.
این فایل با Calibre، Apple Books و سایر کتابخوانهای دیجیتال مناسب است.
یادگیری برنامهنویسی با یکی از «جذابترین کاربردهای موجود»: معماهای الگوریتمی؛ از تنظیم وقت سلفی گرفته تا بررسی فرضیهٔ شش درجه جدایی. این کتاب پلی میسازد میان دنیای سرگرمکنندهٔ معماهای الگوریتمی (معماهایی که با الگوریتم حل میشوند) و دنیای کاربردی برنامهنویسی کامپیوتر، و به خواننده یاد میدهد همزمان با حل معما برنامهنویسی کند. کمتر دانشجویی در سطح مقدماتی فقط بهخاطر خود برنامهنویسی میخواهد برنامهنویسی یاد بگیرد. معماها کاربردهای واقعیای هستند که توجه را جلب میکنند، کنجکاویبرانگیزند و آسان توصیف میشوند. هر درس با توصیف یک معما شروع میشود. بعد از یکی دو تلاش ناموفق برای حل معما، خواننده به لحظهٔ «آها!» میرسد—یک راهبرد جستوجو، یک ساختار داده، یا یک واقعیت ریاضی—و آنوقت راهحل خودش را نشان میدهد. راهحل معما تبدیل میشود به مشخصات کدی که باید نوشته شود. به این ترتیب خواننده پیش از دیدن خود کد میداند کد قرار است چه کاری بکند. این روش آموزش بر این ایده استوار است که فهم کارکرد کد را از فهم دستور زبان و معنای زبان برنامهنویسی جدا میکند. دستور زبان و معنای پایتون که برای فهم کد لازم است، بهتناسب هر معما توضیح داده میشود. خواننده فقط به آشنایی ابتدایی با مفاهیم برنامهنویسی نیاز دارد؛ همان چیزی که از کلاسهای مقدماتی یا درسهای علوم کامپیوتر سطح دبیرستان (مثل AP) بهدست میآید. کتاب بیش از بیست معما و بیش از هفتاد تمرین برنامهنویسی با سطوح دشواری گوناگون دارد. بسیاری از این معماها شناختهشدهاند و با شکلهای گوناگون در نشریات و وبسایتها آمدهاند. دامنهشان از تنظیم وقت سلفی با افراد معروف تا حل مسائل سودوکو در چند ثانیه و بررسی فرضیهٔ شش درجه جدایی است. کد راهحل بعضی از معماها از وبسایت کتاب قابل دانلود است؛ کد همهٔ راهحلها نیز در اختیار مدرسان قرار دارد.
Learning programming with one of “the coolest applications around“: algorithmic puzzles ranging from scheduling selfie time to verifying the six degrees of separation hypothesis.This book builds a bridge between the recreational world of algorithmic puzzles (puzzles that can be solved by algorithms) and the pragmatic world of computer programming, teaching readers to program while solving puzzles. Few introductory students want to program for programming's sake. Puzzles are real-world applications that are attention grabbing, intriguing, and easy to describe. Each lesson starts with the description of a puzzle. After a failed attempt or two at solving the puzzle, the reader arrives at an Aha! moment—a search strategy, data structure, or mathematical fact—and the solution presents itself. The solution to the puzzle becomes the specification of the code to be written. Readers will thus know what the code is supposed to do before seeing the code itself. This represents a pedagogical philosophy that decouples understanding the functionality of the code from understanding programming language syntax and semantics. Python syntax and semantics required to understand the code are explained as needed for each puzzle.Readers need only the rudimentary grasp of programming concepts that can be obtained from introductory or AP computer science classes in high school. The book includes more than twenty puzzles and more than seventy programming exercises that vary in difficulty. Many of the puzzles are well known and have appeared in publications and on websites in many variations. They range from scheduling selfie time with celebrities to solving Sudoku problems in seconds to verifying the six degrees of separation hypothesis. The code for selected puzzle solutions is downloadable from the book's website; the code for all puzzle solutions is available to instructors.