การเขียนโปรแกรมตัวดำเนินการแบบมีเงื่อนไขของอัลกอริธึมการแยกสาขา การเขียนโปรแกรมอัลกอริธึมแบบแยกสาขา ฟังก์ชันเงื่อนไขถ้า

หัวข้อบทเรียน : การเขียนโปรแกรมอัลกอริธึมการแยกสาขา ตัวดำเนินการแบบมีเงื่อนไข

หนังสือเรียน: Bosova L. L. สารสนเทศ: หนังสือเรียนชั้นประถมศึกษาปีที่ 8 - ม.: BINOM ห้องปฏิบัติการความรู้, 2557. – 160 น. : ป่วย.

ประเภทบทเรียน: บทเรียนการเรียนรู้เนื้อหาใหม่

วัตถุประสงค์ของบทเรียน :

    ทางการศึกษา : จัดกิจกรรมของนักเรียนเพื่อทำความคุ้นเคยกับไวยากรณ์ของตัวดำเนินการแบบมีเงื่อนไข (operatorถ้า- สร้างเงื่อนไขให้นักศึกษาพัฒนาความสามารถในการใช้งานผู้ปฏิบัติงานถ้าเมื่อเขียนโปรแกรม

    การพัฒนา : ช่วยเพิ่มความสนใจในเรื่อง; ส่งเสริมการพัฒนาการคิดอัลกอริทึมของนักเรียน ส่งเสริมพัฒนาการของการคิดเชิงตรรกะ ความสนใจทางปัญญา และความทรงจำของนักเรียน

    การเลี้ยงดู : ส่งเสริมให้เกิดความเป็นอิสระในการแก้ปัญหา ส่งเสริมความสามัคคีในทีมและการสร้างทัศนคติที่มีความเคารพต่อกัน

ก่อตั้งกิจกรรมการเรียนรู้สากล (UAL) :

    UUD ส่วนตัว :

    1. จินตนาการและจินตนาการเมื่อทำกิจกรรมการศึกษา

      ความปรารถนาที่จะทำกิจกรรมการศึกษา

    UUD ความรู้ความเข้าใจ :

    1. การกระทำและการดำเนินการเชิงตรรกะ

      การสร้างและการเปลี่ยนแปลงแบบจำลองและแผนภาพเพื่อแก้ไขปัญหา

    UUD การสื่อสาร :

    1. การกำหนดความคิดเห็นและจุดยืนของคุณเอง

    UUD ตามข้อบังคับ :

    1. การวางแผนการดำเนินการของคุณให้สอดคล้องกับงานและเงื่อนไขในการดำเนินการ

อุปกรณ์ : คอมพิวเตอร์ส่วนบุคคล(พีซี), โปรเจคเตอร์มัลติมีเดีย, หน้าจอ.

เครื่องมือซอฟต์แวร์ : การนำเสนอ “การเขียนโปรแกรมอัลกอริธึมการแยกสาขา ตัวดำเนินการแบบมีเงื่อนไข”

แผนการสอน

ความคืบหน้าของบทเรียน

1. ช่วงเวลาขององค์กร

การทักทาย การตรวจสอบความพร้อมของบทเรียน การจัดความสนใจของเด็กๆ

มีส่วนร่วมในจังหวะธุรกิจของบทเรียน

2. การอัพเดตความรู้

สวัสดีทุกคน! วันนี้เราจะมาศึกษาไวยากรณ์ของตัวดำเนินการตามเงื่อนไขในภาษากันปาสคาล.

เขียนวันที่วันนี้และหัวข้อของบทเรียนวันนี้: “การเขียนโปรแกรมอัลกอริธึมการแยกสาขา ตัวดำเนินการแบบมีเงื่อนไข”

ตอนนี้เรามาทำซ้ำเนื้อหาจากส่วน "อัลกอริทึม" และบทเรียนก่อนหน้า:

การสร้างอัลกอริทึมแบบใดที่เรียกว่าการแตกแขนง

คุณรู้รูปแบบการแตกสาขาอะไรบ้าง?

วาดบล็อกไดอะแกรมของรูปแบบการแตกแขนงแบบเต็มและแบบย่อ

วิธีการบันทึก ฟังก์ชันลอจิคัลและหรือไม่ใช่ในภาษาปาสคาล.

(ตอบคำถาม)

การแตกแขนงคือการออกแบบอัลกอริธึมซึ่งขึ้นอยู่กับผลลัพธ์ของการตรวจสอบเงื่อนไข ("ใช่" หรือ "ไม่ใช่") จะมีการเลือกลำดับการกระทำ (สาขา) หนึ่งในสองลำดับ

มีรูปแบบการแตกแขนงแบบเต็มและแบบย่อ

บล็อกไดอะแกรม:

และหรือไม่ใช่ตามลำดับ

3. การเรียนรู้เนื้อหาใหม่

ตอนนี้เรามาดูไวยากรณ์ของตัวดำเนินการสาขาในภาษากันปาสคาล- ขั้นแรก ฉันขอแนะนำให้คุณเตรียมตารางที่มีสองคอลัมน์ ติดป้ายกำกับคอลัมน์ของตารางว่า "ตัวดำเนินการตามเงื่อนไขแบบเต็ม" และ "ตัวดำเนินการตามเงื่อนไขแบบย่อ" ตอนนี้ในคอลัมน์ที่เหมาะสม ให้เขียนบล็อกไดอะแกรมของรูปแบบการแตกแขนงแบบเต็มและแบบย่อซึ่งแสดงไว้บนกระดาน

ด้านล่างเราจะเขียน มุมมองทั่วไปรูปแบบเต็มและแบบสั้นของตัวดำเนินการตามเงื่อนไข

แบบฟอร์มเต็มมีไวยากรณ์ดังต่อไปนี้:

ถ้า<условие>

แล้ว<оператор 1>

อื่น<оператор 2>;

ถ้าแล้วตามด้วยคำสั่งที่จะดำเนินการหากเงื่อนไขเป็นจริง จากนั้นก็มีการเขียน คำฟังก์ชั่น อื่นตามด้วยคำสั่งที่จะดำเนินการหากเงื่อนไขกลายเป็นเท็จ

จดบันทึกไว้ในสมุดบันทึกว่าอยู่หน้าคำฟังก์ชันอื่นเข้าสู่ระบบ ";" ไม่ได้ติดตั้ง

รูปแบบสั้นของคำสั่งแบบมีเงื่อนไขมีไวยากรณ์ดังต่อไปนี้:

ถ้า<условие>

แล้ว<оператор 1>;

คำฟังก์ชันจะถูกเขียนก่อนถ้าจากนั้น – เงื่อนไขบนความจริงซึ่งการดำเนินการของสาขาใดสาขาหนึ่งของตัวดำเนินการตามเงื่อนไขขึ้นอยู่กับ หลังจากเงื่อนไข จะมีการเขียนคำฟังก์ชันแล้วตามด้วยคำสั่งที่จะดำเนินการหากเงื่อนไขเป็นจริง

โปรดทราบว่าหากผลการทดสอบอยู่ในสภาพที่เป็นเท็จแล้ว ตัวดำเนินการแบบมีเงื่อนไขในรูปแบบสั้น ๆ มันจะถูกข้ามไปและโปรแกรมจะดำเนินต่อไปเพื่อดำเนินการคำสั่งที่ตามมา สำหรับรูปแบบเต็มของตัวดำเนินการแบบมีเงื่อนไข คำสั่งนี้ไม่เป็นความจริง - มันจะถูกดำเนินการเสมอ (ตัวดำเนินการของหนึ่งในสาขาของตัวดำเนินการแบบมีเงื่อนไขจะถูกดำเนินการ)

โปรดทราบว่าเงื่อนไขในคำสั่งแบบมีเงื่อนไขเป็นแบบง่าย (เขียนโดยใช้ตัวดำเนินการเชิงสัมพันธ์) หรือซับซ้อน (เขียนโดยใช้ การดำเนินการเชิงตรรกะ) การแสดงออกเชิงตรรกะ

(จัดโต๊ะ)

ถ้า <условие>

แล้ว <оператор 1>

อื่น <оператор 2>;

ถ้า <условие>

แล้ว <оператор 1>;

ก่อนอื่นเข้าสู่ระบบ ";" ไม่ได้ติดตั้ง!

(เขียนลงในสมุดบันทึก)

เงื่อนไขในคำสั่งแบบมีเงื่อนไขคือนิพจน์เชิงตรรกะแบบง่าย (เขียนโดยใช้การดำเนินการเชิงสัมพันธ์) หรือซับซ้อน (เขียนโดยใช้การดำเนินการเชิงตรรกะ)

4. รวบรวมสิ่งที่ได้เรียนรู้มา

ลองพิจารณาปัญหาต่อไปนี้ (จดเงื่อนไขลงในสมุดบันทึกของคุณ): ผู้ใช้ป้อนสาม ตัวเลขที่แตกต่างกันซึ่งคุณต้องค้นหาค่าขั้นต่ำและแสดงบนหน้าจอ

เรามาลองเปลี่ยนอัลกอริธึมก่อนหน้าสำหรับการแก้ปัญหานี้ เพื่อที่เราจะได้ใช้ลูปที่มีเงื่อนไขภายหลัง ขณะที่ฉันกำลังพิมพ์ปัญหาในตัวแก้ไข ให้จดวิธีแก้ไขปัญหาลงในสมุดบันทึกของคุณ -ฉันร่วมกับนักเรียนในการแก้ปัญหาบนคอมพิวเตอร์ใน IDE และในขณะเดียวกันก็มีการฉายวิธีแก้ปัญหาบนหน้าจอ ].

