คอมพิวเตอร์, การเขียนโปรแกรม
การเขียนโปรแกรม วงจรที่มีตัวเลือก
เป็นสถานที่พิเศษในเทอร์โบปาสคาลรอบใช้เวลาถึง พวกเขาเริ่มที่จะศึกษาในทันทีหลังจากที่ข้อมูลการฝึกอบรมทักษะนำเข้าส่งออกไปยังหน้าจอ หลังจากที่ทุกคนส่วนใหญ่ของงานเพื่อให้แน่ใจว่าวงจรที่มีพารามิเตอร์และโครงสร้างอื่น ๆ ที่จะช่วยอำนวยความสะดวกในการเขียนและการดำเนินงานของบล็อกโปรแกรมโดยเฉพาะอย่างยิ่ง
รอบพันธุ์
โดยรวมแล้วมีสามสายพันธุ์:
- กับพารามิเตอร์
- กับเงื่อนไขที่
- postcondition
วงจรที่มีตัวเลือกมิฉะนั้นจะเรียกเป็น For ... กับ ... ทำหรือสำหรับ ... downto .... ไม่ซ้ำซ้ำลำดับของการกระทำ ในหลักการพันธุ์อื่น ๆ ถูกนำมาใช้เพื่อวัตถุประสงค์เดียวกันเฉพาะในสำหรับวงเป็นที่รู้จักกันล่วงหน้าจำนวนของขั้นตอนที่
ในสองโครงสร้างอื่น ๆ (ในขณะที่และทำซ้ำ) จำนวนการทำซ้ำที่ไม่รู้จักต้น ดังนั้นเมื่อการศึกษางานก็จะต้องมีความเข้าใจซึ่งวงจรถูกนำมาใช้
พื้นฐานนิยามที่เกี่ยวข้อง
รอบกับพารามิเตอร์ - ย้ำซ้ำ ๆ Counter - ส่วนประกอบหลักซึ่งจะดำเนินการโดยใช้การออกแบบที่กำหนดไว้ ขอบเขตของช่องว่างที่แสดงให้เห็นขอบเขตที่จะดำเนินการหรือการย้ำว่า โดยวิธีการที่มันไม่จำเป็นว่าค่าเริ่มต้นเท่ากับ 1. ผู้ใช้กำหนดขอบเขตของตัวเองทั้งในช่องว่าง ร่างกายห่วง - ชุดของคำสั่งที่ได้กำหนดไว้แล้วจำนวนของการเกิดซ้ำที่
คำว่า "รอบกับพารามิเตอร์" หมายความว่าอยู่ในสภาพที่มีการตรวจสอบและจากนั้นชุดของการทำซ้ำในการออกแบบ เคาน์เตอร์จะเพิ่มขึ้น (หรือ decremented) และซ้ำทุกอย่าง ร่างกายห่วงจะมีส่วนร่วมตราบใดที่เงื่อนไขเป็นจริง
For ... กับ ... ทำ: อัลกอริทึมไวยากรณ์
ตามที่ระบุไว้แล้วรอบกับพารามิเตอร์ที่มีการใช้ในการใช้งานที่ระบุว่า "ช่องว่าง" ในการที่จะทำงานร่วมกับ ดังนั้นจึงสามารถเป็นอาร์เรย์ของตัวเลขวันของสัปดาห์, บทกวีแถวและม. D.
2 การออกแบบรูปแบบที่แยก: เพิ่มขึ้นจากเคาน์เตอร์และการลดลงของ การออกแบบครั้งแรกจะสะกดออกมาในลักษณะดังต่อไปนี้:
สำหรับ iskh.peremennaya: = 1 ชายแดนไปยังชายแดน 2 ทำ
เริ่มต้น
ร่างกายห่วง;
จบ;
ที่นี่: โทษ การประกาศตัวแปรโดยผู้ใช้ที่จุดเริ่มต้นของโปรแกรมหรือหน่วยงานที่; 1 ขอบเขตและเขตแดนของ 2 - ค่าเริ่มต้นและครั้งสุดท้ายในช่วงระยะเวลานั้น ในร่างกายของวงที่มีการกำหนดจำนวนของการกระทำที่จะดำเนินการโดยโปรแกรม มันต้องจำได้ว่าถ้าร่างกายห่วงมีเพียงหนึ่งทีมแล้ววงเล็บผู้ประกอบการเริ่มต้น ... ปลายสามารถละเว้น ในศูนย์รวมนี้เคาน์เตอร์คือ
สำหรับ iskh.peremennaya = 1 downto ชายแดนชายแดน 2 ทำ
เริ่มต้น
ร่างกายห่วง;
จบ;
นี่อ้าง ตัวแปรที่จะลดลงในทีละ 1
รูปแบบของพารามิเตอร์รอบ For ... กับ ... ทำจะเป็นดังนี้:
- มันตั้งค่าขีด จำกัด บนของช่วงเวลาที. อี 2 เขตแดน
- Iskh.peremennoy กำหนดวงเงินค่า 1
- ทดสอบเงื่อนไขผ่าน: iskh.peremennaya ≤ 2 เขตแดน
- เมื่อได้รับผลที่แท้จริง (True) ร่างกายห่วงจะถูกดำเนินการ
- เคาน์เตอร์จะเพิ่มขึ้นจากขั้นตอนที่เท่ากับ 1
- รายการที่ 3-5 ไปอย่างราบรื่นจนกว่าจะถึงเวลาเช่นเงื่อนไขเป็นจริง: iskh.peremennaya> 2 เขตแดน ครั้งนี้ได้เกิดขึ้นในวงที่มีการออกและการควบคุมผ่านคำสั่งดังต่อไปนี้ได้รับการออกแบบ
สำหรับ ... downto ... ทำขั้นตอนวิธีการคล้ายกับข้างต้นยกเว้นไม่กี่จุด:
- ในขั้นตอนที่ 3 อยู่ในสภาพที่มีการทดสอบ: iskh.peremennaya ชายแดน≥ 2
- เคาน์เตอร์อัลกอริทึมเส้นที่ 5 เป็น decremented โดย 1
- ในย่อหน้าที่ 6 3-5 ทีมจะถูกดำเนินการเป็นเวลานานเป็นเงื่อนไขที่พอใจ: iskh.peremennaya <ชายแดน 2
ทุกสิ่งทุกอย่างเป็นที่คล้ายกันในการทำงานทั้งในขั้นตอนวิธีการ
พารามิเตอร์วงจรผัง
รอบกับพารามิเตอร์มีผังรูปแบบ (แม้ว่ามันจะถูกนำเสนอข้างต้นแล้ว) นี่คือโครงสร้างที่เรียบง่าย
ความต้องการขั้นพื้นฐานพารามิเตอร์ของวงจร
รอบกับพารามิเตอร์ที่จำเป็นต้องมีบางชนิดของสภาพแวดล้อม
- เคาน์เตอร์และช่วงเวลาเขตแดน (t. อี Iskh.peremennaya ขอบเขต 1 และขอบเขต 2) ต้องเป็นชนิดข้อมูลเดียวกัน หากมีการทำงานร่วมกันระหว่างค่าเริ่มต้นและครั้งสุดท้ายของส่วนและตัวแปรอ้างอิงโปรแกรมอาจทำงานไม่ถูกต้องเพราะขอบเขตจะถูกเปลี่ยนไปตามประเภทของพารามิเตอร์ข้อมูลเบื้องต้น
- ประเภทของข้อมูลที่ควรจะเป็นของค่าพารามิเตอร์ต้องเป็นจำนวนเต็ม มันจะไม่แนะนำให้ใช้ชนิดที่แท้จริง
- เปลี่ยนค่าในวง iskh.peremennaya แรงเป็นที่พึงปรารถนา มิฉะนั้นผู้ใช้แทบจะไม่สามารถติดตามข้อผิดพลาดได้ปรากฏตัวขึ้น
- ซึ่งแตกต่างจากชนิดอื่น ๆ ของวงจรใน For ... กับ ... ทำหรือ สำหรับ ... downto ... ทำขั้นตอนที่ไม่สามารถเปลี่ยนแปลงได้ การตั้งค่าอื่นเกิน 1
เทอร์โบปาสคาล: วิธีการรับออกจากวง
มักจะมีปัญหาในการที่มีห่วงคือจ. สภาพเป็นจริงเสมอ ขั้นตอนการแบ่งช่วยให้ได้รับออกจากวงจรที่มีเงื่อนไข, postcondition พารามิเตอร์ อีงานของพวกเขาถูกยกเลิกก่อนเวลาอันควร
รอบกับพารามิเตอร์ในปาสคาล (การเขียนโปรแกรมที่เกี่ยวข้องกับ "นิรันดร์" จริงเงื่อนไข) สามารถหยุดโดยใช้ดำเนินการต่อ นี่คืองานที่มีการจัดระเบียบดังนี้ซ้ำปัจจุบันของต้นเสร็จสิ้นการดำเนินการควบคุมการส่งผ่านไปยังทีมต่อไป แต่ไม่ได้ออกจากวง
ขั้นตอนการออกจากการเป็นสิ่งที่จำเป็นในการสั่งซื้อเพื่อให้งานของบล็อกโดยเฉพาะอย่างยิ่งในรหัสโปรแกรม มันเกิดภายในขั้นตอน (ฟังก์ชั่น) และในเวลาเดียวกันประสิทธิภาพการทำงานของคนนี้ "ชิ้น" ถูกยกเลิกทันที ถ้าออกจากที่ตั้งอยู่ในหน่วยงานหลักแล้วก็จะหยุดทำงาน
ขั้นตอนการหยุดลดหลักการการดำเนินงานต่อไปนี้: โปรแกรมการทำงานเต็มรูปแบบปลาย
ตัวอย่างของงานที่จะตัดสินใจ
ผู้ใช้จะเป็นประโยชน์หลังจากที่ได้ศึกษาหัวข้อ "รอบกับพารามิเตอร์ในตัวอย่าง Pascal ครั้งแรกของการเรียนรู้และฝึกแล้วเขียนโค้ดด้วยตัวคุณเอง งานง่ายๆช่วยเขียนโปรแกรมในอนาคตที่จะเรียนรู้ทฤษฎีสู่การปฏิบัติแล้วใช้มันประสบความสำเร็จ On "รอบกับตัวเลือก" ตัวอย่างของปัญหาที่เกิดขึ้นกับการตัดสินใจที่คุณสามารถหาได้ง่ายและยาก ที่นี่ 3 งานซึ่งเกี่ยวข้องกับการทำงานและขั้นตอนวิธีการอธิบายและแสดงความคิดเห็นในการตัดสินใจทุกครั้ง
วัตถุประสงค์ 1
ได้รับอาร์เรย์สองมิติของจำนวนเต็มในช่วง [0..199] สุ่มเลือก พบจำนวนทั้งหมดตัวเลขสองหลักที่มีผลรวมของตัวเลขมีหลาย 2
อัลกอริทึมคือ:
- สร้างอาร์เรย์สองมิติ
- ตรวจสอบหมายเลขเพื่อให้สอดคล้องกับเงื่อนไขต่อไปนี้แต่ละ:
ก) ถ้า 9 ข) เลือกหมายเลขหลักที่สองโดยการหารโดย mod; ค) ที่จะวางลงเบอร์จัดสรรของพวกเขา; d) หารด้วยจำนวนเงินที่กำหนดไว้ mod 2; จ) ถ้าผลที่ได้จะมีค่าเท่ากับ 0, เคาน์เตอร์จะเพิ่มขึ้นโดยที่ 1 งานที่ 2 กำหนดอาร์เรย์หนึ่งมิติขององค์ประกอบจำนวนเต็ม พบจำนวนของตัวเลขในเชิงบวก อัลกอริทึมคือ: ข้อมูลในวงเล็บ {} ความคิดเห็น สาย 11 สามารถแสดงบนหน้าจออาร์เรย์สองวิธี: การที่จะออกจากช่องว่างระหว่างตัวเลขที่จะจัดสรรให้กับองค์ประกอบของจำนวนที่แน่นอนของเซลล์แต่ละ (ในกรณีนี้พวกเขา 5) ในบรรทัดที่ 12 เคาน์เตอร์ตัวแปรนอกจากนี้ยังสามารถเพิ่มขึ้นในสองวิธีทั้งค่าก่อนหน้านี้ที่จะเพิ่ม 1 หรือใช้ฟังก์ชั่นอิงค์มาตรฐาน งาน 3 มูลค่าตารางเมทริกซ์ หาจำนวนขององค์ประกอบในเชิงบวกที่อยู่บนเส้นทแยงมุมหลัก คำอธิบาย: อาร์เรย์ของตัวเลขหลักในแนวทแยงยื่นออกมาจากด้านบนซ้ายไปขวาล่าง คุณสมบัติพิเศษของมันก็คือความจริงที่ว่าแถวและคอลัมน์ดัชนีจะเหมือนกัน ดังนั้นหนึ่งรอบจัดพอที่จะย้ายแถวโดยไม่ต้อง busting องค์ประกอบที่เหลือ อัลกอริทึมคือ: ตามกฎโปรแกรมเมอร์เคารพตัวเองรู้หลายภาษา ยกตัวอย่างเช่นมันอาจจะเป็น C ++ เทอร์โบปาสคาลเดลฟี, Java, และอื่น ๆ . D. การเผชิญหน้าระหว่างสองของพวกเขาได้เด่นชัดใน 80 โอบอุ้ม (C และเทอร์โบปาสคาล) ในตอนท้ายของศตวรรษที่ยี่สิบเช่นการต่อสู้ก็สังเกตเห็นระหว่าง C ++ และ Java ในพื้นที่เสมือนในสามของการเขียนโปรแกรมภาษาโหลมีสามคู่ที่โดดเด่นที่สุดซึ่งฝ่ายค้านจะตีจิตใจที่ยิ่งใหญ่ที่สุดของโลกไซเบอร์: Algol 60 และ Fortran, Pascal, C, Java และ C ++ แน่นอนความรู้สึกเหล่านี้มีวิสัย แต่ในครั้งเดียวหรือหนึ่งในคู่อื่นเป็นผู้นำ เพราะนี่คือความต้องการของอุตสาหกรรมและความจำเป็นในผลิตภัณฑ์ซอฟต์แวร์โดยเฉพาะอย่างยิ่ง ใน 70 โอบอุ้ม "โลกที่ปกครอง" Fortran, ใน 80 - เทอร์โบปาสคาลใน 90 - c ++ แน่นอนไม่มีของพวกเขา "เสียชีวิต" แต่พวกเขาจะกลายเป็นผลิตภัณฑ์ซอฟต์แวร์ที่ซับซ้อน ในการศึกษาการเขียนโปรแกรมภาษาที่คุณอาจสังเกตเห็นว่ารูปแบบบางไวยากรณ์ที่คล้ายกัน ดังนั้นรอบกับพารามิเตอร์ใน C มีความคล้ายคลึงกับโครงสร้างที่คล้ายกันใน Pascal ยกเว้นสำหรับบางช่วงเวลา ที่น่าสนใจของนักพัฒนาเทอร์โบปาสคาล (Old World) ได้รับประโยชน์จากการพัฒนาของนักวิทยาศาสตร์ชาวอเมริกันในขณะที่ในโลกใหม่ที่มีการใช้งานผลของความพยายามวิจัยยุโรป ในยุโรปนักพัฒนาที่มีการสนับสนุนระดับสูงของความบริสุทธิ์และความเป็นปึกแผ่นของภาษาโปรแกรมและจิตใจของชาวอเมริกันมีแนวโน้มมากขึ้นต่อแนวโน้มการใช้แบบใหม่ในการเขียนโค้ด การเผชิญหน้าระหว่างสองภาษาการเขียนโปรแกรม: C และเทอร์โบปาสคาล
Similar articles
Trending Now