Skip to main content

ACS Workshop (python)

.

.

.

มาทำโจทย์กันเถอะะะะะ (โดยพรี่ภูมิ)

.

.

.

Question 1

  • เขียนโปรแกรมหาเส้นรอบรูปสี่เหลี่ยมผืนผ้า โดยกำหนดให้ ความกว้าง-ความยาว ของรูปสี่เหลี่ยมมา
รูปเเบบ Input
บรรทัดที่ 1 รับตัวเลขจำนวนเต็ม ความกว้าง
บรรทัดที่ 2 รับตัวเลขจำนวนเต็ม ความยาว
รูปเเบบ Output
เส้นรอบรูปสี่เหลี่ยมผืนผ้า ตอบเป็นทศนิยม 2 ตําแหน่ง
  • ตัวอย่าง
Input Output

5

10

30

25

50

150

100

200

600
def find_perimeter(width,length):
    perimeter = # your code here 
    return # your code here 

width= # Question2 input (line1)
length= # Question2 input (line2)

print(find_perimeter(width, length))


  • hint สูตรคือ 2*(w+h)
  • ใช้ round(<var>, 2) เพื่อปัดเศษเป็น 2 ตำแหน่ง

Question 2

  • หาตัวเลขในรายการ (list) ที่น้อยที่สุด 
รูปเเบบ Input
list
รูปเเบบ Output
เลขที่น้อยที่สุด
ข้อจำกัด
ห้ามใช้ built in functions เช่น min() ,ตัวเลขเป็น integer
  • ตัวอย่าง
Input Output
[17, 5, 9, 12, 2] 2
[-1, 2, 5, 15, -2] -2
[5, 0, 5, 6, 6, 4] 0
def find_minimum(numbers):
    min_num = numbers[0]
    for #your code here
        if #your code here
            #your code here
    return min_num

my_list = [17, 5, 9, 12, 2]
minimum_number = find_minimum(my_list)
print(minimum_number) 

Question 3

  • เขียนโปรแกรมหาผักจากรายการที่ให้ไป
รูปเเบบ Input
list ที่เต็มไปด้วยผักและผลไม้
รูปเเบบ Output
จำนวนของผักที่มีอยู่ใน list
  • ตัวอย่าง
Input Output
['Apple','Banana','Broccoli','Cucumber', 'Mango', 'Strawberry'] 2
[] 0
['Apple','Banana','Orange']

0

def find_thing(list):
    fruits = ['Apple','Banana','Orange','Mango','Strawberry']
    vegetable = ['Carrot','Broccoli','Tomato','Spinach','Cucumber']
    result = 0
    for i in list
        if #your code here
    return result

list=['Apple','Banana','Broccoli','Cucumber','Mango','Strawberry']
print(find_thing(list))

Question 4

  • เขียนโปรแกรมคำนวนราคารวมของผักผลไม่ที่อยู่ใน list
รูปเเบบ Input
list 
รูปเเบบ Output

ราคารวมของรายการที่จะซื้อ

  • ตัวอย่าง
Input Output
['apple','banana','broccoli','cucumber', 'mango']

 

ราคารวม คือ 132

 

[]

 

ราคารวม คือ 0 บาท

 

['apple','banana','orange','mango','carrot',

'broccoli','tomato','spinach']

 

ราคารวม คือ 197 บาท

 

def calculate_total_price(vegetables_and_fruits_prices, shopping_list):
    total_price = 0
    for item in #your code here
        if item in #your code here
            #your code here
        else:
            print(f'ไม่พบรายการ "{item}" ในรายการผักและผลไม้')
    return total_price


vegetables_and_fruits_prices = {
    'apple': 50,
    'banana': 20,
    'orange': 15,
    'mango': 30,
    'carrot': 25,
    'broccoli': 17,
    'tomato': 10,
    'spinach': 30,
    'cucumber': 15,

}

shopping_list = ['apple','banana','orange','mango','carrot','broccoli','tomato','spinach']

total_price = calculate_total_price(vegetables_and_fruits_prices, shopping_list)
print('ราคารวม คือ',total_price,'บาท')

Question 5

  • เขียนฟังก์ชันที่ย้อนกลับสตริง โดยสตริงอินพุตจะได้รับเป็นสตริงของอักขระ
รูปเเบบ Input
string
รูปเเบบ Output
string ที่ย้อนกลับแล้ว
ข้อจำกัด
ห้ามใช้ built in functions
  • ตัวอย่าง