รายการคำถามที่เป็นไปได้สำหรับการอภิปรายเกี่ยวกับงาน

1) เราต้องอธิบายตัวแปรกี่ตัว?

2) วิธีค้นหาองค์ประกอบขั้นต่ำตามลำดับ องค์ประกอบที่รู้จัก?

ลองมาดูโค้ดต่อไปนี้:

ก:=11;

b:=a div 3;

ก:=ก-ข;

ถ้า a*b mod 2 = 0

จากนั้น writeln(a*b)

อย่างอื่น writeln(b-a);

ค่าของตัวแปร a และ b หลังจากดำเนินการลำดับคำสั่งนี้จะเป็นเท่าใด? สิ่งที่จะปรากฏบนหน้าจอ?

ตอนนี้ไปที่คอมพิวเตอร์ของคุณและทำงานต่อไปนี้ให้เสร็จสิ้นด้วยตัวเอง

1) ค้นหาค่าของฟังก์ชัน y(x) และแสดงบนหน้าจอที่แม่นยำถึงหนึ่งในพัน: . ความหมายxเข้ามาจากแป้นพิมพ์

2) เขียนโปรแกรมที่กำหนดว่าจุด A(x, ) ของพื้นที่แรเงา รวมถึงขอบเขตของพื้นที่ด้วย:

จดเงื่อนไขลงในสมุดบันทึกของคุณ

เข้าร่วมการอภิปรายปัญหาและจดวิธีแก้ไขลงในสมุดบันทึก

โปรแกรมขั้นต่ำ;

var

a, b, c, min: จริง;

เริ่ม

อ่าน(ก, ข, ค);

นาที:=a;

ถ้าข< min then min:=b;

ถ้าค< min then min:=c;

เขียน(" นาที -> ", นาที);

จบ.

(ตอบคำถาม)

a = 8, b = 3 หมายเลข 24 จะแสดงบนหน้าจอ

แก้ไขปัญหาบนคอมพิวเตอร์ได้อย่างอิสระ

รหัสโปรแกรมสำหรับงานที่ 1:

โปรแกรมฟังก์ชั่น;

var

x, y: จริง;

เริ่ม

อ่าน(x);

ถ้า x<= 5 then

y:=x*x*x+2*x*x-sqrt(5-x)

อื่น

y:=sqrt((x+1)/(3*x*x*x-x));

writeln("y(", x, ") = ", y:0:3);

จบ.

รหัสโปรแกรมสำหรับงานที่ 2:

จุดโปรแกรม;

var

x, y: จริง;

เริ่ม

readln(x, y);

ถ้า (x >= -1) และ (x<= 3) and (y >= -2) และ (y<= 4) then

เขียน("ประเด็นเป็นของภูมิภาค")

อื่น

เขียน("ประเด็นนี้ไม่ได้อยู่ในภูมิภาค");

จบ.

5. สรุป

แล้วคุณได้เรียนรู้อะไรระหว่างบทเรียนวันนี้?

เงื่อนไขในคำสั่งแบบมีเงื่อนไขคืออะไร?

เราได้เรียนรู้ไวยากรณ์ของประโยคเงื่อนไขแบบเต็มและแบบสั้น

นิพจน์เชิงตรรกะที่เรียบง่ายหรือซับซ้อน

6. การบ้าน

มาตรา 3.5

งาน:

1) ให้ความยาวสามส่วน a, b, c ตรวจสอบว่ามีสามเหลี่ยมที่มีด้านดังกล่าวอยู่หรือไม่ หากใช่ ให้แสดงข้อความ “มีสามเหลี่ยมอยู่!” ค้นหาพื้นที่แล้วแสดงในบรรทัดถัดไป ถ้าไม่เช่นนั้น ให้แสดงข้อความ “ไม่มีรูปสามเหลี่ยม”

2) ปัญหาหมายเลข 14 (ตำราเรียน 2555 หน้า 205)

สนามกระดานหมากรุกถูกกำหนดโดยตัวเลขธรรมชาติคู่หนึ่งซึ่งแต่ละจำนวนไม่เกิน 8 เขียนโปรแกรมโดยใช้พิกัดฟิลด์ที่ป้อน (เค, พี) และ (, n) กำหนดว่าฟิลด์เหล่านี้เป็นฟิลด์ที่มีสีเดียวกันหรือไม่

ตัวอย่างข้อมูลอินพุต

ตัวอย่างเอาต์พุต

2 2

3 3

ทุ่งนาที่มีสีเดียวกัน

2 3

3 3

ทุ่งนาที่มีสีต่างกัน

2 7

5 4

ทุ่งนาที่มีสีเดียวกัน

บันทึกไว้ในสมุดบันทึกสุขภาพ

แตกแขนงออกไปเป็นอัลกอริทึมที่ลำดับและจำนวนคำสั่งที่ดำเนินการขึ้นอยู่กับการปฏิบัติตามหรือไม่ปฏิบัติตามเงื่อนไขบางประการ อัลกอริธึมการแยกสาขาใช้คำสั่ง การแตกแขนงและ เลือกจากตัวเลือกจำนวนมาก- การแสดงคำสั่งแยกสาขาแบบกราฟิกจะแสดงในรูปที่ 3.1

ข้าว.3.1 คำสั่งการแยกสาขา: ก) – ในรูปแบบเต็ม; b) , c) – ในรูปแบบย่อ

หากต้องการตั้งโปรแกรมสาขา ให้ใช้โอเปอเรเตอร์ ถ้าและสำหรับการเลือกโปรแกรม - ตัวดำเนินการ สวิตช์และ หยุดพัก.

3.2 ผู้ดำเนินการควบคุมกระบวนการคำนวณแบบแยกสาขา

3.2.1 นิพจน์เชิงตรรกะ

นิพจน์บูลีน(เงื่อนไข) - นิพจน์ที่มี สัญญาณการดำเนินงานเชิงสัมพันธ์และ/หรือ สัญญาณการทำงานเชิงตรรกะ- ค่าของนิพจน์เชิงตรรกะสามารถเป็น 1 ได้เท่านั้นหากนิพจน์เชิงตรรกะเป็น TRUE หรือ 0 หากนิพจน์เชิงตรรกะเป็น FALSE

การดำเนินงานสัมพันธ์เป็นไบนารีและถูกกำหนดดังนี้ (แสดงรายการตามลำดับความสำคัญที่ลดลง):

< (น้อย);

<= (น้อยกว่าหรือเท่ากับ);

> (มากกว่า);

>= (มากกว่าหรือเท่ากับ);

== (เท่ากับ);

!= (ไม่เท่ากัน)

ตัวอย่าง:=8.1,ง<>(ห้องน้ำ)

การดำเนินการเชิงตรรกะ- นี่คือการดำเนินการ:

&& - ตรรกะและ (การดำเนินการไบนารี)

- - ตรรกะหรือ (การดำเนินการไบนารี)

! - ตรรกะไม่ (การดำเนินการแบบเอกภาค)

การดำเนินการเชิงตรรกะมีลำดับความสำคัญต่ำกว่าการดำเนินการเชิงสัมพันธ์ ผลลัพธ์ของการดำเนินการเชิงตรรกะแสดงไว้ในตาราง 3.1-3.3

ตารางที่ 3.1 ตารางที่ 3.2 ตารางที่ 3.3

ตัวอย่างเช่น นิพจน์เชิงตรรกะ a>3 && c<7 при a=5, c=6 будет иметь значение ИСТИНА, а при a=3, c=8 – ЛОЖЬ; логическое выражение a>3 || ค<7 при a=5, c=6 будет иметь значение ИСТИНА, при a=2, c=6 – ЛОЖЬ; при a=7 логическое выражение!a>2 จะเป็นเท็จ

เมื่อเขียนนิพจน์เชิงตรรกะ คุณควรคำนึงถึงลำดับความสำคัญของการดำเนินการด้วย

ตัวอย่างการเขียนนิพจน์เชิงตรรกะแสดงไว้ในตารางที่ 3.4

ตารางที่ 3.4

