The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by Duangkamol Moonchan, 2020-10-28 13:52:36

บทที่3.1

ch3.1

614185001

การแสดงผลและการรบั คา่

• การรับข้อมลู
• โหมดสครปต์

การรับขอ้ มลู

• คําสัง input ทาํ หน้าทีรับข้อมลู จากผใู้ ชง้ านโปรแกรมผา่ นทางคียบ์ อร์ด
เพือนํามาใชป้ ระมวลผลภายในโปรแกรม

• พมิ พ์คาํ สังในคอนโซล
• พมิ พค์ าํ สงั name = input("ใส่ชอื ของคณุ ")
• เมือกด Enter จะเห็นเครองหมาย >?

ในคอนโซล หมายถงึ ให้ผู้ใชพ้ มิ พ์
ขอ้ มลู สง่ ให้กับโปรแกรมทางคียบ์ อร์ด
• พมิ พ์ สมศักดิ แลว้ กด Enter
ขอ้ ความ "สมศักด"ิ จะถกู เกบ็ ในตวั แปร name
• เมือพมิ พ์คําสงั print(name) แล้วกด Enter
จะแสดงผลข้อความ สมศกั ดิ
• เมอื พิมพค์ าํ สงั type(name) แล้วกด Enter จะพบว่า name เก็บขอ้ มูลสตรง

การรับข้อมูล

• คําสัง input( ) สามารถระบุข้อความคาํ ถามทีจะถามผู้ใชไ้ ด้ โดยใสส่ ตรง
ของคาํ ถามในวงเลบ็

• เช่น answer = input("พมิ พ์ ใช่ หรอ ไม่ใช่")

• ขอ้ มลู ทไี ดร้ ับจากผูใ้ ช้ผ่านคาํ สัง input() จะเปนข้อมลู ชนดิ สตรงเสมอ

• พิมพ์คาํ สัง number = input("พิมพจ์ ํานวนเตม็ 1 จาํ นวน")
• พมิ พ์ 25 แลว้ กด Enter
• พมิ พ์ print(number) จะแสดงคา่ 25
• พิมพ์ type(number) จะพบวา่

number เกบ็ ขอ้ มลู ชนดิ สตรง
(เกบ็ สตรงของจํานวนเต็ม "25")

การรับขอ้ มลู

• ในการใช้งานขอ้ มูลทรี ับจากผูใ้ ช้ จะตอ้ งแปลงชนดิ ข้อมลู ใหต้ รงตามที
ต้องการก่อนนาํ ไปประมวลผล

• หากตอ้ งการรับข้อมูลสตรงจากผูใ้ ช้ ใหใ้ ชค้ าํ สัง
input_str = input("พมิ พส์ ตรงทตี ้องการ")

• หากต้องการรับข้อมูลจาํ นวนเต็มจากผู้ใช้ ให้ใชค้ าํ สัง
input_str = input("พมิ พ์จาํ นวนเตม็ ทตี อ้ งการ")
input_int = int(input_str)
จะได้ input_int เปนขอ้ มลู จากผ้ใู ช้ทีแปลงเปนจํานวนเตม็ แลว้
หรออาจเขยี นสัน ๆ ไดว้ ่า input_int = int( input("พมิ พ์จาํ นวนเต็มทีตอ้ งการ") )

• หากตอ้ งการรับขอ้ มลู จํานวนจรงจากผ้ใู ช้ ใหใ้ ช้คาํ สัง
input_float = float( input("พิมพจ์ าํ นวนจรงทตี อ้ งการ") )

การรับขอ้ มูล

• คําสงั input() รับขอ้ มูลจากผูใ้ ชท้ ลี ะ 1 ข้อมลู

• ถ้าอยากรับขอ้ มูลจากผ้ใู ชห้ ลายขอ้ มูล ตอ้ งรับทลี ะ 1 ข้อมลู หลายครัง เชน่

>>> a = int( input("พมิ พจ์ ํานวนเตม็ จํานวนแรก") )
พิมพจ์ าํ นวนเตม็ จํานวนแรก>? 3
>>> b = int( input("พมิ พจ์ ํานวนเต็มจาํ นวนทสี อง") )
พิมพจ์ าํ นวนเตม็ จํานวนทสี อง>? 4
>>> print("ผลบวกคอื ", a+b)
ผลบวกคอื 7

การรับขอ้ มลู

• ขอ้ ควรระวงั ถ้าไม่แปลงชนดิ ขอ้ มลู ใหถ้ กู ต้อง อาจมีข้อผิดพลาด

• input() รับข้อมลู เปนสตรง ซึงไมส่ ามารถคณู กนั ได้

>>> a = input("พิมพ์จาํ นวนเตม็ จาํ นวนแรก")
พมิ พจ์ ํานวนเต็มจํานวนแรก>? 3
>>> b = input("พิมพ์จํานวนเตม็ จํานวนทีสอง")
พมิ พจ์ ํานวนเตม็ จํานวนทีสอง>? 4
>>> print("ผลคูณคือ", a*b)
Traceback (most recent call last):

File "<input>", line 1, in <module>
TypeError: can't multiply sequence by non-int of type 'str'

การรับขอ้ มลู

• ตวั อยา่ งการรับข้อมลู และคาํ นวณเพอื แกป้ ญหาทางคณิตศาสตร์

>>> birth_year = int( input("ระบปุ พ.ศ. ทีเกดิ ") )
ระบปุ พ.ศ. ทเี กิด>? 2545
>>> current_year = int( input("ระบุป พ.ศ. ปจจบุ นั ") )
ระบปุ พ.ศ. ปจจบุ ัน>? 2561
>>> age = current_year – birth_year
>>> print("คณุ อายุ", age, "ป")
คณุ อายุ 16 ป

การรับข้อมูล

• ตวั อยา่ งการรับขอ้ มลู และคํานวณเพือแก้ปญหาทางคณิตศาสตร์

>>> price = float( input("ใสร่ าคาสนิ ค้า") )
ใส่ราคาสนิ คา้ >? 1580.75
>>> discount = float( input("ระบุสว่ นลดทไี ด้รับ (เปนเปอร์เซ็นต์)") )
ระบสุ ว่ นลดทีได้รับ (เปนเปอร์เซน็ ต์)>? 15.0
>>> pay = price * (100 – discount) / 100
>>> print("ยอดตอ้ งชาํ ระ", pay, "บาท")
ยอดตอ้ งชําระ 1343.6375 บาท

จบบทที 3


Click to View FlipBook Version