Input Output
etuCoSRU URSoCute
UwU UwU
gnaLginmmargorPsILMTH HTMLIsProgrammingLang
700azwnl lnwza007
def reverseString(s):
    for i in ## your code here
        new_String = # your code here
    return # your code here

my_String ='etuCoSRU'
my_String = reverseString(my_String)  
print(my_String)  

  • นอกจาก for loop ยังมีวิธีอื่นที่สามารถทำ palindrome ได้

Question 6

  • เขียนฟังก์ชันที่ตรวจสอบ x ว่าเป็นพาลินโดรมรึป่าว โดยกําหนด x เป็น int
รูปเเบบ Input
string
รูปเเบบ Output
ส่งกลับค่า true ถ้าเป็นจริงและ false ถ้าเป็นเท็จ
ข้อจำกัด
ห้ามใช้ built in functions
  • ตัวอย่าง
Input Output
mom True
kinnikinnik True
gigachad False
(()(()(( True
ฟหกหก False
def isPalindrome(x):
    x_str = str(x)
   	return #your code here
print(isPalindrome('mom'))

Question 7

  • lเขียนโปรแกรมสร้างlist สินค้าที่ต้องการซื้อพร้อมราคาและคำนวนราคาทั้งหมด
รูปเเบบ Input ชื่อ สินค้า ราคา
รูปเเบบ Output ชื่อ สินค้า ราคา ที่ input ไป ราคารวมของสินค้า
ข้อจำกัด ห้ามใช้ built in functions
    ตัวอย่าง

    image.png

    username = #your code here
    #your code here
    
    grocery_items = {}
    while True:
        item = #your code here
        if #your code here
        	#your code here
        price = #your code here
        grocery_items[item] = #your code here
    
    print("Your Grocert List:")
    total_cost = 0
    for item, price in grocery_items.items():
        #your code here
    
    print#your code here

    Question 7

      ใช้สัญลักษณ์ "#" เพื่อสร้างรูปเพรช
      รูปเเบบ Input
      integer เลขคี่
      รูปเเบบ Output
      รูปเพรช
      ข้อจำกัด
      ห้ามใช้ built in functions
      • ตัวอย่าง
      Input Output
      3

      #

      ###
      #

      7

      #

      ###

      #####

      #######

      #####

      ###

      #

      1 #
      def draw_diamond(x):
      		#your code here
      print(draw_diamond(3))
      
      

      Question 8

      • ตรวจสอบว่า สมาชิกใน nested list (`list2`) นั้นอยู่ใน `list1` หรือไม่
      รูปเเบบ Input
      list ทั้งหมด 2 list
      รูปเเบบ Output
      list
      • ตัวอย่าง
      Input Output

      [4, 7, 66, 2, 8, 12, -1]

      [[1, 2,3], [2, 4, 6, 7], [], [], [-1]]

      [[2], [2, 4, 7], [], [], [-1]]

      [1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13]

      [[12, 18, 23, 25, 45], [7, 11, 19, 28], [1, 5, 8, 18, 15]]

      [[12], [7, 11], [1, 5, 8]]

       [[1, 2], 0, 1, -1, 2, [3, 4, 5], 6, 7]

      [[1, 2], [-1, 0], [[1,2]], [[3, 5]], [6]]

      [[1, 2], [-1, 0], [[1, 2]], [], [6]]
      def intersection_nested_lists(list1, list2):
          result = []
          for l2 in list2:
              # Your code here
          return result
      
      nums1 = [1, 2, 3, 4]
      nums2 = [[1, 2], [3], [4]]
      
      print(intersection_nested_lists(nums1, nums2))
      

      Question 9

      • เขียนโปรแกรมหาตัวเลข3ตัวจากlistที่ให้ผลรวมเท่ากับ0
      รูปเเบบ Input
      list ตัวเลขที่เป็น integer
      รูปเเบบ Output
      ตัวเลข3ตัวที่ไม่ซ้ำกันในlistที่ให้ผลรวมเท่ากับ0
      • ตัวอย่าง
      Input Output
      [-1, 0, 1, 2, -1, -4] [[-1, 0, 1], [-1, 2, -1]]
      [1, 2, 3, 4] []
      [-2, -1, 0, 1, 2, 3, 4, 5, 6, 7]

      [[-2, -1, 3], [-2, 0, 2], [-1, 0, 1]]

      def find_triplets(nums):
          #your code here
      numbers = [-1, 0, 1, 2, -1, -4]
      print(find_triplets(numbers))
      • โบนัสสสส เขียน one linecodeได้ รับไปเลย ของรางวัลสุดพิเศษจากพรี่ๆ

      `