ตารางนิพจน์เชิงตรรกะ

เงื่อนไข

นิพจน์บูลีน

x>=ก && x<=b

x

หรือ

x>=ก && x<=b || x>=ค && x<=d

ต้องมีตัวเลข x, y อย่างน้อยหนึ่งตัวที่เป็นบวก

x>0 || ใช่>0

มีตัวเลข x, y เพียงตัวเดียวเท่านั้นที่เป็นค่าบวก

(x>0 && !y>0) || (y>0 && !x>0)

ไม่มีเลขใด x, y ที่เป็นเลขคู่

x % 2 !=0 && ปี % 2 !=0

จุด (x,y) อยู่ในพื้นที่แรเงา

x>=0 && x<=a && y>=0 && ป<=b/a*x


มุมมองทั่วไปของโอเปอเรเตอร์แบบมีเงื่อนไข else ก่อนอื่นจะมีเครื่องหมาย “;” ไม่ได้ติดตั้ง รูปแบบเต็มของตัวดำเนินการแบบมีเงื่อนไข: ifthen มิฉะนั้น หากเป็นเช่นนั้น รูปแบบย่อของตัวดำเนินการแบบมีเงื่อนไข: ifthen if แล้ว การดำเนินการเชิงสัมพันธ์ การดำเนินการเชิงสัมพันธ์ การดำเนินการเชิงตรรกะ การดำเนินการเชิงตรรกะ เงื่อนไขที่ซับซ้อนอย่างง่าย - นิพจน์เชิงตรรกะ!


>>); readln (a, b); เขียน ("ป้อน x>>"); readln (x); if (x>=a) และ (x=a) และ (x" title=" โปรแกรมคำสั่งแบบมีเงื่อนไข n_9; var x, a, b: real;"Определение принадлежности точки отрезку"); write ("Введите а, b>>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x" class="link_thumb"> 4 !}โปรแกรมคำสั่งแบบมีเงื่อนไข n_9; var x, a, b: จริง; เริ่มต้น writeln ("การกำหนดว่าจุดนั้นเป็นของกลุ่มหรือไม่"); write("กรอก a, b>>"); readln(ก,ข); write("ใส่ x>>"); อ่าน(x); ถ้า (x>=a) และ (x=a) และ (x >"); readln (a, b); เขียน ("ป้อน x>>"); readln (x); ถ้า (x>=a) และ (x=a) และ (x"> >"); readln ( ก, ข); เขียน ("ป้อน x>>"); ถ้า (x>=a) และ (x">>"); ("ป้อน x>>"); a) และ (x=a) และ (x" title="โปรแกรมคำสั่งแบบมีเงื่อนไข n_9; var x, a, b: real; beginning writeln("Определение принадлежности точки отрезку"); write ("Введите а, b>>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x"> !}
>>); readln (a, b); เขียน ("ป้อน x>>"); readln (x); if (x>=a) และ (x=a) และ (x" title=" โปรแกรมคำสั่งแบบมีเงื่อนไข n_9; var x, a, b: real;"Определение принадлежности точки отрезку"); write ("Введите а, b>>"); readln (a, b); write ("Введите x>>"); readln (x); if (x>=a) and (x=a) and (x"> !}


>"); readln (a, b, c); y:=a; if (b>y) แล้วก็ y:=b; if (c>y) แล้วก็ y:=c; writeln ("y=", y ) สิ้นสุด " title=" รูปแบบย่อของโปรแกรมคำสั่งแบบมีเงื่อนไข n_10; var y, a, b, c: integer; beginning writeln ("Нахождение наибольшей из трёх величин"); write ("Введите а, b, с>>"); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ("y=", y) end. " class="link_thumb"> 5 !}รูปแบบย่อของโปรแกรมคำสั่งแบบมีเงื่อนไข n_10; var y, a, b, c: จำนวนเต็ม; start writeln("การหาปริมาณที่ใหญ่ที่สุดในสามปริมาณ"); write("กรอก a, b, c>>"); readln(ก, ข, ค); ใช่:=a; ถ้า (b>y) แล้ว y:=b; ถ้า (c>y) แล้ว y:=c; writeln("y=", y) สิ้นสุด Y:=A B>ใช่ Y:=B Y:=C C>ใช่ ใช่ ใช่ ไม่ใช่ >"); readln (a, b, c); y:=a; if (b>y) แล้วก็ y:=b; if (c>y) แล้วก็ y:=c; writeln ("y=", y ) สิ้นสุด "> >"); readln (a, b, c); ถ้า (b>y) แล้ว y:=b; ถ้า (c>y) แล้ว y:=c; Y:=A B>Y Y:=B Y:=C C>Y danet"> >"); readln (a, b, c); y:=a; if (b>y) แล้ว y:=b; c>y) จากนั้น y:=c; writeln ("y=", y) end. " title=" รูปแบบย่อของโปรแกรมคำสั่งแบบมีเงื่อนไข n_10; var y, a, b , c: integer; beginning เขียน ("Нахождение наибольшей из трёх величин"); write ("Введите а, b, с>>"); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ("y=", y) end. "> !}
>"); readln (a, b, c); y:=a; if (b>y) แล้วก็ y:=b; if (c>y) แล้วก็ y:=c; writeln ("y=", y ) สิ้นสุด " title=" รูปแบบย่อของโปรแกรมคำสั่งแบบมีเงื่อนไข n_10; var y, a, b, c: integer; beginning writeln ("Нахождение наибольшей из трёх величин"); write ("Введите а, b, с>>"); readln (a, b, c); y:=a; if (b>y) then y:=b; if (c>y) then y:=c; writeln ("y=", y) end. "> !}


คำสั่งผสม thenelse ในคำสั่งแบบมีเงื่อนไข สามารถใช้คำสั่งได้เพียง 1 คำสั่งเท่านั้นหลังจากทั้ง then และอย่างอื่น ถ้าอย่างนั้น ถ้าในคำสั่งแบบมีเงื่อนไขหลังจากนั้นหรือหลังจากนั้น คุณต้องดำเนินการหลาย ๆ คำสั่ง ให้ใช้ตัวดำเนินการแบบผสม - การสร้างแบบฟอร์ม: beginning end


0 ใช่ เริ่มป้อนค่าสัมประสิทธิ์ a, b, c d:=b*b-4*a*c d 0 ใช่ เริ่มป้อนค่าสัมประสิทธิ์ a, b, c d:=b*b-4*a*c d 7บล็อกไดอะแกรมของโซลูชัน CVUR ข้อสรุปสุดท้าย “รากของสมการ: x1=”, x1, “x2=”, x2 x1:=(-b+sqrt(d))/2/a d>0 ใช่ เริ่มต้น ป้อนค่าสัมประสิทธิ์ a, b, c d :=b*b-4*a*c d 0 ใช่ เริ่มป้อนค่าสัมประสิทธิ์ a, b, c d:=b*b-4*a*c d 0 ใช่ เริ่มป้อนค่าสัมประสิทธิ์ a, b, c d:=b*b -4* a*c d 0 ใช่ เริ่มป้อนค่าสัมประสิทธิ์ a, b, c d:=b*b-4*a*c d 0 ใช่ เริ่มป้อนค่าสัมประสิทธิ์ a, b, c d:=b*b-4*a*c d title= "(! LANG: บล็อกไดอะแกรมของโซลูชัน CVUR เอาต์พุตสุดท้าย “รากของสมการ: x1=”, x1, “x2=”, x2 x1:=(-b+sqrt(d))/2/a d>0 ใช่ เริ่มต้น ป้อนค่าสัมประสิทธิ์ a, b , c d:=b*b-4*a*c d


เริ่มต้น x1:=(-b+sqrt(d))/2/a; x2:=(-b-sqrt(d))/2/a; เขียน("Корни уравнения:"); writeln ("x1=", x1:9:3); writeln ("x2=", x2:9:3) end; begin x1:=(-b+sqrt(d))/2/a; x2:=(-b-sqrt(d))/2/a; writeln ("Корни уравнения:"); writeln ("x1=", x1:9:3); writeln ("x2=", x2:9:3) end; begin x:=-b/2/a; writeln ("Корень уравнения x=", x:9:3) end; begin x:=-b/2/a; writeln ("Корень уравнения x=", x:9:3) end; program n_11; var a, b, c: real; var d: real; var x, x1, x2: real; begin writeln ("Решение квадратного уравнения"); write ("Введите коэффициенты a, b, c >>"); readln (a, b, c); d:=b*b-4*a*c; if d0 then end. !} >"); readln (a, b, c); d:=b*b-4*a*c; ถ้า d0 ก็จบ">




