‫ยินดีต้อนรับกลับ.
‫และวิดีโอนี้ คุณจะได้รับความท้าทายเล็กน้อย และคุณควรสร้าง tic tac toe
‫อย่างที่คุณเห็นที่นี่ แค่เกมคอนโซล ไม่ใช่เกมฟอร์มหรืออะไรทำนองนั้น แต่เป็นเกมคอนโซล
‫ดังที่คุณเห็นที่นี่ ด้วยค่าเก้าค่าหรือเก้าฟิลด์และผู้เล่น หนึ่งสามารถเลือกฟิลด์หลังจากนั้น ผู้เล่นสองคนสามารถเลือกฟิลด์และอื่น
‫ๆ
‫ตัวอย่างเช่น มีฟิลด์หนึ่ง ฉันป้อนหนึ่ง และตอนนี้ เป็นโอ้
‫นี่จึงไม่ใช่ศูนย์ แต่เป็นตาของผู้เล่นสองคน และฉันจะเข้าสู่ห้า
‫ตอนนี้คุณจะเห็นห้าแทนที่ด้วย x และมีเพียงตัวเลขที่คุณเห็นเท่านั้นที่ยังคงมีอยู่
‫สมมติว่าฉันป้อนห้าอีกครั้งในฐานะผู้เล่นที่หนึ่ง
‫มันจะบอกฉันว่าป้อนข้อมูลที่ไม่ถูกต้อง
‫โปรดใช้ฟิลด์อื่น
‫เอาล่ะฉันจะใช้สาม
‫สมมุติว่าผู้เล่นคนที่สองไม่เข้าใจว่าคุณควรป้อนเฉพาะตัวเลข แล้วเขาก็แค่ป้อน G หรืออะไรก็ตาม
‫แล้วขึ้นว่า กรุณากรอกตัวเลข
‫ป้อนข้อมูลไม่ถูกต้อง โปรดใช้ฟิลด์อื่น
‫ใช่ไหม
‫ดังนั้นจึงยังคงเป็นผู้เล่นที่จะหัน
‫แล้วเขาจะทำอย่างไร?
‫เขาจะพยายามเอาชนะ
‫ดังนั้นนี่จะใกล้มาก
‫ผู้เล่นสองคน
‫กำลังจะชนะและเรากำลังเล่นให้คุณคนหนึ่ง
‫ดังนั้นเขามีสามลูกติดต่อกัน และกรุณากดปุ่มใดก็ได้เพื่อรีเซ็ตเกม
‫ฉันจะกดแป้นใดก็ได้
‫และเราเป็น
‫เรามีรอบใหม่
‫ดังนั้นคุณควรสร้างฟังก์ชันการรีเซ็ตด้วย
‫เอาล่ะ ประมาณนั้น
‫พยายามสร้างสิ่งนั้น
‫คุณจะต้องใช้อาร์เรย์ DX สองชุด คุณจะต้องใช้สวิตช์และตัวพิมพ์เล็กและตัวพิมพ์ใหญ่และเมธอด และหลายสิ่งหลายอย่างที่เราได้สัมผัสในวิดีโอที่แล้ว
‫ดังนั้นจะใช้เวลาสักครู่และวิธีแก้ปัญหาของคุณอาจดูแตกต่างไปจากของฉันอย่างมาก
‫และโดยทั่วไปแล้ว หากคุณไม่ได้ไปไหนมาไหน หากคุณรู้สึกว่ามันยากเกินไปสำหรับคุณ ก็ไม่ต้องกังวลไป
‫คุณสามารถทำตามและพยายามทำความเข้าใจขั้นตอนทั้งหมดที่ฉันกำลังดำเนินการ และฉันจะอธิบายทุกอย่างที่ฉันทำ
‫แต่จะดีที่สุดถ้าคุณลองด้วยตัวเองจริง ๆ เพราะเมื่อคุณลองด้วยตัวเอง คุณจะได้พบกับวิธีแก้ปัญหาที่จะกระตุ้นทักษะของคุณอย่างมาก
‫เพราะเพียงแค่ลงมือทำ คุณจะได้เรียนรู้มากที่สุดและเพียงแค่ดูเท่านั้น คุณจะไม่ได้เรียนรู้ว่า มาก.
‫นั่นเป็นสิ่งสำคัญจริงๆ
‫ตราบใดที่คุณพบข้อผิดพลาดและแก้ไขด้วยตัวเอง นั่นคือเมื่อการเรียนรู้เกิดขึ้นจริง
‫และนั่นเป็นเหตุผลสำคัญที่คุณต้องลองด้วยตัวเอง
‫ไม่เป็นไร.
‫ดังนั้นฉันหวังว่าคุณจะหยุดวิดีโอชั่วคราวแล้วลองเล่น ซึ่งอาจใช้เวลาค่อนข้างนาน
‫ดังนั้นคุณไม่ควรเสร็จภายใน 5 นาที
‫บางทีคุณอาจจะถูกต้องและคุณสามารถทำได้
‫แต่มิฉะนั้น อาจใช้เวลามากกว่าหนึ่งชั่วโมงหรือมากกว่า 2 ชั่วโมง ขึ้นอยู่กับโซลูชันที่คุณเลือก
‫และอย่างที่ฉันพูดไป มีหลายวิธีในการแก้ปัญหานี้
‫และฉันมีเพียงหนึ่งเดียวที่ฉันคิดว่าค่อนข้างใกล้เคียงกับสิ่งที่เราได้เรียนรู้มาจนถึงตอนนี้
‫ดังนั้นจึงใช้ฟังก์ชันที่เราได้เรียนรู้มาทั้งหมด
‫ดังนั้นจึงไม่มีอะไรใหม่เกินไป
‫และใช่ นั่นคือเหตุผลที่ฉันจะดำเนินการต่อและสร้างแอปตอนนี้
‫ไม่เป็นไร.
‫อย่างที่ฉันพูดไป ฉันหวังว่าคุณจะพยายามสร้างมันขึ้นมาเอง
‫ฉันจะสร้างไฟล์โปรเจ็กต์ใหม่ขึ้นมาใหม่
‫โครงการ.
‫และฉันจะเรียกสิ่งนั้นว่า การออกกำลังกายแบบโอเอกซ์
‫แล้วมันจะเป็นแอพคอนโซลอีกครั้ง
‫มาคลิกกันเลย ก่อนที่ฉันจะทำตรรกะที่ซับซ้อนใดๆ ที่ฉันตรวจสอบว่าใครมีสิ่งนั้นและทั้งหมดนั้น
‫ฉันจะเริ่มต้นง่ายๆ
‫ฉันจะสร้างสนามแข่งขันก่อน และด้วยเหตุนี้ ฉันหมายถึงแม้กระทั่งการเขียนคอนโซล
‫ดังนั้น ฉันจะสร้างวิธีการใหม่ และฉันจะเรียกฟิลด์เซ็ตโมฆะสแตติกสาธารณะนั้น และฉันทำให้มันคงที่เท่านั้น
‫เพื่อที่ฉันจะได้ใช้มันภายในเมธอดหลักของฉัน
‫มิฉะนั้นฉันจะต้องสร้างวัตถุวัตถุเพื่อออกกำลังกายเพื่อใช้ set field
‫แต่การทำให้เป็นแบบคงที่นั้นใช้ได้ทั้งหมด
‫ต่อไปในวิธี set field ของฉัน ฉันต้องเขียน console หลายๆ แถวให้ถูกต้อง แล้วมันจะออกมาเป็นแบบนี้
‫ดังนั้นเครื่องหมายอัญประกาศ ฟิลด์ว่างมากมาย จากนั้นไปป์ ฟิลด์ว่าง และอีกครั้ง ฟิลด์ว่างบางรายการ
‫นี่จึงเป็นบรรทัดแรก
‫จากนั้นคอนโซลบรรทัดขวานั้นอีกครั้ง
‫คุณยังสามารถใช้ดู W แตะสองครั้ง
‫นั่นเป็นเวอร์ชันที่เร็วกว่า จากนั้นมีจุดว่างหรือช่องว่างสองจุด และอีกท่อหนึ่ง
‫แล้วสิ่งที่ผมทำคือเตรียมให้แสดงตัวเลขได้
‫และต้องการให้แสดงหมายเลขอะไร
‫นั่นคือสิ่งที่เราจะต้องใช้ในภายหลังหรือสร้างขึ้นในภายหลัง
‫สำหรับตอนนี้ ผมแค่จะบอกว่า หนึ่ง สอง และสาม
‫แต่ภายหลังเราจะต้องเปลี่ยนแปลงสิ่งนั้น
‫ดังนั้นฉันจะเพิ่มสิ่งนั้นในรายการของฉันเพื่อแทนที่ตัวเลขด้วยตัวแปร
‫ตกลง.
‫ตอนนี้ ฉันต้องสร้างบทบาทที่คล้ายคลึงกันกับบทบาทนั้น
‫แต่ในที่นี้ ฉันจะขีดเส้นใต้ และเราสามารถเปลี่ยนแปลงได้ว่า หากเราเห็นว่ามันไม่เพียงพอหรือดูไม่ดีในภายหลัง เราสามารถเปลี่ยนแปลงได้อย่างง่ายดายในภายหลัง
‫ไม่เป็นไร.
‫ดังนั้น.
‫นี้มันสวยมาก
‫เราต้องทำอย่างนั้นหลายครั้งแล้ว
‫ผมจะคัดลอกสิ่งนั้นจริงๆ
‫ฉันจะคัดลอกทั้งหมดนั้น
‫และเราอยู่ที่นั่น
‫และสุดท้ายนี้ อีกหนึ่งแถว
‫และนั่นก็ควรจะเป็นอย่างนั้น
‫มาดูกันเลย
‫เรียกเมธอด set field ว่าหน้าตาเป็นอย่างไรบนคอนโซล
‫อันที่จริงเราต้องรันคอนโซล แต่เส้นสีแดงหรือปุ่มสีแดงนั้นดีกว่า
‫เริ่มกันเลย
‫และเราอยู่ที่นั่น
‫มันยังวางไม่เรียบร้อย เรามาดูกันดีกว่า
‫ไม่เป็นไร.
‫ปัญหาหนึ่งที่นี่คือฉันต้องการห้า
‫ระยะทางจุด.
‫ห้าช่องว่าง
‫ตรงนี้ก็เหมือนกัน.
‫หนึ่งสองสามสี่ห้า.
‫ดีแล้ว.
‫ตอนนี้ลองใช้นี่และแทนที่บรรทัดที่เรามี
‫นี่คือการทดสอบเล็กๆ น้อยๆ ที่เกี่ยวกับการทำให้ดูดีและมีการทดสอบบางอย่างที่เกี่ยวข้อง
‫ผมจะใช้วิธีเดียวกันตรงนี้ และผมจะคัดลอกสองบรรทัดนั้นแล้วแทนที่บรรทัดเหล่านั้น
‫เอาล่ะ ในนี้ เรามีสองทิศทาง
‫มาทดสอบกัน
‫และเราอยู่ที่นั่น
‫มันดูดีขึ้นมากแล้ว
‫หนึ่งสองสาม.
‫ตัวเลขเหล่านั้นควรถูกแทนที่ในภายหลังอย่างที่ฉันพูด
‫แต่นั่นเป็นวิธีที่เราสามารถตั้งค่าฟิลด์ได้
‫คุณอาจจินตนาการว่าสิ่งนี้จะช่วยให้เรารีเซ็ตฟิลด์ได้ในภายหลัง
‫ถูกต้องทั้งหมด
‫ต่อไป ตอนนี้เรามีสิ่งนั้นแล้ว เราต้องสร้างสนามจริงๆ
‫และสนามแข่งขันควรเป็นสนามในแง่ของการเขียนโปรแกรมสร้างสนามแข่งขัน
‫และสิ่งที่จะทำคือสแตติกหรือไม่สร้างสนามแข่งขันจริง แต่มันจะเป็นอักขระคงที่ในสนามแข่งขัน
‫คุณสามารถใช้ อืม เป็นจำนวนเต็มหรือสตริงก็ได้เช่นกัน
‫แต่ตัวละครคือสิ่งที่ใช้ทรัพยากรอย่างมีประสิทธิภาพมากที่สุด
‫ฉันจะเรียกสนามเด็กเล่น และในนี้ ฉันต้องมีแถวที่ต่างกัน
‫หนึ่งแถวที่มีหนึ่ง สอง และสาม แล้วก็สิ่งเดียวกันกับแถวถัดไป
‫สี่ ห้า หก เป็นต้น
‫ผมจะแทนที่ตัวเลขในอีกสักครู่
‫นี่ก็คือสี่ ห้า หก เจ็ด
‫อันที่จริงนี่คือเจ็ด แปดและเก้า
‫ดังนั้นเราจึงมี
‫นี่คือสนามเด็กเล่นของเรา
‫ตอนนี้ สิ่งที่เราต้องทำคือแทนที่ตัวเลขเหล่านั้นที่นี่ด้วยสนามแข่งขันที่นี่
‫นี่คือลักษณะทั่วไปของสนามเด็กเล่นของเราในตอนเริ่มต้น และเราต้องการแทนที่ตัวเลขในนี้ในภายหลัง
‫โดยผู้ใช้
‫ไม่เป็นไร.
‫ที่เราใช้ตรงนี้แทนที่จะเป็นสนามแข่งขันที่ตำแหน่งเฉพาะ
‫ที่จริงแล้ว เรากำจัดส่วนนั้นทิ้งตรงนี้
‫ตอนนี้คุณต้องเห็นมันดีขึ้นเล็กน้อย
‫นี่คือสนามแข่งขัน และฉันต้องมีสนามแข่งขันที่ตำแหน่งศูนย์ เครื่องหมายจุลภาคศูนย์
‫ไม่เป็นไร.
‫และตอนนี้เราทำสิ่งเดียวกันกับทั้งสอง
‫ดังนั้นศูนย์ ลูกน้ำหนึ่งและศูนย์ลูกน้ำสอง
‫แล้วแถวที่สอง มันคือศูนย์หนึ่งตัว หนึ่ง หนึ่งและหนึ่ง สอง
‫หากคุณไม่แน่ใจว่าสิ่งนี้หมายถึงอะไร
‫นี่ก็คือแถวศูนย์
‫นี่คือแถวที่หนึ่ง
‫และนั่นคือแถวที่สอง
‫ดังนั้น.
‫นี่คือโรซี่ โรว์
‫นี่มันของจริงนี่หว่า
‫และตอนนี้เราต้องทำแบบเดียวกันกับแถวที่สอง
‫นี่จึงเท่ากับศูนย์สองตัว
‫นี่จะเป็นสองต่อหนึ่ง
‫และสุดท้าย เรามีสอง สอง สอง สอง
‫ทีนี้มาเริ่มกันใหม่
‫และเราควรจะได้รับผลเช่นเดียวกัน
‫ดังนั้นเราจึงมี
‫หนึ่ง สอง สาม และอื่นๆ
‫ยอดเยี่ยม.
‫ดังนั้นตอนนี้สนามเด็กเล่นหรือสนามเด็กเล่นของเราก็พร้อมแล้ว
‫ตอนนี้ มาดูกันว่าเราจะได้รับข้อมูลผู้ใช้ได้อย่างไร
‫และสิ่งที่เราต้องการก็คือการสร้าง
‫ตัวแปรที่จะมาเป็นผู้เล่นของเรา
‫ดังนั้นผู้เล่นจะต้องเป็น สมมติว่าเราเริ่มด้วยผู้เล่นที่หนึ่ง
‫ดังนั้นเราจึงตั้งค่าให้ผู้เล่นสองคนนั้นและคุณจะเห็นในภายหลังว่าทำไมจึงเหมาะสมที่จะตั้งค่าเป็นสองคน
‫จากนั้นเราต้องการอินพุตของผู้ใช้และการป้อนข้อมูลเป็นศูนย์ และฉันจะตั้งค่าให้เป็นศูนย์เพราะไม่มีฟิลด์ใดที่นี่เป็นศูนย์
‫ดังนั้นการใช้ศูนย์จึงเยี่ยมมาก
‫และสุดท้าย เราต้องการบูลีนที่ตรวจสอบว่าอินพุตนั้นถูกต้องหรือไม่ เพราะถ้าไม่ถูกต้อง
‫เราต้องการแจ้งให้ผู้เล่นทราบและพยายามหาอินพุตที่ถูกต้อง
‫เอาล่ะ
‫ดังนั้นตอนนี้ที่เรามีแล้วเราต้องสร้างสิ่งที่ใหญ่หรือยาวมากในขณะที่ทำ
‫และหลังจากหลายแถว เราก็ได้คำสั่งไวด์
‫และในนี้ฉันจะใช้
‫จริง.
‫ทำไมถึงใช้ do while กับ true
‫นั่นเป็นเพราะฉันต้องการให้ผู้ใช้สามารถป้อนบางสิ่งในเกมของฉันได้เสมอ
‫และในกรณีนี้ ฉันใช้โค้ดที่ทำงานที่นี่ซึ่งจะไม่ทำงานอัตโนมัติ
‫ขึ้นอยู่กับอินพุตของผู้ใช้
‫ดังนั้นจึงไม่ใช่การวนซ้ำที่ไม่มีที่สิ้นสุด แต่มันจะเป็นจริงเสมอตราบใดที่เราเล่นเกม
‫นั่นเป็นเหตุผลที่เราต้องทำในขณะที่
‫จริง.
‫ไม่เป็นไร.
‫ต่อไปที่เราต้องตรวจสอบคือ ผู้เล่นหนึ่งคนที่ควรเล่นหรือเป็นผู้เล่นสองคน แล้วตาของใครล่ะ?
‫หากผู้เล่นมีค่าเท่ากับสอง ให้ตั้งค่าผู้เล่นเป็นหนึ่งและอย่างอื่น
‫ถ้าเราสามารถใช้ els ในที่อื่นได้จริง
‫ผู้เล่นมีค่าเท่ากับสอง ดังนั้นคุณสามารถใช้ els หรืออย่างอื่นก็ได้ ถ้าในกรณีของเรา ผู้เล่นสามารถมีค่าได้เพียงสองค่า
‫แต่ถ้ามีบางอย่างผิดพลาดและด้วยเหตุผลบางอย่าง ผู้เล่นถูกเพิ่มเป็นสอง สิ่งนั้นก็จะเพิ่มขึ้นหรือเพิ่มขึ้นเสมอ
‫และมันจะเป็นปัญหาเสมอว่ามันจะเป็นผู้เล่นสองคนเสมอ
‫นั่นเป็นเหตุผลที่ฉันจะทำให้แน่ใจว่า ถ้าผู้เล่นมีค่าเท่ากับหนึ่ง ก็เปลี่ยนไปใช้ผู้เล่นที่สอง
‫ดังนั้นตอนนี้ ฉันต้องเรียกใช้คำสั่ง switch case
‫ดังนั้นผมจะบอกว่าเปลี่ยนผู้เล่น
‫เรามาลองรันโค้ดกันตามคิวของใครกัน
‫สมมติว่าเป็นกรณีหนึ่ง
‫ดังนั้นมันจึงหมายถึงผู้เล่นที่หัน
‫และที่จริง ขอผมเพิ่มรหัสที่นี่
‫เรียกใช้รหัสตราบเท่าที่
‫โปรแกรมทำงาน
‫แล้วถ้าเป็นผู้เล่นหัวเดียว เราจะทำอย่างไร?
‫เราต้องการตรวจสอบ
‫เขาเข้าไปทำอะไร?
‫และกำหนดหมายเลข
‫ดี กำหนด X ให้กับหมายเลขนั้น
‫ดังนั้นเราจึงมีสนามเด็กเล่นของเราที่นี่
‫นี่ก็คือหนึ่ง สอง สาม
‫และสิ่งที่ฉันต้องการตอนนี้คือถ้ามันเป็นผู้เล่นคนหนึ่ง ฉันต้องการให้สิ่งนี้ถูกแทนที่ด้วย X
‫ดังนั้นหากเขาเข้ามาเช่น
‫ในการทำเช่นนั้น ฉันแค่สร้างสวิตช์อื่นที่นี่ สลับอินพุต เพราะตามอินพุต ฉันต้องการตรวจสอบกรณีนี้
‫หนึ่ง ดังนั้นผู้เล่นเข้าสู่ผู้เล่นหนึ่งคนหรือสนามเด็กเล่นที่ตำแหน่งศูนย์ศูนย์ควรแทนที่ด้วย x
‫แล้วเราต้องการที่จะทำลาย
‫ถ้าอย่างนั้นเราก็ทำเสร็จแล้ว
‫โดยวิธีการที่นี่ก็ยังบ่น
‫นั่นเป็นเพราะว่าเราไม่ได้แยกวงสวิตซ์ออกจากกันตรงนี้ ตอนนี้เราทำได้แล้ว และตอนนี้ก็มีความสุขแล้ว
‫ดังนั้นฉันจึงแทนที่สนามเด็กเล่นด้วย x และที่นี่มันบ่นเพราะฉันใช้สตริงและเพื่อให้แน่ใจว่าใช้งานได้
‫ฉันใช้ CHA ตอนนี้
‫ดังที่คุณเห็นเครื่องหมายอัญประกาศเดี่ยวในอดีต
‫พวกเขาอยู่ที่นั่นสำหรับตัวละครและอย่างที่คุณรู้สนามเด็กเล่นมีตัวละครมากมาย
‫มันคืออาร์เรย์ 2 มิติของอักขระ
‫นั่นเป็นเหตุผลที่ฉันต้องใช้มันแบบนั้น
‫ไม่เป็นไร.
‫นั่นคือสำหรับกรณีที่หนึ่ง
‫และตอนนี้ฉันต้องทำแบบเดียวกันสำหรับกรณีต่างๆ ที่เรามี
‫สำหรับกรณีที่สอง เราต้องการอะไรที่นั่น?
‫เราจำเป็นต้องมีศูนย์หนึ่งสำหรับกรณีที่สามที่หนึ่ง
‫เราเป็นศูนย์สองสำหรับกรณีที่สี่
‫มันควรจะเป็นศูนย์หนึ่ง
‫กรณีที่ห้า
‫มันหนึ่งและหนึ่ง
‫และถ้าคุณไม่แน่ใจว่าฉันทำอะไรที่นี่ ให้ตรวจสอบอีกครั้ง
‫ไข่ศูนย์
‫นี่ก็คือตำแหน่งศูนย์ศูนย์
‫นี่คือตำแหน่งศูนย์หนึ่ง ตำแหน่งนี้ศูนย์สองและอื่นๆ
‫นี่คือสิ่งที่ฉันกำลังทำอยู่
‫ดังนั้นฉันจึงแทนที่ด้วยค่าที่ถูกต้อง
‫ดังนั้นเจ็ดอยู่ที่สองและศูนย์แปดอยู่ที่สองและหนึ่งและเก้าอยู่ที่สองและสอง
‫มันจะเป็นอย่างนั้น
‫จะเกิดอะไรขึ้นถ้าผู้เล่นคนหนึ่งป้อนค่า
‫และมันจะแทนที่ด้วย X เสมอ
‫ตอนนี้ สิ่งที่เราทำได้ตอนนี้คือ เราสามารถคัดลอกโค้ดทั้งหมดนี้ และทำสิ่งเดียวกันสำหรับผู้เล่นสองคน ใช่ไหม?
‫เราก็เลยบอกว่า โอเค ลอกอันนี้แล้วเรียกใช้สำหรับผู้เล่นสองคน
‫อันที่จริง ฉันจะแสดงให้คุณเห็นเพียงเพื่อให้คุณเห็นว่าเหตุใดจึงไม่ใช่วิธีที่ดีที่สุด
‫ผมจะเพิ่มอีกกรณีตรงนี้
‫เคส มันเป็นสอง
‫และตอนนี้เราต้องแยกมันออกไปด้วย
‫จริงๆ แล้วช่วงพักตรงนี้
‫ควรจะอยู่ในนี้และในนี้เราแตกเช่นกัน
‫และเรามีสวิตซ์เคสอีกอัน ผมจึงสามารถคัดลอกโค้ดนี้ที่นี่ และวางลงในนี้
‫แต่มีวิธีที่ดีกว่าที่เราสามารถสร้างวิธีการที่เพียงแค่ตรวจสอบ
‫เป็นผู้เล่นที่หนึ่งหรือเป็นผู้เล่นที่สองจริง ๆ แล้วมันจะคืนค่า X หรือ O
‫ไปข้างหน้าและสร้างวิธีนี้
‫โมฆะสาธารณะ ป้อน x หรือ O
‫ฉันจะทำให้มันง่าย
‫และสิ่งที่ฉันต้องการตรงนี้ คือฉันต้องการจำนวนเต็ม
‫ฉันต้องการจำนวนเต็มและฉันจะเรียกผู้เล่นคนนั้นว่า
‫สิ่งที่ฉันทำตอนนี้คือฉันตัดรหัสนี้ออกจากที่นี่
‫คำสั่ง switch ผมจะตัดมันตรงนี้ และไม่ต้องการอันนั้นอีกแล้ว
‫ก็ยังต้องการตัวผู้เล่นอยู่
‫และสิ่งที่ผมจะทำคือจะสร้างตัวละครใหม่
‫เครื่องหมายผู้เล่นและฉันจะตั้งค่าให้เป็นเครื่องหมายว่างสำหรับตอนนี้หรืออักขระว่างซึ่งไม่ว่างเปล่า
‫และอยู่ในนั้นคือที่ว่างในนี้
‫ทีนี้ถ้าผู้เล่นเท่ากับหนึ่ง, ที่จริงแล้ว เราสามารถทำได้ในหนึ่งแถวตรงนี้
‫สัญญาณผู้เล่นจะเป็น
‫เอ็กซ์
‫มิฉะนั้น ถ้าผู้เล่นมีค่าเท่ากับ 2 เครื่องหมายผู้เล่นจะเป็น y หรือ o ในกรณีนี้ จริงๆ แล้ว
‫และตอนนี้.
‫เราต้องการข้อมูลของผู้ใช้ด้วย
‫ดังนั้นฉันจะต้องป้อนข้อมูล
‫และอินพุตเป็นประเภทใด
‫อินพุตเป็นจำนวนเต็มใช่ไหม
‫ดังนั้นฉันจะใช้อินพุตที่นี่ int อินพุตและตอนนี้ฉันแทนที่ X นี่ที่นี่ด้วยด้านผู้เล่น
‫ไม่เป็นไร.
‫ตอนนี้สิ่งที่เราทำได้คือ เราสามารถใช้วิธีนี้แทนการรันโค้ดชายฝั่งที่นี่สองครั้ง
‫เอาล่ะ เมื่อเรามีวิธีนี้แล้ว เราก็ไม่ต้องการสวิตช์เคสอีกต่อไป เพราะเรามีเครื่องเล่นอยู่แล้ว
‫ดังนั้นเราจึงบอกว่าผู้เล่นคนหนึ่งแล้วเราก็สามารถเรียกใช้โค้ดได้ที่นี่
‫มาทำกัน
‫มาตั้งค่าเครื่องเล่นที่นี่กัน
‫และเนื่องจากเรามีข้อความที่ยาวกว่าเล็กน้อยที่นี่ เราจำเป็นต้องใช้วงเล็บปีกกาหรือที่เรามีเพราะเรามีโค้ดหลายบรรทัดที่เราต้องการดำเนินการ
‫นั่นเป็นเหตุผลที่เราต้องป้อนสิ่งนี้
‫ตกลง.
‫ตอนนี้ฉันสามารถดำเนินการต่อและกำจัดคำสั่ง switch case ทั้งหมดที่นี่ และฉันต้องเรียกวิธีการของฉันที่นี่
‫ดังนั้นวิธีการโทรจึงเรียกว่า Enter x หรือ O และที่นี่จะระบุว่าให้ป้อน X หรือ O เครื่องเล่นก่อน
‫เอาล่ะ มันจะเป็นผู้เล่น แล้วก็อินพุต และนั่นจะเป็นอินพุต
‫ดังนั้นฉันแค่บอกว่าผู้เล่นและข้อมูลที่ป้อนคือสิ่งที่ฉันต้องการได้รับที่นี่
‫ดังนั้นฉันจึงทำสิ่งเดียวกันกับผู้เล่นด้วย
‫และสิ่งที่จะทำคือมันจะตั้งค่าเป็น X หรือ O
‫และมันจะเรียกใช้รหัสอย่างถูกต้องสำหรับฉัน
‫และอีกอย่าง เราสามารถกำจัด Tudou นี้ได้ เพราะเราได้เปลี่ยนมันแล้ว ดังนั้นเราจึงไม่ต้องการสิ่งนั้นอีกต่อไป
‫ไม่เป็นไร.
‫ทีนี้มาตรวจสอบอินพุตของผู้ใช้กัน เพราะเรายังไม่ได้ทำ
‫ดังนั้นในที่นี้ฉันต้องการสร้างอย่างอื่นในขณะที่ทำในขณะที่
‫และในขณะที่คืออะไร?
‫แล้วเงื่อนไขคืออะไร?
‫การป้อนข้อมูลที่ถูกต้องเป็นเท็จ
‫ตราบใดที่อินพุตไม่ถูกต้อง ฉันต้องการดำเนินการต่อและลองอีกครั้ง
‫ในที่นี้เราจะขอให้ผู้เล่นป้อนรหัสของเขาและใช่เพื่อดำเนินการต่อ
‫ผมจะเข้าไปที่คอนโซลนี้
‫ถูกต้อง.
‫และผู้เล่นที่ตำแหน่งศูนย์
‫ดังนั้นผู้เล่นคนใดจึงเลือกสนามของคุณและตอนนี้เราต้องรับข้อมูลของผู้ใช้
‫ดังนั้นฉันจะใช้อินพุตที่แปลงเป็น int 32 และฉันจะใช้คอนโซล dot read line
‫ดังนั้นฉันต้องการรับรายการของผู้ใช้และฉันต้องการแปลงเป็นข้อมูลเข้าของเรา
‫มันจะใช้สตริงนั้นแล้วสร้างจำนวนเต็มออกมาแล้วเก็บไว้ในอินพุต
‫และตอนนี้เราก็ใช้อินพุตได้แล้ว แต่วิธีที่เราใช้อินพุตตรงนี้อยู่แล้ว แต่นั่นไม่ใช่ปัญหาเพราะเป็นลูป
‫do while
‫มันจะไปถึงอินพุตนี้ และผมจะเปลี่ยนเป็นค่าที่เราป้อนเข้าไป
‫อย่างแรกมันจะเป็นศูนย์ แล้วมันจะตรวจสอบอีกครั้ง แล้วมันจะเป็นสิ่งที่เราป้อนเข้าไป
‫ไม่เป็นไร.
‫นี่จะเป็นกุญแจสำคัญของเราที่นี่
‫และตอนนี้เรามาเริ่มกันเลย
‫มาดูกันว่าจะเกิดอะไรขึ้น
‫ไม่เป็นไร.
‫เพื่อให้เราเป็นและไม่แสดงข้อความที่เราเพิ่งเขียน
‫ดังนั้นทั้งเส้นนี่ตรงนี้
‫ถูกต้อง.
‫แต่ถ้ากด Enter ก็ขึ้น
‫และนั่นเป็นเพราะเรายังมีคีย์การอ่านอยู่ที่นี่
‫ดังนั้นตั้งค่าฟิลด์อ่านคีย์
‫เรามีสิ่งนั้นก่อนหน้านี้เพื่อให้เรายังคงเห็นว่ามีอะไรอยู่ในโปรแกรมของเราหรือในเกมของเรา
‫และถ้าฉันกำจัดมันตอนนี้ เราก็สบายดี
‫ดังนั้น.
‫ผู้เล่นที่หนึ่ง เลือกฟิลด์ของคุณ และฉันจะป้อนหนึ่ง ตัวอย่างเช่น ตอนนี้มันบอกว่า
‫Player เลือกฟิลด์ของคุณ และฉันจะใช้ฟิลด์ต่างๆ เหล่านั้น
‫สิ่งที่ยังไม่เกิดขึ้นคือข้อความของเรายังไม่ได้รับการอัปเดต
‫นั่นคือสิ่งที่เราต้องดูแล
‫ในการทำเช่นนั้น เราต้องล้างคอนโซลของเรา
‫ดังนั้น console dot clear จะเกิดขึ้นที่นี่ และตอนนี้สิ่งที่เราต้องทำคือตั้งค่าฟิลด์ของเราทุกครั้งที่เราอยู่ใน
‫do loop นี้
‫ดังนั้น set field ไม่ควรรันภายใน main ของเราเพียงครั้งเดียว แต่ควรรันทุกครั้งที่เราอยู่ใน
‫do loop
‫หมายความว่าเราจะตั้งค่าฟิลด์ที่นี่
‫เลยลองเรียกใช้อีกครั้ง
‫คำว่า please select your field ฉันกำลังจะใช้ สมมุติว่า หก
‫ตอนนี้ถึงที่แล้ว ลองป้อนสี่และตอนนี้เราจะเห็นว่าหกถูกป้อนอย่างกะทันหัน
‫ตอนนี้ควรป้อนสี่ครั้งในครั้งต่อไปที่ฉันป้อนบางอย่างและเราอยู่ที่นั่น
‫เราจึงยังคงพบปัญหาที่อัพเดทเป็นสายไม่อัพเดทหลังจากที่ผู้ใช้งานเข้ามาแล้ว แต่จะอัพเดทในภายหลัง
‫ลองตรวจสอบดูว่าเราจะแก้ปัญหานั้นได้อย่างไร
‫และนั่นเป็นเพราะว่า Set Field เป็นก่อนที่เราจะตรวจสอบผู้เล่น
‫มาทำกัน
‫ตอนนี้เราตรวจสอบผู้เล่นแล้วทำการตั้งค่าฟิลด์
‫ตอนนี้ขอเรียกใช้อีกครั้ง
‫ลองดู เลือกหนึ่งฟิลด์
‫ฉันจะเลือกฟิลด์ที่ 5 และเราเห็นแล้วว่าตอนนี้มันเป็นศูนย์ หรือจริงๆ แล้วตอนนี้
‫ผู้เล่นที่สองจะเลือกหก นั่นคือ X
‫ตอนนี้ 3 ตัวจะเป็น O สองตัวจะเป็น X และอื่นๆ
‫ดังนั้นเราจึงมีฟังก์ชันดังกล่าว
‫แต่สิ่งที่เรายังขาดอยู่คือความสามารถในการตรวจสอบว่าผู้ใช้ได้ป้อนบางสิ่งที่ได้รับอนุญาตหรือไม่
‫เพราะสิ่งที่ฉันยังคงทำได้คือฉันสามารถเอาชนะได้
‫สมมุติว่าผู้เล่นคนหนึ่งเลือกผู้เล่นคนหนึ่งเพื่อเลือกคนนี้อีกครั้ง
‫ดังที่คุณเห็นตอนนี้จาก O มันวิ่งไปที่ X
‫ผู้เล่นคนที่หนึ่งจะบอกว่า โอเค ตอนนี้ผมอยากมีสนามนี้แล้วมันจะเข้าไปข้างใน
‫สิ่งที่เราต้องทำตอนนี้คือ เราต้องตรวจสอบว่ามีผู้เล่นคนใดคนหนึ่งเข้ามาแล้ว และถ้าเขาทำ
‫เราไม่ต้องการให้ผู้เล่นคนอื่นอนุญาตหรือได้รับอนุญาตให้แทนที่ฟิลด์นั้น
‫นั่นคือสิ่งที่เราต้องทำในขณะที่วนรอบเพราะในที่นี้เราตรวจสอบว่าอินพุตถูกต้องหรือไม่และเราสามารถตั้งค่าอินพุตไม่ถูกต้องหากผู้ใช้ไม่ได้ป้อนค่าที่ถูกต้อง
‫ดังนั้น ในระหว่างที่เรากำลังดำเนินการอยู่ เราก็สามารถแก้ไขปัญหาที่เรามีได้ที่นี่
‫ดังนั้น ถ้าฉันป้อน สมมติว่าเป็น G โปรแกรมของฉันจะขัดข้อง
‫ดังนั้นฉันจึงมีอินพุตนี้ซึ่งสร้างข้อผิดพลาดเพื่อให้เราสามารถรับสิ่งนั้นได้ด้วยการลองและจับ ดังนั้นเราจึงสามารถแก้ปัญหาด้วยการลองจับ
‫และนี่จะเป็นการลองจับที่ง่ายมาก
‫ฉันจะไม่ทำให้มันซับซ้อนไปกว่านี้
‫และสิ่งเดียวที่ฉันจะไป
‫ฉันจะเขียนลงในบรรทัดขวาของคอนโซล
‫กรุณากรอกตัวเลข
‫ตอนนี้ถ้ามีใครทำแบบนั้นอีก ผมจะเข้าไปทำอะไร
‫ยังไม่หยุดทำงาน แต่ก็ไม่ได้เขียนลงบนคอนโซลด้วยเพราะจะรีเซ็ตในภายหลัง
‫หรือว่าไม่ใช่?
‫ใช่ มันกำลังรีเซ็ตค่อนข้างมากเพราะเราไม่ได้เรียกร้องให้มีคำสั่งออกที่นี่
‫สิ่งที่เราต้องทำต่อไป อย่างน้อยเราก็แก้ไขลูกศรนั้น
‫ตอนนี้เราต้องตรวจสอบว่าอินพุตเป็นหนึ่งและสนามแข่งขันหรือไม่
‫ที่ตำแหน่งนั้น
‫ดังนั้นที่ศูนย์ศูนย์ ซึ่งเป็นตำแหน่งเดียว ยังคงเป็นอักขระหนึ่ง และเราต้องการวงเล็บอื่นที่นี่
‫นั่นคือกรณี
‫จากนั้นตั้งค่าอินพุต
‫ถูกต้อง.
‫ให้เป็นจริง
‫และตอนนี้เราต้องทำแบบเดียวกันกับทุก ๆ ฟิลด์ที่เรามี
‫อย่างอื่น ถ้าอินพุตเท่ากับ 2 และสนามแข่งขันยังคงเปิดอยู่ที่ตำแหน่งนั้น
‫มันจะเป็นศูนย์
‫หนึ่งยังคงเป็นสอง
‫จากนั้นโปรดไปข้างหน้าและตั้งค่าอินพุต
‫ถูกต้องตามความเป็นจริงด้วย
‫และตรงนี้ผมไม่มีเครื่องหมายเท่ากับอีก
‫นี่คือสิ่งที่เราต้องคัดลอกและวางหลาย ๆ ครั้งเพื่อให้เราสามารถจับแต่ละกรณีได้
‫มันคือสาม สี่ ห้า หก
‫และในนี้
‫ฉันพบข้อผิดพลาดที่นี่
‫เซเว่น.
‫แปด.
‫และเก้า
‫และตอนนี้ แน่นอน ฉันต้องแทนที่ตำแหน่งเหล่านั้นที่นี่เช่นกัน และฉันต้องปรับตัวละครเหล่านั้น
‫ดังนั้น เจ็ด แปด เก้า
‫ตอนนี้เรามีสามตัวคือ a02
‫ทั้งสี่อยู่ที่หนึ่งศูนย์
‫จากนั้นห้าอยู่ที่ 1111 จริง ๆ แล้วหกอยู่กับหนึ่งสอง
‫อันนั้นคือ a20
‫ตอนสองหนึ่งและสองสอง
‫ตอนนี้เรามีกรณีที่ถูกต้องทั้งหมดเมื่อทุกอย่างเรียบร้อยดี และตอนนี้เราต้องการ LS ที่นี่
‫อย่างอื่นไม่ถูกต้อง
‫ดังนั้นเราจึงต้องการแจ้งให้ผู้ใช้ทราบ
‫ดังนั้น console dot right line ขึ้นบรรทัดใหม่ไม่ถูกต้อง
‫โปรดใช้ฟิลด์อื่นและเราสามารถตรวจสอบให้แน่ใจว่าอินพุตที่ถูกต้องถูกตั้งค่าเป็นเท็จ
‫สิ่งที่เราทำได้จริงที่นี่คือ เราสามารถสร้างภูมิภาคได้
‫ผมจะโทรไปเขตนั้นและจะสิ้นสุด
‫หลังจากชิ้นนี้ที่นี่และภูมิภาค
‫ให้ฉันทำอย่างนั้น
‫และตอนนี้ฉันยังต้องการแจ้งให้ทราบว่าภูมิภาคนี้ทำอะไร
‫และเป็นการทดสอบหรือทดสอบว่ามีการใช้ฟิลด์ใดอยู่แล้ว เพราะนั่นคือแนวคิดเบื้องหลังทั้งภูมิภาคหรือเบื้องหลังทั้งหมดนี้
‫ในขณะที่โค้ดที่เรามีที่นี่ซึ่งตรวจสอบได้ ฟิลด์นี้ถูกนำไปใช้หรือไม่
‫ถ้ามันเอาไปทำอย่างอื่น
‫ถ้ารับไม่ได้ก็ไปต่อ
‫ทีนี้มาเรียกใช้กันใหม่
‫มาดูกัน.
‫ผู้เล่นคนหนึ่งใช้อย่างใดอย่างหนึ่ง
‫ผู้เล่นสองคนพยายามใช้อีกครั้งและแจ้งว่าป้อนข้อมูลไม่ถูกต้อง
‫โปรดใช้ฟิลด์อื่น
‫ดังนั้นเขาจึงใช้สองอัน
‫ตอนนี้ใช้สิ่งนั้น
‫ตกลง.
‫และอย่างที่คุณเห็น ฉันสามารถป้อนค่าต่างๆ ลงไปได้ และดูเหมือนว่าทุกอย่างจะดี
‫แต่อย่างที่คุณเห็น ผู้เล่นคนหนึ่งชนะไปแล้วสองครั้ง ดังนั้นเขาจึงข้ามมาที่นี่
‫นั่นคือสิ่งที่เราต้องตรวจสอบต่อไป
‫ดังนั้นเราต้องตรวจสอบว่ามีผู้ชนะหรือไม่
‫และมาสร้างภูมิภาคใหม่กันเถอะ
‫ด้านล่างชุดฟิลด์ที่เราตรวจสอบผู้ชนะ
‫ดังนั้นที่นี่ภูมิภาคใหม่
‫และฉันจะยุติขอบเขตโดยตรงและภูมิภาค
‫และที่นี่ฉันมีเงื่อนไขการชนะการตรวจสอบรหัสทั้งหมด
‫และเราจะทำอย่างนั้นได้อย่างไร?
‫เราต้องตรวจสอบว่าตัวละครใดที่ผู้เล่นแต่ละคนมี
‫ดังนั้นเราจึงมีผู้เล่นที่นี่เซ็นสัญญากับผู้เล่น
‫หนึ่งคือ X สำหรับผู้เล่น สองคือ O
‫ดังนั้นสิ่งที่เราต้องตรวจสอบตอนนี้
‫หรือว่ามันมาถูกทางแล้วจริงๆ?
‫ใช่.
‫ถ้าสำหรับเล่นหนึ่ง มันคือ X สำหรับผู้เล่นที่สองคือ O
‫ดังนั้นนี่คืออักขระที่ถูกต้อง
‫สิ่งที่เราต้องตรวจสอบที่นี่ หรือฉันจะใช้กับอาร์เรย์หรือสร้างด้วยอาร์เรย์
‫ตัวละครของผู้เล่นคือ X และ O
‫และตอนนี้สำหรับตัวละครแต่ละตัวที่ฉันมีสำหรับตัวละครแต่ละตัว ตัวละครในตัวละครของผู้เล่น ฉันต้องการตรวจสอบเงื่อนไขการชนะ
‫สิ่งที่จะทำคือมันจะตรวจสอบว่าเป็นจริงสำหรับ X หรือว่าจริงสำหรับ O หรือไม่
‫ในที่นี้เราแค่ตรวจสอบว่า ผู้เล่นคนหนึ่งชนะหรือผู้เล่นสองคนชนะ
‫และเราทำเช่นนั้นโดยตรวจสอบว่า play field zero zero เท่ากับ player char หรือไม่
‫และ Playfield ศูนย์หนึ่ง
‫เท่ากับผู้เล่น char และสนามเด็กเล่นที่ศูนย์สองเท่ากับผู้เล่น char
‫ดังนั้นหากเป็นกรณีนี้ ให้ดำเนินการโค้ดต่อไป
‫ในนี้ผมจะเขียนอะไรประมาณนี้ ดูว่าเราได้ผู้ชนะแล้ว
‫เอาล่ะ ฉันแค่ต้องการทดสอบก่อนที่เราจะเขียนคำสั่ง if ทั้งหมด ซึ่งยาวกว่ามาก
‫ดังนั้นผู้เล่นที่หนึ่งจะชนะแถวแรกเพราะนี่เป็นแถวเดียวที่เราเข้ามาที่นี่
‫ดังนั้น ในกรณีที่ สำหรับทั้งสามฟิลด์ภายในแถวนั้น อักขระจะเหมือนกัน
‫เรามีผู้ชนะ
‫นั่นคือสิ่งเดียวที่เราตั้งไว้ที่นี่
‫ดังนั้นผมจะบอกว่า โอเค ผู้เล่นที่หนึ่งจะเป็นหนึ่ง
‫ผู้เล่นคนที่สองจะเป็นผู้เล่นคนที่หนึ่งจะเป็นสอง ห้าและสามคน และเรามีผู้ชนะ
‫คุณจะเห็นว่าแถวแรกเต็มไปด้วยศูนย์หรือของ Oh ซึ่งหมายความว่าเรามีผู้ชนะ
‫และตอนนี้สิ่งที่เราต้องทำคือเราต้องแทนที่ด้วยเงื่อนไขต่างๆ ที่เราสามารถทำได้
‫ดังนั้น ด้วยตำแหน่งที่แตกต่างกันทั้งหมด และถ้าคุณดูเกม ฉันจะเปิดมันอีกครั้ง
‫เงื่อนไขการชนะที่เป็นไปได้คือ หนึ่ง, สอง, สาม, สี่, ห้า, หก, เจ็ด, แปด, เก้า
‫แล้วเราได้ 753159147258 กับ 369
‫เรามีหนึ่ง สอง สาม
‫หกเลย
‫บวกสอง.
‫ดังนั้นเราจึงมีเงื่อนไขที่แตกต่างกันแปดประการในการที่เรามีผู้ชนะ และนั่นเป็นสิ่งที่เราต้องทำที่นี่
‫ดังนั้นเราต้องสร้างแปดครั้งด้วยตัวเลือกต่างๆ
‫ดังนั้นฉันจะหยุดมันไว้ที่นี่
‫และทุกครั้งที่เราต้องใช้ an หรือ sign เพราะสิ่งเหล่านี้คือเงื่อนไขหรือเงื่อนไขที่ชนะ
‫ผมจะทำซ้ำอีกหกครั้ง
‫เรามีหนึ่ง สอง สาม สี่ ห้า หก เจ็ด แปด
‫ดีแล้ว.
‫และตอนนี้ อย่างที่บอก เงื่อนไขต่างกันเป็นศูนย์ ศูนย์ และอื่นๆ
‫ทีนี้ก็เหมือนกับอันที่หนึ่ง 011 และหนึ่งสอง กับแถวที่สาม 222021 และสองสอง จากนั้นเราก็มีแนวนอนที่ลากจากบนลงล่าง
‫ดังนั้นศูนย์ศูนย์จากนั้นหนึ่งศูนย์และสองศูนย์
‫แล้วเราก็มี
‫หนึ่งและหนึ่งจริงๆ
‫ศูนย์และหนึ่ง
‫ขออภัยศูนย์หนึ่ง
‫สิบ หนึ่ง หนึ่ง และ 1202 สอง หนึ่ง และ สอง สอง
‫และตอนนี้เราก็มีเส้นทแยงมุมแล้ว
‫มันจึงเป็นศูนย์ศูนย์
‫จากนั้นให้ฉันตรวจสอบที่ศูนย์ศูนย์
‫แล้วหนึ่ง หนึ่ง สอง สอง
‫และในที่สุด เราก็มี
‫หนึ่ง สอง หนึ่ง หนึ่ง.
‫และ.
‫สองศูนย์
‫ดังนั้นสิ่งเหล่านี้ควรเป็นแปดเงื่อนไขที่เรามี
‫และตอนนี้เราเพียงแค่ต้องตรวจสอบว่าใครมี
‫สิ่งที่เราตรวจสอบที่นี่ก็คือข้อความยาวๆ นี้
‫ถ้า.
‫อักขระผู้เล่น ตัวละคร หรืออักขระของผู้เล่นมีค่าเท่ากับ x
‫เรารู้ว่าผู้เล่นสองคนมีหนึ่งคน
‫ดังนั้นคอนโซลเส้นสีแดงในผู้เล่นบรรทัดใหม่สองคนมีหนึ่งคน
‫และที่นี่ฉันต้องระวังให้มาก
‫ไม่เป็นไร.
‫นั่นคือกรณีเดียว
‫แล้วอีกกรณีหนึ่งก็คือผู้เล่นคนอื่นมีอย่างใดอย่างหนึ่ง
‫ผมก็เลยใช้ ls ตรงนี้ และมันบอกว่าผู้เล่นคนหนึ่งมีหนึ่งคน
‫และฉันก็ต้องการที่จะแยกตัวออกจากเกมที่นี่
‫เลยบุกเข้ามาที่นี่
‫ลองทำดูและดูว่าเราสามารถทำซ้ำได้จริงหรือไม่
‫สมมุติว่าเราอยากได้เส้นทแยงมุม
‫หนึ่ง สอง ห้า สาม เก้า และเราเห็นผู้เล่นคนหนึ่งมีหนึ่งคน
‫สิ่งที่เราต้องการตอนนี้คือ เราต้องการรีเซ็ตเกม และเราต้องการอนุญาตให้สร้างรอบใหม่
‫ดังนั้นผู้เล่นควรจะสามารถวิ่งได้อีกครั้งและเล่นได้อีกครั้ง
‫และสิ่งที่เรายังไม่ครอบคลุมก็คือการเสมอ ดังนั้นเรายังคงต้องครอบคลุมการจับฉลาก
‫แต่ก่อนอื่น เรามารีเซ็ตสนามกันก่อนเมื่อเราได้ผู้ชนะแล้ว
‫ก่อนที่ผมจะแตกออกไป ผมต้องการตั้งค่าสนามใหม่
‫ดังนั้นในที่นี้เพื่อทำการรีเซ็ตฟิลด์และเพื่อตั้งค่าฟิลด์เรามีฟังก์ชั่นสำหรับสิ่งนั้นหรือเมธอดอยู่แล้ว
‫เราได้สร้างเมธอด set field ซึ่งทำอย่างนั้น
‫มันทำให้สนามอีกครั้ง
‫แต่สิ่งที่ยังไม่ได้ดำเนินการ จะไม่รีเซ็ตสนามเด็กเล่นของเรา เนื่องจากขณะนี้สนามเด็กเล่นของเราตั้งค่าเป็นค่าเฉพาะ
‫นี่อาจเป็น X นี่อาจเป็น O เป็นต้น
‫ดังนั้นเพื่อให้แน่ใจว่าเราสามารถรีเซ็ตได้ตลอดเวลา เราจำเป็นต้องคัดลอกสิ่งนั้น
‫และเป็นเวอร์ชันมาตรฐาน และฉันจะเรียกมันว่า play field initial
‫นี่คือวิธีที่มันเป็นในตอนแรก และนี่คือสิ่งที่เราลบล้างอยู่ตลอดเวลา
‫ตอนนี้เราต้องการวิธีอื่นที่จะทำการรีเซ็ต
‫และวิธีการรีเซ็ตจะเรียกว่าฟิลด์รีเซ็ตโมฆะสแตติกสาธารณะ
‫และสิ่งที่ฉันต้องทำที่นี่คือ อย่างแรกเลย ฉันต้องตั้งค่า play field เป็นค่าเริ่มต้นของ play field
‫ดังนั้นมันเป็นอย่างไรในตอนแรกและจากนั้นฉันสามารถตั้งค่าสนามของฉันได้ ตอนนี้เรามารีเซ็ตเกมเมื่อผู้เล่นมีแล้วและนั่นก็อยู่ที่นี่
‫ผู้เล่นคนหนึ่งมีหนึ่งหรือสองคนมีหนึ่งคน
‫มารีเซ็ตที่นี่กันเถอะ รีเซ็ตฟิลด์
‫และอีกอย่าง บางทีเราควรบอกผู้เล่นหรือบอกผู้ใช้ว่าพวกเขาสามารถรีเซ็ตเกมได้
‫ดังนั้นโปรดกดแป้นขวาและหรือกดปุ่มใดก็ได้เพื่อรีเซ็ตเกม
‫และที่นี่เราแค่พูดว่า
‫คอนโซลปุ่มสีแดงและหลังจากนั้นรีเซ็ตเกม
‫ตกลง.
‫มาทดสอบกัน
‫เลือกสาขาของคุณ
‫1 ถึง 5 สามเก้า
‫ผู้เล่นคนหนึ่งมีหนึ่ง
‫ผู้เล่นโปรดกดปุ่มใดก็ได้เพื่อรีเซ็ตเกม
‫ฉันกดปุ่มใด ๆ และที่นั่น
‫เราได้รีเซ็ตเกมแล้วและตอนนี้ผู้เล่นได้เปลี่ยนสองเทิร์นแล้ว
‫อย่างที่คุณเห็นที่นี่
‫เลือกสาขาของคุณ
‫ทีนี้มาลองกันใหม่
‫อย่างที่คุณเห็น ตอนนี้เรามีลำดับที่แตกต่างกัน
‫ผู้เล่นสองคน เป็นหนึ่งเดียว โปรดกดปุ่มใดก็ได้เพื่อรีเซ็ตเกม
‫ยอดเยี่ยม.
‫ถ้าฉันพิมพ์อะไรผิดและที่นี่ฉันยังคงได้รับข้อผิดพลาดนี้ แต่ก็ไม่เป็นไร
‫และนั่นคือสิ่งที่ฉันต้องการ
‫ดังนั้นฉันจึงจับมัน
‫ฉันจับข้อผิดพลาดกับมัน
‫ลองจับที่เรามี
‫ตอนนี้เหลือเพียงสิ่งเดียวเท่านั้นและนั่นก็คือหากมีการเสมอกัน
‫และมีหลายวิธีในการแก้ปัญหานี้
‫และที่ง่ายที่สุดคือการสร้างตัวแปรที่เรียกว่าเทิร์น
‫และตัวแปรนี้จะเก็บจำนวนเทิร์นที่เราเล่นไปแล้ว
‫จบเทิร์นเท่ากับศูนย์
‫ดังนั้นในตอนเริ่มต้นเราไม่มีเทิร์น และทุกครั้งที่เรารีเซ็ตฟิลด์หรือตั้งค่าฟิลด์ เราต้องการเพิ่มเทิร์นทีละครั้ง
‫เพราะวิธีนี้
‫เรียกว่าเมื่อไหร่?
‫มาเช็ค set field กัน
‫เรียกว่าทุกครั้งที่เราเข้าสู่ do while loop
‫และนั่นก็ต่อเมื่อมีรายการที่ถูกต้องโดยผู้ใช้เท่านั้น
‫ตอนนี้ถ้าเรามีสนามเทิร์นนี้ เราก็ต้องระวังด้วยว่าเราจะรีเซ็ตฟิลด์เทิร์นด้วย
‫เมื่อเรารีเซ็ตทั้งฟิลด์ทีละฟิลด์ ฉันหมายความว่านี่คือฟิลด์ของเกมของเรา
‫แต่ผลัดกันเป็นสนามเพราะเป็นตัวแปรทั่วโลกใช่ไหม?
‫ดังนั้นฉันต้องการรีเซ็ตเทิร์นเมื่อเรารีเซ็ตเกม
‫ดังนั้นรีเซ็ตฟิลด์ที่นี่ เราบอกว่าเทิร์นเท่ากับศูนย์ หรือเพื่อให้แม่นยำยิ่งขึ้น เพราะเราเพิ่มเทิร์นแล้ว
‫เราต้องทำหลังจากนั้น
‫ตอนนี้เราแค่ต้องตรวจสอบว่าเงื่อนไขนี้เป็นจริงหรือไม่
‫ดังนั้นที่นี่เรามีเงื่อนไขการชนะ หากมี
‫และนี่คือคำสั่ง if
‫และที่นี่เรามีคำสั่ง WL
‫ดังนั้นถ้าเราไม่มีผู้ชนะ เราก็มีเสมอ
‫หรือถ้าจะให้ละเอียดกว่านี้ถ้าเทิร์นเท่ากับสิบ เราก็เสมอกัน
‫สิ่งที่เราพูดที่นี่ก็เหมือนกับที่เราทำที่นี่
‫เราต้องแยกตัวออกจากเกมและต้องรีเซ็ตเกมด้วย
‫ดังนั้นรีเซ็ตฟิลด์และ.
‫เราควรแจ้งผู้เล่นว่าไม่มีผู้ชนะ
‫ผมจะป้อน draw เป็นข้อความที่นี่
‫เอาล่ะ ตอนนี้เราแก้ปัญหาหนึ่งข้อในเกม อย่างแรกเลย หาแต้มให้ได้
‫มาตรวจหวยกันก่อน
‫ดังนั้น หนึ่ง สอง สาม สี่
‫หกห้า.
‫แปดเก้าและเจ็ด
‫และเห็นว่าเราถูกหวย
‫ไม่เป็นไร.
‫กดปุ่มใดก็ได้เพื่อรีเซ็ตเกม
‫ที่ทำงานเช่นกัน
‫ทีนี้มาลองกันใหม่อีกครั้ง
‫อันที่จริงไม่ได้วาด แต่ชนะ
‫และเราเห็นผู้เล่นสองคนเป็นหนึ่ง
‫ฉันกด Enter และเกมของเราไม่รีเซ็ตและนั่นเกี่ยวข้องกับตัวแปรคงที่ของเราที่นี่
‫ดังนั้น บทเริ่มต้นของสนามแข่งขันของตัวละครนี้ และสิ่งที่ฉันต้องทำคือ ฉันต้องกำจัดมันที่นี่
‫และฉันต้องทำให้มันคงที่จริง ๆ เพื่อสร้างตัวแปรในเครื่องซึ่งจะอยู่ในฟิลด์รีเซ็ตของเรา
‫ดังนั้นฉันจะสร้าง play field ขึ้นต้น และฉันจะตั้งค่านั้นใน play field ของฉัน
‫เลยลองมาทดสอบกันอีกครั้ง
‫หนึ่งสองสามสี่ห้าหกเจ็ด.
‫เล่นหนึ่งมีหนึ่ง
‫โอเค หนึ่ง สอง สาม สี่ ห้า หก เจ็ด
‫เล่นสองเป็นหนึ่งภายใต้คีย์และคุณเห็นว่ามีการรีเซ็ต
‫ทีนี้ สิ่งที่ผมคิดออกหรือทดสอบแล้วเห็นว่ายังมีข้อผิดพลาดอยู่เล็กน้อย
‫คือ สอง หนึ่ง สาม
‫สี่ ห้า หก และแปด
‫และอย่างที่คุณเห็น เรามีเงื่อนไขที่ผู้เล่นมี แต่มันไม่ติดหรือไม่ได้จับที่นี่
‫ดังนั้นคุณสามารถเห็นผู้เล่นสองคนมีหนึ่ง
‫ดังนั้นแม้ว่าผู้เล่นคนหนึ่งจะมีหนึ่งที่มี 000 หรือศูนย์
‫ยังมีปัญหาเล็กน้อยในเงื่อนไขของฉันที่นี่ และคุณอาจคิดออกก่อนหน้านี้แล้ว
‫ฉันจะแสดงวิธีแก้ไขให้คุณดู
‫และนั่นควรเป็นเงื่อนไขนี่ตรงนี้
‫ศูนย์หนึ่งก็หนึ่งหนึ่งและอันนี้ไม่ควรเป็นหนึ่งสอง แต่ควรเป็นสองหนึ่ง
‫ทีนี้มาทดสอบกันอีกครั้ง
‫ลองดูว่าเราจับเงื่อนไขนี้หรือไม่
‫หนึ่ง สอง สาม ห้า สี่ แปด
‫และเราเห็นผู้เล่นสองคนเป็นหนึ่งเดียว
‫เอาล่ะ เรามีอันนั้นแล้ว
‫และใช่ มันค่อนข้างจะเป็นเช่นนั้น
‫เกมของเราทำงานและทำในสิ่งที่ควร
‫มีบางสิ่งที่คุณยังสามารถปรับปรุงได้แน่นอน
‫ตัวอย่างเช่น เครื่องหมายอักขระนี้
‫ดังนั้นเราจึงมอบอินพุต และตรวจสอบอินพุตนั้นอีกครั้ง และเราสร้างสัญลักษณ์อักขระ และอื่นๆ
‫แต่เราสามารถทำให้ง่ายยิ่งขึ้นไปอีก
‫ดังนั้นเราจึงไม่นำผู้เล่นมาเองที่นี่
‫แต่สิ่งที่เราทำคือตัวละครที่เป็นสัญลักษณ์ผู้เล่นหรือผู้เล่น
‫ดังนั้นมันควรจะเป็นสิ่งเดียวกัน
‫ดังนั้นสัญลักษณ์ของผู้เล่นจึงสมเหตุสมผลกว่าเพราะเราใช้ที่นี่
‫ดังนั้น เราจึงไม่จำเป็นต้องสร้างโค้ดทั้งหมดที่นี่
‫มากำจัดมันกันเถอะ
‫และเมื่อเราเรียกวิธีนี้ ซึ่งเราทำที่นี่ เรามอบตัวละครแทน
‫ดังนั้นสำหรับผู้เล่นคนที่หนึ่ง เราพูดว่า โอ้ ฉันคิดว่า และสำหรับผู้เล่นที่สอง มันคือ X
‫เพื่อที่จะทำในสิ่งเดียวกัน
‫และตอนนี้เราได้ลดบรรทัดโค้ดของเราลงเล็กน้อย และคุณสามารถดำเนินการต่อและปรับปรุงโค้ดให้ดียิ่งขึ้นไปอีก
‫แต่นั่นเป็นเพียงโค้ดบางส่วนที่ฉันคิดว่าคุณควรเขียนตามสิ่งที่คุณได้เรียนรู้ในหลักสูตรนี้
‫ไม่เป็นไร.
‫ดังนั้น ฉันหวังว่าคุณจะทำอย่างนั้นได้ แม้ว่าจะดูแตกต่างไปมากในกรณีของคุณ
‫และโปรดไปข้างหน้าและแบ่งปันวิธีแก้ปัญหาของคุณ
‫หรือถ้าคุณใช้วิธีแก้ปัญหาของฉันที่ฉันมีที่นี่และปรับปรุงแล้ว โปรดไปข้างหน้าและแบ่งปันสิ่งนั้นเช่นกัน
‫และใช่ มันค่อนข้างจะเป็นเช่นนั้น
‫วิดีโอที่ค่อนข้างยาว ฉันรู้ แต่ฉันหวังว่าคุณจะได้เรียนรู้อะไรมากมายจากมัน
‫และแม้ว่าคุณจะไม่ได้ทำเอง คุณก็แค่ทำตามและพยายามสร้างมันขึ้นมา
‫แล้วพบกันใหม่ในวิดีโอหน้าที่เราจะพิจารณาหัวข้ออื่น
‫แล้วเจอกันนะ