用 Python 做商管程式設計(一)(Programming for Business Computing in Python (1))

National Taiwan University via Coursera

Go to Course: https://www.coursera.org/learn/pbc1

Introduction

### Course Review: Programming for Business Computing in Python (1) **Overview:** The course "用 Python 做商管程式設計(一)" (Programming for Business Computing in Python (1)) is a comprehensive introduction to Python programming, catering specifically to beginners who aspire to enter the field of business computing. From the outset, the course emphasizes practical applications of Python in solving real-world business problems rather than delving into abstract programming exercises. This unique approach not only equips students with foundational programming skills but also immerses them in the application of information technology within the business sector. **Course Structure:** This course is the first in a series designed to guide learners from basic concepts to more complex applications in business computing. Throughout the course, students will cover: 1. **Introduction to Information Management**: Understanding the role of information technology in business operations and management decision-making, making it clear that virtually no business activity can exist without the support of information systems. 2. **Getting Started with Python**: The foundational week introduces the essential concepts of programming, the Python syntax, and how to interact with the program through basic input and output functions. 3. **Conditional Statements and Code Formatting**: Learners explore the use of `if-else` statements and logical operators, enhancing their ability to create versatile programs while emphasizing the importance of clean code formatting for efficiency. 4. **Fundamentals of Computer Operations and Loop Structures**: A deeper dive into how variables and data types are stored in a computer, alongside an introduction to loop structures (`while` and `for`), allowing for repeated operations and solving more complex tasks. 5. **List Data Structures and Operations Management Algorithms**: The culmination of the course focuses on list data structures, enabling participants to handle bulk data. Real-world operations management issues, such as production scheduling, inventory control, and logistics, are tackled through practical algorithms, demonstrating the power of programming in business contexts. **Why Take This Course?** - **Targeted Learning**: Unlike many introductory programming courses, this curriculum is aimed directly at solving business-related computational problems. This contextual learning helps visualize how programming applies in the business environment, making it relevant and engaging. - **Beginner-Friendly**: The course is structured to welcome complete novices, ensuring each learner can start from scratch and build up their knowledge systematically without feeling overwhelmed. - **Practical Applications**: By integrating real-world scenarios from fields such as production, logistics, and inventory management, students can appreciate the value of programming in business decisions and operations right from the start. - **Instructor Expertise**: The course is led by knowledgeable instructors experienced in both Python programming and business management, providing learners with quality insights and guidance throughout the course. **Recommendations:** I highly recommend this course for anyone interested in merging technology and business. Whether you're a university student preparing for a career in business management or a professional seeking to enhance your analytical skills, the course equips you with essential programming knowledge that can significantly impact your professional development. Furthermore, if you're new to coding or looking to shift industries, this course can serve as a solid foundation. With hands-on assignments that mirror real business challenges, you'll gain confidence in your programming abilities and a deeper understanding of how technology can drive business success. In conclusion, "用 Python 做商管程式設計(一)" is not just about learning to code; it's about embracing a mindset required for effective problem-solving in business contexts. Embrace the world of programming with Python, and unlock new opportunities for innovation and efficiency in your career.

Syllabus

什麼是「資訊管理」:資訊科技的商管應用

本週我們不寫程式,而是先看看資訊科技在商管領域的一些應用。現在幾乎沒有商業活動是不需要資訊系統輔助的,即使我們專注在「演算」這個面向上,也只能介紹一點點而已,但這應該足以讓大家感受到資訊科技能如何輔助企業經營與管理決策。換句話說,本週的課程也算是對「資訊管理」這個學科的一種簡介了。 本週的最後幾個影片,是介紹在 Windows 和 Mac 作業系統上如何安裝並執行我們這門課要教授的程式語言 Python。如果是還不曾安裝與執行過 Python 的同學,歡迎根據自己的作業系統利用這些影片,為下週的課程預作準備;已經有相關經驗的同學可以直接進入下一週的課程。

Python 程式設計初探

本週我們開始介紹 Python 程式設計。我們從程式設計的基本概念切入,先介紹何謂程式設計,接著介紹 Python 程式語言的基本語法與程式開發環境。我們將介紹變數與運算的概念,並且讓大家透過 print() 和 input() 指令和電腦程式做第一次的互動。

條件式選擇與程式碼排版

本週我們介紹條件式選擇,說明如何用 if-else 敘述句來讓程式「看情況做選擇」,並且搭配邏輯運算子讓選擇判斷更具有彈性與威力;我們也介紹邏輯運算子並據此做更複雜的條件式選擇。此外,如果希望能有效率地開發程式,程式碼的良好排版是必要的,因此我們也用一點時間說明 Python 程式的排版原則。

電腦運作基本原理與迴圈結構

本週我們先深入介紹變數、型態、數值在電腦中儲存的方式,為後續課程打基礎。接著我們介紹迴圈結構,透過 while 和 for 敘述句,來讓程式反覆行動以完成(對人來說)困難的任務。有了條件式選擇與迴圈結構,我們就可以做到很多有趣的事了!我們將用神奇的小數點精確度問題結束本週的課程。

清單資料結構與作業管理演算法

進入課程的最後一週,我們將先介紹清單(list)資料結構,說明如何一次儲存和處理大批資料。帶著邏輯控制和清單的知識,我們將以一些作業管理(operations management)領域的議題和演算法來協助大家總整本課程的所學。我們將介紹生產排程(production scheduling)、存貨控制(inventory control)與物流運輸(logistics and transportation)的基本議題,並且為各議題各實做幾個演算法,引導大家感受程式設計在作業管理領域的應用。

Overview

本系列課程從零開始,教授一般認為最適合初學者的程式語言「Python」,目標是讓大家在完成本課程之後,一方面獲得程式設計與運算思維的基本概念,一方面也能獨立寫出能解決運算問題的程式。本課程和一般程式設計課程最不同的地方,在於它是以解決商管領域的運算問題為導向,因此課程不會只含有質因數分解、紅球白球排列組合、三角不等式、萬年曆、數字排序等傳統程式設計課程的範例與作業,而是包含了生產、物流、存貨、投資、定價等問題,讓大家在學會程式設計的同時,也直接體會程式設計與資訊技術在商管領域的各種應用。 本系列課程共分為三門課程。本門課程做為第一門課程,將介紹程式設計的基本觀念、Python 語言的基本語法、選擇、迴圈、清單,並以作業管理領域的一些簡單演算法作結。

Skills

Reviews

homework takes lots of time. Do not trust coursera average time "30 min"! But learned a lot :) Enjoy the course!

Teacher is excellent. The assignments are challenging, yet I lean a lot.

老师讲解非常清晰易懂,课件中涉及到的英文言简意赅,连我这种英文不好的人也能看懂大部分。谢谢老师、助教、其他团队成员的倾情呈现,非常非常优良的课程。

This progrem is helpful for a begginer to learn to use Python

感谢老师的精心准备!这门课对于一个有python基础的人仍然很具有启发性。第一周的介绍就非常精彩,引人入胜。以后每一周除了介绍python基础,重点是还介绍运筹学算法在实际管理的应用。课后练习很棒,老师通过让我们动手练习来告诉我们“贪婪算法“这么方便实用。总之,内容满分!