>"); readln (a, b); ถ้า a0 ให้เริ่มต้น x:=-b/a; writeln ("รากของสมการ x=", x:9:3) จบอย่างอื่นถ้า b0 แล้วเขียน" title=" (! LANG:Solution สมการเชิงเส้นโปรแกรม n_12; var a, b, x: จริง; start writeln("การแก้สมการเชิงเส้น"); write("ระบุค่าสัมประสิทธิ์ a, b>>"); readln(ก, ข); ถ้า a0 ให้เริ่มต้น x:=-b/a; writeln ("รากของสมการ x=", x:9:3) ลงท้ายอย่างอื่นถ้า b0 แล้วเขียน" class="link_thumb"> 10ผลเฉลยของโปรแกรมสมการเชิงเส้น n_12; var a, b, x: จริง; start writeln("การแก้สมการเชิงเส้น"); write("ระบุค่าสัมประสิทธิ์ a, b>>"); readln(ก, ข); ถ้า a0 ให้เริ่มต้น x:=-b/a; writeln ("รากของสมการ x=", x:9:3) ลงท้ายอย่างอื่นถ้า b0 แล้ว writeln ("ไม่มีราก") อย่างอื่น writeln ("x คือตัวเลขใดๆ"); จบ. ไม่มีราก รายการข้อมูล a, b, x - สิ่งของ a, b a0 x:=-b/a b0 ตัวเลขใดๆ ไม่ ใช่ ไม่ >"); readln (a, b); ถ้า a0 ให้เริ่มต้น x:=-b/a; writeln ("รากของสมการ x=", x:9:3) จบอย่างอื่นถ้า b0 แล้วเขียน wri"> >") ; readln (a, b); ถ้า a0 ให้เริ่มต้น x:=-b/a; writeln ("รากของสมการ x=", x:9:3) จบอย่างอื่นถ้า b0 แล้ว writeln ("ไม่มีราก") อย่างอื่นเขียน (" x – ตัวเลขใดๆ"); สิ้นสุด ไม่มีราก รายการข้อมูล a, b, x - สิ่ง a, b a0 x:=-b/a b0 ตัวเลขใดๆ ไม่ ใช่ ไม่ใช่">"); b); ถ้า a0 เริ่มต้น x:=-b/a; writeln ("รากของสมการ x=", x:9:3) จบอย่างอื่นถ้า b0 แล้ว wri" title="การแก้สมการเชิงเส้น โปรแกรม n_12; var a, b, x: จริง;"Решение линейного уравнения"); write ("Введите коэффициенты a, b>>"); readln (a, b); if a0 then begin x:=-b/a; writeln ("Корень уравнения x=", x:9:3) end else if b0 then wri"> !}
>"); readln (a, b); ถ้า a0 ให้เริ่มต้น x:=-b/a; writeln ("รากของสมการ x=", x:9:3) จบอย่างอื่นถ้า b0 แล้วเขียน" title=" (! LANG:การแก้โปรแกรมสมการเชิงเส้น n_12; var a, b, x: real; beginning writeln ("Решение линейного уравнения"); write ("Введите коэффициенты a, b>>"); readln (a, b); if a0 then begin x:=-b/a; writeln ("Корень уравнения x=", x:9:3) end else if b0 then wri"> !}


สิ่งที่สำคัญที่สุดเมื่อเขียนอัลกอริธึมการแยกสาขาใน Pascal ตัวดำเนินการแบบมีเงื่อนไขจะถูกใช้: หากเป็นอย่างอื่น ในการเขียนสาขาที่ไม่สมบูรณ์จะใช้ตัวดำเนินการแบบมีเงื่อนไขที่สั้นลง: หากเป็นเช่นนั้น หากภายใต้เงื่อนไขบางประการจำเป็นต้องดำเนินการตัวดำเนินการตามลำดับบางอย่าง จากนั้นพวกมันจะรวมกันเป็นตัวดำเนินการแบบผสมตัวเดียว ซึ่งมีลักษณะดังนี้: beginning end


>3, 4 ประเด็นแรก" title="คำถามและงาน การแตกสาขาที่สมบูรณ์และไม่สมบูรณ์ที่เขียนด้วยภาษา Pascal เป็นอย่างไร? ลำดับของอักขระเป็นตัวดำเนินการแบบมีเงื่อนไขหรือไม่ a) ถ้า x=y แล้ว x:=0; y:=0 อย่างอื่นเขียน (z) c) ถ้า xb แล้ว d:=2; ถ้า a1, 2 พิกัดของจุดที่ 2>>3, 4 จุดที่หนึ่ง" class="link_thumb"> 12 !} คำถามและงาน การแตกสาขาที่สมบูรณ์และไม่สมบูรณ์เขียนด้วยภาษา Pascal อย่างไร ตัวดำเนินการแบบมีเงื่อนไขเป็นลำดับของอักขระหรือไม่? ก) ถ้า x=y แล้ว x:=0; y:=0 อย่างอื่นเขียน (z) c) ถ้า xb แล้ว d:=2; ถ้า a1, 2 พิกัดของจุดที่ 2>>3, 4 จุดแรกอยู่ใกล้กว่า ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต a b c>> 1 2 1 ไม่มี a b c>> 2 2 2 a b c ด้านเท่ากันหมด>> หน้าจั่ว a b c>> 3 4 5 Scalene ให้เลขธรรมชาติ 3 จำนวน เขียนโปรแกรมเพื่อพิจารณาว่าสามเหลี่ยมที่มีความยาวด้านเหล่านี้มีอยู่จริงหรือไม่ หากมีสามเหลี่ยมดังกล่าวอยู่ ให้กำหนดประเภทของมัน (ด้านเท่ากันหมด, หน้าจั่ว, ด้านไม่เท่า) มีข้อมูลเกี่ยวกับจำนวนปีเต็มของผู้ชนะ Spartakiad สามคน เขียนโปรแกรมเลือกและแสดงอายุของผู้ชนะที่อายุน้อยที่สุด ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต k, 1>>-1 5 xa, ya >>1 2 จุดอยู่ใต้เส้น k, 1>>-1 5 xa, ya >>1 10 จุดอยู่เหนือเส้น k, 1>>-1 5 xa, ya >>1 4 จุดอยู่บนเส้น เขียนโปรแกรมเพื่อพิจารณาว่าจุด A(xa, ya) อยู่หรือไม่: a) บนเส้นตรง y = kx + 1 เหนือจุดนั้น หรือต่ำกว่านั้น b) บนวงกลม x 2 + y 2 = r 2 ด้านบนหรือด้านล่าง พัฒนาตัวอย่างข้อมูลอินพุตและข้อมูลเอาต์พุตที่เกี่ยวข้องด้วยตนเอง ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต x >> 5 y >> 6 x = 5 y = 6 x >> 6 y >> 5 x = 5 y = 6 เขียนโปรแกรมที่แลกเปลี่ยนค่าของตัวแปร x และ y ถ้า x มากกว่า y กำหนดคำสั่งแบบมีเงื่อนไข: ถ้า a5 แล้ว c:=2 มิฉะนั้น c:=3 ตัวแปร a มีค่าอะไร หากเป็นผลจากการดำเนินการคำสั่งแบบมีเงื่อนไข ตัวแปร c ถูกกำหนดให้เป็นค่า 3 ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต -5y = - 1 0y = 0 5y = 1 เขียนโปรแกรมคำนวณค่าฟังก์ชัน: -1 สำหรับ x 0 y = เขียนโปรแกรมแก้ปัญหา เป็นที่ทราบกันว่าเดือนมกราคม วันที่ 31 พ.ศ. 2554 ตรงกับวันจันทร์ ควรกำหนดค่าใดให้กับตัวแปรตัวอักษร y ในอัลกอริทึมที่กำหนดวันในสัปดาห์สำหรับตัวเลขใด ๆ (chislo) ของเดือนมกราคม 2554 chislo:= chislo mod 7 ถ้า chislo=3 แล้ว y:="... ถ้า chislo=4 แล้ว y:="... ถ้า chislo=5 แล้ว y:="... ถ้า chislo=6 แล้ว y:= "... ถ้า chislo=0 แล้ว y:="... ถ้า chislo=1 แล้ว y:="... ถ้า chislo=2 แล้ว y:="... ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต พิกัดของ สนามที่ 1 >> 2 2 พิกัดของสนามที่ 2 >> 3 3 สนามที่มีสีเดียวกัน พิกัดของสนามที่ 1 >> 2 3 พิกัดของสนามที่ 2 >> 3 3 สนามที่มีสีต่างกัน พิกัดของสนามที่ 1 >> 2 7 พิกัดของสนามที่ 2 >> 5 4 สนามที่มีสีเดียวกัน สนามกระดานหมากรุกถูกกำหนดโดยตัวเลขธรรมชาติคู่หนึ่งซึ่งแต่ละจำนวนต้องไม่เกิน 8 เขียนโปรแกรมโดยอาศัยพิกัดที่ป้อนของสองฟิลด์ (k, l) และ (m, n) เพื่อกำหนดว่าฟิลด์เหล่านี้เป็นฟิลด์ที่มีสีเดียวกันหรือไม่ เขียนโปรแกรมโดยให้ผู้ใช้กรอกจำนวนเต็ม a ถึง 100 (a คือตัวเลขสุ่มที่น้อยกว่า 100) คำตอบของผู้ใช้ได้รับการตรวจสอบและแสดงความคิดเห็น >3, 4 จุดแรก"> >3, 4 จุดแรกอยู่ใกล้กว่า ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต a b c>> 1 2 1ไม่มี a b c>> 2 2 2 ด้านเท่ากันหมด a b c>> 20 20 30หน้าจั่ว a b c>> 3 4 5 มีการกำหนดจำนวนธรรมชาติ 3 จำนวนให้เขียนโปรแกรมเพื่อพิจารณาว่ามีรูปสามเหลี่ยมที่มีความยาวด้านดังกล่าวหรือไม่ ของผู้ชนะทั้งสามคนของ Spartakiad เขียนโปรแกรมที่เลือกและแสดงอายุของผู้ชนะที่อายุน้อยที่สุด เส้น k, 1>>-1 5 xa, ya >>1 10 จุดอยู่เหนือเส้น k, 1>>- 1 5 xa, ya >>1 4 จุดอยู่บนเส้น เขียนโปรแกรมเพื่อพิจารณาว่า จุด A(xa, ya) อยู่: a) บนเส้นตรง y = kx + 1 ด้านบนหรือด้านล่าง b) บนวงกลม x 2; + y 2 = r 2 พัฒนาตัวอย่างอินพุต data และข้อมูลเอาต์พุตที่สอดคล้องกันด้วยตัวคุณเอง ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต x >> 5 y >> 6 x = 5 y = 6 x >> 6 y >> 5 x = 5 y = 6 เขียนโปรแกรมที่แลกเปลี่ยนค่าของตัวแปร x และ y ถ้า x มากกว่า y กำหนดคำสั่งแบบมีเงื่อนไข: ถ้า a5 แล้ว c:=2 มิฉะนั้น c:=3 ตัวแปร a มีค่าอะไร หากเป็นผลจากการดำเนินการคำสั่งแบบมีเงื่อนไข ตัวแปร c ถูกกำหนดให้เป็นค่า 3 ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต -5y = - 1 0y = 0 5y = 1 เขียนโปรแกรมคำนวณค่าฟังก์ชัน: -1 สำหรับ x 0 y = เขียนโปรแกรมแก้ปัญหา เป็นที่ทราบกันว่าเดือนมกราคม วันที่ 31 พ.ศ. 2554 ตรงกับวันจันทร์ ควรกำหนดค่าใดให้กับตัวแปรตัวอักษร y ในอัลกอริทึมที่กำหนดวันในสัปดาห์สำหรับตัวเลขใด ๆ (chislo) ของเดือนมกราคม 2554 chislo:= chislo mod 7 ถ้า chislo=3 แล้ว y:="... ถ้า chislo=4 แล้ว y:="... ถ้า chislo=5 แล้ว y:="... ถ้า chislo=6 แล้ว y:= "... ถ้า chislo=0 แล้ว y:="... ถ้า chislo=1 แล้ว y:="... ถ้า chislo=2 แล้ว y:="... ตัวอย่างข้อมูลอินพุต ตัวอย่างข้อมูลเอาต์พุต พิกัดของ สนามที่ 1 >> 2 2 พิกัดของสนามที่ 2 >> 3 3 สนามที่มีสีเดียวกัน พิกัดของสนามที่ 1 >> 2 3 พิกัดของสนามที่ 2 >> 3 3 สนามที่มีสีต่างกัน พิกัดของสนามที่ 1 >> 2 7 พิกัดของฟิลด์ที่ 2 >> 5 4 ฟิลด์ที่มีสีเดียวกัน สนามกระดานหมากรุกถูกกำหนดโดยคู่ของตัวเลขธรรมชาติซึ่งแต่ละค่าไม่เกิน 8 เขียนโปรแกรมโดยยึดตามพิกัดที่ป้อนของสองฟิลด์ (k, l) และ (m, n) กำหนดว่าฟิลด์เหล่านี้เป็นฟิลด์ที่มีสีเดียวกันหรือไม่ ให้เขียนโปรแกรมโดยให้ผู้ใช้เติมเลขจำนวนหนึ่งให้เป็น 100 จำนวนเต็ม a (a คือตัวเลขสุ่มที่น้อยกว่า 100) คำตอบของผู้ใช้จะถูกตรวจสอบและแสดงความคิดเห็น"> >3, 4 First point" title="Questions and jobs การแตกสาขาที่สมบูรณ์และไม่สมบูรณ์เขียนด้วยภาษา Pascal อย่างไร ลำดับของอักขระเป็นตัวดำเนินการตามเงื่อนไขหรือไม่ a) ถ้า x =y แล้ว x :=0; y:=0 อย่างอื่นเขียน (z) c) ถ้า xb แล้ว d:=2; ถ้า a1, 2 พิกัดของจุดที่ 2>>3, 4 จุดเริ่มต้น"> title="คำถามและงาน การแตกสาขาที่สมบูรณ์และไม่สมบูรณ์เขียนด้วยภาษา Pascal อย่างไร ตัวดำเนินการแบบมีเงื่อนไขเป็นลำดับของอักขระหรือไม่? ก) ถ้า x=y แล้ว x:=0; y:=0 อย่างอื่นเขียน (z) c) ถ้า xb แล้ว d:=2; ถ้า a1, 2 พิกัดของจุดที่ 2>>3, 4 จุดที่หนึ่ง"> !}



การพัฒนาระเบียบวิธีของบทเรียน

หัวข้อบทเรียน: การเขียนโปรแกรมอัลกอริธึมการแยกสาขา ตัวดำเนินการแบบมีเงื่อนไข

แนวคิดบทเรียน:

การเรียนวิทยาการคอมพิวเตอร์ที่โรงเรียนช่วยให้คุณสามารถระบุโลกแห่งแบบจำลองและสัญญาณกับโลกแห่งปัญหาที่แท้จริงเพื่อค้นหาแนวทางแก้ไข

วัตถุประสงค์ของบทเรียน:

ทำความคุ้นเคยกับอัลกอริธึมการแบรนช์และตัวดำเนินการแบบมีเงื่อนไขที่ใช้อัลกอริธึมการแบรนช์ในภาษาโปรแกรม Pascal

งาน:

    การฝึกอบรมกิจกรรมภาคปฏิบัติอิสระ

    การเลือกโซลูชั่นที่มีประสิทธิภาพ

    การพัฒนาทักษะการทำงานเป็นทีม

    การพัฒนาทักษะการวิเคราะห์ตนเองและความนับถือตนเอง

ผลลัพธ์ที่วางแผนไว้:

    เรื่อง

ทำความรู้จักกับการแยกสาขาและตัวดำเนินการเชิงตรรกะ

    เมตาหัวข้อ

    1. กฎระเบียบ:

    กำหนดเป้าหมายการรับรู้อย่างอิสระ

    วางแผนการดำเนินการตามเป้าหมายที่เลือก

    ทำนายผลงานของคุณ

    สามารถสังเกตและวิเคราะห์กิจกรรมการศึกษาและการรับรู้ของตนเองและกิจกรรมของนักเรียนคนอื่น ๆ ในกระบวนการตรวจสอบตนเองและร่วมกัน

    ประเมินผลลัพธ์ที่ได้รับ

    1. การสื่อสาร:

    ดำเนินกิจกรรมร่วมกันในกลุ่ม

    สามารถสร้างประโยคคำพูดได้

    ถามคำถามเพื่อรับข้อมูลที่จำเป็น

2.3 ความรู้ความเข้าใจ :

    แต่งหน้า แบบจำลองทางคณิตศาสตร์ขึ้นอยู่กับสถานการณ์ในชีวิตจริง

    เน้นข้อมูลที่มีนัยสำคัญในการแก้ปัญหาและซ้ำซ้อน

    ทำความคุ้นเคยกับอัลกอริธึมการแยกสาขา

    ศึกษาการบันทึกอัลกอริธึมการแยกสาขาด้วยวาจาและการใช้ผังงาน

    ทำความคุ้นเคยกับตัวดำเนินการแบบมีเงื่อนไขที่ใช้อัลกอริธึมการแยกสาขา

    เพื่อรวมผลลัพธ์ นักเรียนจะต้องสร้างอัลกอริทึมและคำสั่งแบบมีเงื่อนไขสำหรับปัญหาต่างๆ

    เพื่อควบคุมและตรวจสอบความเชี่ยวชาญของเนื้อหา นักเรียนจะต้องเขียนโปรแกรมขนาดเล็กในภาษาปาสคาลโดยใช้ตัวดำเนินการแบบมีเงื่อนไข โดยก่อนหน้านี้ได้รวบรวมอัลกอริธึมทางวาจาและผังงานไว้แล้ว

    ส่วนตัว:

    พัฒนาการคิดเชิงตรรกะความสามารถในการสรุประบุ;

    การสร้างแรงจูงใจที่ยั่งยืนสำหรับการศึกษาด้วยตนเองและการประยุกต์ใช้ทักษะที่ได้รับในทางปฏิบัติ

    การก่อตัวของความสนใจความสามารถในการสังเกตและรวบรวมความรู้

    พัฒนาความสามารถในการเปรียบเทียบ ค้นหาความแตกต่างและความเหมือน

เทคโนโลยีการศึกษา:

บทเรียนใช้องค์ประกอบของการเรียนรู้ตามโครงงาน การเรียนรู้ตามปัญหา และเทคโนโลยี ICT

เครื่องมือ ICT ที่ใช้ในบทเรียน:หน้าจอคอมพิวเตอร์

ทรัพยากรสารสนเทศ:

    หนังสือเรียนชั้นประถมศึกษาปีที่ 8 “สารสนเทศ” นิติศาสตร์มหาบัณฑิต Bosova, A.Y. โบโซวา. – อ.: บินอม, 2014;

    หนังสือเรียน “การเขียนโปรแกรมและพื้นฐานของอัลกอริทึม” /เอจี อุซยัค, ยู.เอ. โบโกโมลอฟ, A.I. มาลิโคฟ ปริญญาตรี สตารอสติน. - คาซาน: สำนักพิมพ์ KNITU-KAI, 2013.

    ตำราเรียนโดย Faronov V.V. เทอร์โบ ปาสคาล 7.0 เริ่มหลักสูตร” – อ.: กลุ่ม OMD, 2013;

แผนที่เทคโนโลยีชั้นเรียน

การกระทำของครู

กิจกรรมนักศึกษา

ขั้นตอนที่ 1 - การสร้างความหมาย

วันนี้เราจะมาทำความรู้จักกับอัลกอริธึมการแยกสาขาและตัวดำเนินการแบบมีเงื่อนไขที่ใช้อัลกอริทึมการแยกสาขา

อัลกอริทึมคืออะไร?

อัลกอริธึมการเขียนวิธีใดที่ใช้บ่อยที่สุด?

อัลกอริทึมเป็นการกำหนดที่แม่นยำซึ่งกำหนดลำดับของการกระทำเพื่อให้ได้ผลลัพธ์ที่ต้องการจากข้อมูลเริ่มต้น

เมื่อพัฒนาโปรแกรม มักใช้วิธีสูตรคำและผังงานบ่อยที่สุด

อัลกอริธึมประเภทใดบ้างตามประเภทของกระบวนการคำนวณ?

ตามประเภทของกระบวนการคำนวณที่ใช้ อัลกอริธึมเป็นแบบเชิงเส้น (โดยตรง) การแตกแขนง และแบบวน

อัลกอริธึมการแยกสาขา อธิบายกระบวนการคำนวณที่นำไปใช้ในทิศทางใดทิศทางหนึ่งที่กำหนดไว้ล่วงหน้า - สาขา การเลือกสาขาการคำนวณเฉพาะขึ้นอยู่กับผลลัพธ์ของการตรวจสอบการปฏิบัติตามเงื่อนไขตรรกะบางประการ ผลลัพธ์ของการทดสอบคือ "จริง" (ใช่) หากตรงตามเงื่อนไข และ "เท็จ" (ไม่ใช่) หากไม่ตรงตามเงื่อนไข

เขียนคำจำกัดความของอัลกอริธึมการแยกสาขา

ด่าน 2 – ปฏิบัติการ

ตัวอย่างที่ 1 พัฒนาอัลกอริธึมเพื่อกำหนดฟังก์ชัน

ฉ(x) = 2 xสำหรับ x > 0 และ

F(x) = x 2 ที่ x<= 0.

เขียนตัวอย่างที่ 1 ลงในสมุดบันทึกของคุณ

อัลกอริธึมทางวาจา งานนี้จะมีลักษณะเช่นนี้:

มีการตรวจสอบว่าตัวแปร X มากกว่าหรือน้อยกว่าศูนย์

หากตัวแปร X มากกว่าศูนย์ แสดงว่าค่าของฟังก์ชันเอฟ(x)=2x;

หากตัวแปร X น้อยกว่าศูนย์ แสดงว่าค่าของฟังก์ชันเอฟ(x)=x 2

เขียนอัลกอริทึมทางวาจาของตัวอย่างที่ 1

อัลกอริธึมการแยกสาขาจะแสดงในแผนภาพบล็อกโดยบล็อก "เงื่อนไข" ในรูปแบบของเพชร ซึ่งมีหนึ่งอินพุตและเอาต์พุตอย่างน้อย 2 รายการ: "ใช่" หากตรงตามเงื่อนไขในบล็อกและ "ไม่" หากตรงตามเงื่อนไข ในบล็อกไม่เป็นไปตามนั้น แต่อาจมีทางออกได้หลายทางจากบล็อกแบบมีเงื่อนไข เราจะพิจารณาตัวเลือกนี้ในภายหลัง

เขียนบล็อกแบบมีเงื่อนไข

ไม่ ใช่

บล็อกไดอะแกรม อัลกอริธึมการแยกสาขาสำหรับตัวอย่างที่พิจารณา 1 จะแสดงในรูปที่ 1

ไม่เชิง

รูปที่ 1 - อัลกอริธึมการแยกสาขา

วาดผังงานของอัลกอริทึมตัวอย่างที่ 1 ลงในสมุดบันทึก

ใน Pascal อัลกอริธึมการแยกสาขาจะใช้ตัวดำเนินการแบบมีเงื่อนไขถ้า- รูปแบบบันทึกของผู้ปฏิบัติงานถ้าต่อไป:

ถ้า <условие> แล้ว <оператор>- เป็นรูปแบบที่ไม่สมบูรณ์ของอัลกอริธึมการแยกสาขา

ตัวอย่างที่ 2:

ถ้าx<5 แล้วเขียน(x);

เงื่อนไข (ในกรณีนี้คือ x<5) – это любое выражение типа บูลีน.

เขียนข้อความเงื่อนไขที่ไม่สมบูรณ์ลงในสมุดบันทึกของคุณ

รูปที่ 2 – บล็อกไดอะแกรมของรูปแบบอัลกอริธึมที่ไม่สมบูรณ์พร้อมการแยกสาขา (ตัวอย่างที่ 2)

การร่างผังงานรูปแบบของอัลกอริธึมที่ไม่สมบูรณ์พร้อมการแยกสาขา

การใช้งานซอฟต์แวร์ตัวอย่างที่ 1:

ถ้าx>0 แล้ว:=2* xอื่น:= x* x;

มาเปลี่ยนงานนี้กันหน่อย:

ตัวอย่างที่ 3: ถ้า x<5, то вывести на экран х, иначе вывести текст “ x>=5". ในทั้งสองกรณี x ต้องเพิ่มขึ้น 1

ตัวดำเนินการแบบมีเงื่อนไขแบบขยายถูกใช้ที่นี่ - การแยกสาขาแบบเต็ม:

ถ้า … แล้วอื่น- แปลดังนี้:

ถ้า...แล้ว. .. มิฉะนั้น …;

รูปแบบบันทึกของผู้ปฏิบัติงาน:

ถ้า <условие> แล้ว <оператор-да> อื่น <оператор-нет>;

ข้อควรจำ: ต่อหน้าผู้ปฏิบัติงาน อื่น ไม่มีอัฒภาค!

เขียนการใช้งานซอฟต์แวร์ตามตัวอย่างที่ 1

เขียนเงื่อนไขของปัญหาที่ถูกแก้ไข (ตัวอย่างที่ 3) และคำสั่งเงื่อนไขเพิ่มเติม

เขียนรูปแบบเพิ่มเติมของคำสั่งแบบมีเงื่อนไข

เขียนเงื่อนไขนี้โดยเน้นด้วยตัวหนาและ!

แผนภาพบล็อกของตัวอย่างที่ 3:

ไม่เชิง

รูปที่ 3 – บล็อกไดอะแกรมของตัวอย่างที่ 3

ร่างแผนภาพบล็อกของตัวอย่างที่ 3

การใช้ซอฟต์แวร์ตัวอย่างที่ 3 ตามบล็อกไดอะแกรมในรูป 3:

ถ้า x<5 then writeln(x)
อย่างอื่น writeln('x>=5');

x:= x+1;

โปรดทราบว่าผู้ประกอบการอื่นจะดีกว่าถ้าเขียนภายใต้โอเปอเรเตอร์แล้วตามที่เขียนไว้ข้างต้นจะสะดวกกว่าในการอ่านและทำความเข้าใจโปรแกรม

เขียนการใช้งานซอฟต์แวร์ตามตัวอย่างที่ 3

คำสั่งแบบมีเงื่อนไขสามารถมีการซ้อนได้หลายระดับ ลองดูตัวอย่างที่ 4:

ย(x) =

เขียนตัวอย่างที่ 4 ที่มีการซ้อนหลายระดับ

ใช่ ไม่ ใช่

เลขที่

รูปที่ 4 – บล็อกไดอะแกรมของตัวอย่างที่ 4

ร่างแผนภาพบล็อกของตัวอย่างที่ 4

การใช้งานซอฟต์แวร์ตัวอย่างที่ 4 ใน Pascal จะมีลักษณะดังนี้:

ถ้า x=0 แล้ว y:=1 อย่างอื่น ถ้า x>0 แล้ว y:=x อย่างอื่น y:=x*x;

อาจมีระดับการทำรังมากขึ้น

เขียนการใช้งานซอฟต์แวร์ตามตัวอย่างที่ 4

ขั้นที่ 3 - ประเมินผลและไตร่ตรอง

ในการรวมวัสดุ คุณจะต้องสร้างผังงานและโปรแกรมอย่างอิสระคอมไพล์รันและรับผลลัพธ์

มาเขียนโปรแกรมตัวอย่างที่ 4:

โปรแกรมนายกรัฐมนตรี 4;

วาร์ x,y: จริง;

เริ่ม

เขียน('ป้อนค่า x ’);

ถ้า x=0 แล้ว y:=1
อย่างอื่นถ้า x>0 แล้ว y:=x
อย่างอื่น y:=x*x;

Writeln('x=',x,' y=',y);

จบ.

ในโปรแกรม ตัวแปร x, y จะถูกประกาศก่อน จากนั้นจึงป้อนค่า x จากนั้นค่า x จะถูกตรวจสอบโดยโอเปอเรเตอร์ที่ซ้อนกันแบบมีเงื่อนไข และค่า y จะถูกกำหนด ขึ้นอยู่กับค่าของ x โปรดทราบว่าผู้ปฏิบัติงานอื่นอ้างถึงคำสั่งสุดท้ายแล้ว.

หลังจากกำหนด y แล้ว ค่าของ x และ y จะถูกพิมพ์ ตัวดำเนินการเขียน(‘ x=’, x,’ =’, - จะดำเนินการไม่ว่ากรณีใดก็ตาม

บันทึกโปรแกรมนายกรัฐมนตรี4 ลงในสมุดบันทึกแล้วพิมพ์โปรแกรมนายกรัฐมนตรี 4 บนคอมพิวเตอร์

ความคิดเห็นเกี่ยวกับรายการจะถูกบันทึกไว้ด้วย

Alt- เอฟ 9.

หากการคอมไพล์สำเร็จ จะมีการเรียกทำงานเพื่อดำเนินการCtrl- เอฟ 9 สำหรับ x=3

คำตอบ: x=3 y=3

ตรวจสอบว่านักเรียนพิมพ์โปรแกรมถูกต้องหรือไม่

ตัวอย่างที่ 5: ป้อนตัวเลขสามตัว a,, - หากไม่มีตัวเลขใดเป็นศูนย์ แสดงว่าตัวแปรซีเนียร์เขียนค่าเฉลี่ยเลขคณิตของตัวเลขสามตัว

วาดผังงานของอัลกอริทึมและเขียนโปรแกรมตัวอย่างที่ 5

แผนภาพบล็อกอัลกอริทึม:

เลขที่

ใช่

โปรแกรมปาสคาล:

โปรแกรม Prim5;

var

a, b, c: จำนวนเต็ม;

sr: จริง;

เริ่ม

เขียน('ป้อนตัวเลข ก, ข, ค’);

อ่าน(ก, ข, ค);

ถ้า (ก<>0)และ(ข<>0)และ(ค<>0) แล้วก็ sr:=(a+b+c)/3;

จบ.

ตัวเลขก , เข้ามาจากแป้นพิมพ์โดยคั่นด้วยช่องว่าง

ครูตรวจสอบความถูกต้องของผังงาน ชุดโปรแกรมของนักเรียน และความถูกต้องของคำตอบ

ทำบล็อกไดอะแกรมและโปรแกรมบนคอมพิวเตอร์ตามตัวอย่างที่ 5

แก้ไขข้อผิดพลาดในการคอมไพล์ ถ้ามี ให้เรียกใช้เพื่อดำเนินการกับชุดตัวเลข: 5 8 11

คำตอบ: 8.

หากเป็นไปตามเงื่อนไขเช่น หลังจากผู้ปฏิบัติงานแล้วหรือหลังผู้ปฏิบัติงานอื่นคุณต้องรันโอเปอเรเตอร์หลายตัว จากนั้นโอเปอเรเตอร์หลายตัวเหล่านี้จะอยู่ในตัวดำเนินการผสมที่เกิดจากโอเปอเรเตอร์เริ่มและ จบ.

ตัวอย่างที่ 6:

ย(x) =

การใช้งานซอฟต์แวร์ตัวอย่างที่ 6:

ถ้าx>0 แล้วเริ่ม:= x* x; x:= x+1; จบ

อย่างอื่น y:=x;

เขียนตัวอย่างที่ 7 และการใช้งานซอฟต์แวร์

ตัวอย่างที่ 7: ป้อนตัวเลขสามตัว a,, - กำหนดจำนวนสูงสุดของพวกเขา เขียนแผนภาพบล็อกและเขียนโปรแกรม แผนภาพบล็อกอัลกอริทึม:

ใช่

เลขที่

เลขที่

ไม่ ใช่

โปรแกรม:

โปรแกรมนายกรัฐมนตรี 7;

Var a, b, c, m: จำนวนเต็ม;

เริ่ม

เขียน('ป้อนตัวเลข ก, ข, ค’);

อ่าน(ก, ข, ค);

ม:=ก;

ถ้าb>mแล้วm:=b;

ถ้า c>m แล้ว m:=c;

เขียน('จำนวนสูงสุด=',);

จบ.

ทำบล็อกไดอะแกรมและโปรแกรมบนคอมพิวเตอร์ตามตัวอย่างที่ 7

หลังจากพิมพ์โปรแกรมแล้ว การคอมไพล์ก็เริ่มต้นขึ้นAlt- เอฟ9.หากมีข้อผิดพลาดจะแก้ไขให้ถูกต้อง

หลังจากคอมไพล์สำเร็จแล้ว ก็จะถูกเปิดตัวเพื่อดำเนินการCtrl- เอฟ9 สำหรับหมายเลขโทรออก: 4 7 18

คำตอบ: 18.

เขาตรวจสอบทีละแถวเพื่อดูว่ามีคนรับมือกับงานนี้อย่างไร แก้ไขผังงานและโปรแกรมเพื่อให้คะแนนสำหรับการเรียนรู้เนื้อหา

การวิเคราะห์ตนเองของการพัฒนาระเบียบวิธี

บทเรียนประกอบด้วยสามขั้นตอน

ขั้นสร้างความรู้สึก - ในขั้นตอนนี้ ครูสร้างเงื่อนไขสำหรับการทำงานเป็นกลุ่มที่ประสบความสำเร็จ สนับสนุนให้นักเรียนกำหนดเป้าหมายและวัตถุประสงค์ของบทเรียน และกระตุ้นให้พวกเขาทำงานต่อไป นักเรียนยอมรับและชี้แจงเป้าหมายและวัตถุประสงค์ของบทเรียน

    จุดเน้นของเนื้อหาบทเรียนอยู่ที่การก่อตัวของผลการศึกษาส่วนบุคคล วิชาเมตา และวิชาที่วางแผนไว้ ความเป็นไปได้ของบทเรียนสำหรับการก่อตัวของการดำเนินการทางการศึกษาที่เป็นสากล

ขั้นตอนกิจกรรมปฏิบัติการของบทเรียน - ในขั้นตอนนี้ ครูสร้างเงื่อนไขในการแก้ปัญหาที่ได้รับมอบหมาย จัดกระบวนการรับรู้และการสื่อสาร ระบุความยากลำบาก ให้ความช่วยเหลือและสนับสนุนในรูปแบบต่างๆ

นักเรียนแสดงวิธีแก้ไขปัญหาที่ได้รับมอบหมาย กำหนดกลวิธีในการทำงาน สร้างอัลกอริทึมสำหรับการแก้ปัญหา และการนำโปรแกรมไปใช้ในงานที่ได้รับมอบหมายในภาษาปาสคาล สาธิตการพัฒนาวิธีทำความเข้าใจและสื่อสารเป็นแนวทางในการรู้

    เนื้อหาบทเรียนเน้นที่การแก้ปัญหาการพัฒนาจิตวิญญาณและศีลธรรมและการเลี้ยงดูบุคลิกภาพของพลเมืองรัสเซียการก่อตัวของค่านิยมพื้นฐานของชาติ

ขั้นตอนการสะท้อนการประเมินของบทเรียน ในขั้นตอนนี้ จะมีการจัดการประเมินขั้นสุดท้าย (องค์ประกอบของการประเมินระดับกลางและการประเมินตนเองดำเนินการอย่างเป็นระบบตลอดบทเรียน) โดยเป็นส่วนหนึ่งของขั้นตอนการไตร่ตรอง นักเรียนแสดงให้เห็นถึงความสามารถในการวาดผังงานของอัลกอริทึมและโปรแกรมอย่างอิสระ รวบรวมและดำเนินการได้สำเร็จ และประเมินผลลัพธ์ของกิจกรรมและกิจกรรมของเพื่อนร่วมชั้น

ใช้วิธีการอธิบายเชิงอธิบาย การวิจัย และอิงปัญหา

จุดเน้นของเนื้อหาบทเรียนอยู่ที่การก่อตัวของผลการศึกษาส่วนบุคคล วิชาเมตา และวิชาที่วางแผนไว้ ความเป็นไปได้ของบทเรียนสำหรับการก่อตัวของการดำเนินการทางการศึกษาสากล (UAL)

นักเรียนแสดงให้เห็นถึงความสามารถในการทำงานอย่างอิสระในการวาดผังงานของอัลกอริธึม การเขียนโปรแกรมในภาษาปาสกาล การคอมไพล์โปรแกรมและการแก้ไขข้อผิดพลาดในการคอมไพล์ หากมี การเรียกใช้โปรแกรมอย่างอิสระสำหรับการดำเนินการและการแก้ไขข้อผิดพลาดในการดำเนินการ รวมถึงความสามารถในการประเมินผลลัพธ์ของกิจกรรมของพวกเขา และกิจกรรมของเพื่อนร่วมชั้น วิธีสอนที่ใช้: ตามโครงงาน ปัญหา การวิจัย วิธีการแก้ปัญหาเชิงปฏิบัติ การค้นหา การอภิปราย กิจกรรมสร้างสรรค์ร่วมกัน การสื่อสาร

เนื้อหาบทเรียนเน้นที่การแก้ปัญหาการพัฒนาจิตวิญญาณและศีลธรรมและการเลี้ยงดูบุคลิกภาพของพลเมืองรัสเซียการก่อตัวของค่านิยมพื้นฐานของชาติ

เนื้อหาของบทเรียนข้อมูลโดยทั่วไปและโดยเฉพาะบทเรียนนี้มุ่งเน้นไปที่การพัฒนาลักษณะส่วนบุคคลของผู้สำเร็จการศึกษาระดับโรงเรียนขั้นพื้นฐานตามข้อกำหนดของมาตรฐานการศึกษาของรัฐบาลกลางโดยเฉพาะอย่างยิ่งความสามารถในการรับมือกับความซับซ้อนดังกล่าว งานในฐานะการเขียนโปรแกรมทำให้เกิดความรู้สึกพึงพอใจกับงานของตนและรักษาศักดิ์ศรีของนักเรียน

    การใช้งาน วิธีการที่ทันสมัยและเทคโนโลยีในการจัดการศึกษากับนักเรียนในกระบวนการกิจกรรมในห้องเรียนและกิจกรรมนอกหลักสูตร ( คำอธิบายสั้น ๆวิธีการเหล่านี้หรืออ้างอิงแหล่งที่มา)

การใช้วิธีการและเทคโนโลยีสมัยใหม่ในการจัดงานด้านการศึกษากับนักเรียนในกระบวนการห้องเรียนและกิจกรรมนอกหลักสูตร (คำอธิบายสั้น ๆ ของวิธีการเหล่านี้หรือลิงก์ไปยังแหล่งข้อมูล)

มีการใช้องค์ประกอบของการเรียนรู้จากโครงงาน การเรียนรู้จากปัญหา การคิดเชิงตรรกะ การเรียนรู้เชิงโต้ตอบ เทคโนโลยีไอซีที และการอนุรักษ์สุขภาพ

    การรวมไว้ในโครงสร้างและเนื้อหาของบทเรียนเกี่ยวกับวิธีการและเทคนิคสมัยใหม่ที่กระตุ้นแรงจูงใจทางปัญญาของนักเรียน (คำอธิบายสั้น ๆ เกี่ยวกับวิธีการเหล่านี้หรือลิงก์ไปยังแหล่งข้อมูล)

การรวมไว้ในโครงสร้างและเนื้อหาของบทเรียนเกี่ยวกับวิธีการและเทคนิคสมัยใหม่ที่กระตุ้นแรงจูงใจทางปัญญาของนักเรียน (คำอธิบายสั้น ๆ เกี่ยวกับวิธีการเหล่านี้หรือลิงก์ไปยังแหล่งข้อมูล)

โครงสร้างของบทเรียนประกอบด้วยวิธีการและเทคนิคต่อไปนี้ที่กระตุ้นแรงจูงใจทางปัญญาของนักเรียน: การสร้างสถานการณ์ปัญหา งานกลุ่ม การแก้ปัญหาที่สำคัญในทางปฏิบัติสำหรับนักเรียน วิธีค้นหาปัญหา

(เทคโนโลยีการศึกษาสมัยใหม่: หนังสือเรียน / เรียบเรียงโดย N.V. Bordovskaya - M.: KNORUS, 2011)

    รวมอยู่ในโครงสร้างและเนื้อหาของบทเรียนเทคนิคระเบียบวิธีสมัยใหม่ของการตั้งเป้าหมายเชิงรุก การทำงานเป็นกลุ่ม/การทำงานร่วมกัน องค์ประกอบ กิจกรรมโครงการ(คำอธิบายวิธีการเหล่านี้หรือลิงก์ไปยังแหล่งที่มา)

การรวมไว้ในโครงสร้างและเนื้อหาของบทเรียนเกี่ยวกับเทคนิคระเบียบวิธีสมัยใหม่ของการตั้งเป้าหมายเชิงรุก กลุ่ม/การทำงานร่วมกัน องค์ประกอบของกิจกรรมโครงการ (คำอธิบายวิธีการเหล่านี้หรือลิงก์ไปยังแหล่งข้อมูล)

ในขั้นแรกของบทเรียน - การสร้างความหมาย - นักเรียนจะกำหนดหัวข้อและวัตถุประสงค์ของบทเรียนโดยพิจารณาจากการรวมไว้ในกิจกรรมที่กระตือรือร้น ในขั้นตอนที่สองของบทเรียน - กิจกรรมปฏิบัติการ - นักเรียนมีส่วนร่วม งานโครงการ,ทำงานเป็นกลุ่ม.

    การรวมไว้ในโครงสร้างและเนื้อหาของบทเรียนวิธีการประเมินสมัยใหม่ที่ช่วยให้สามารถวัดผลลัพธ์เมตาดาต้าและสร้างความภาคภูมิใจในตนเองในนักเรียน (คำอธิบายวิธีการเหล่านี้หรือลิงก์ไปยังแหล่งข้อมูล)

การรวมไว้ในโครงสร้างและเนื้อหาของบทเรียนวิธีการประเมินสมัยใหม่ที่ช่วยให้สามารถวัดผลลัพธ์ของวิชาเมตาและสร้างความภาคภูมิใจในตนเองในนักเรียน (คำอธิบายของวิธีการเหล่านี้หรือลิงก์ไปยังแหล่งข้อมูล)

ตลอดบทเรียน ครูสังเกตนักเรียน ตรวจสอบความถูกต้องของงาน บ่งชี้ว่ามีข้อผิดพลาดกับนักเรียน นักเรียนประเมินผลลัพธ์ของการทำภารกิจให้สำเร็จ (การประเมินตนเอง) ผลลัพธ์ของการทำภารกิจของนักเรียนคนอื่นให้สำเร็จ (ร่วมกัน การประเมิน).

ในขั้นตอนสุดท้ายของบทเรียน - แบบประเมิน - แบบสะท้อน - นักเรียนรวบรวมความรู้ที่ได้รับในทางปฏิบัติวาดผังงานของอัลกอริทึมและโปรแกรมอย่างอิสระทำให้เสร็จและตรวจสอบความถูกต้องของงานโดยอิสระและประเมินงานโดยรวมในบทเรียนและผลลัพธ์ ประสบความสำเร็จ

(การประเมินความสำเร็จทางการศึกษาของนักเรียนสมัยใหม่ / แก้ไขโดย I.V. Mushtavinskaya - เซนต์ปีเตอร์สเบิร์ก: KARO, 2015)



2024 wisemotors.ru. วิธีนี้ทำงานอย่างไร. เหล็ก. การทำเหมืองแร่ สกุลเงินดิจิทัล