สมมติว่าเรามีนักเรียน n คะแนนในห้าวิชา คะแนนแรกเป็นของ Kamal และมีคะแนนมากกว่า n-1 สำหรับนักเรียนคนอื่น และนักเรียนแต่ละคนมีห้าวิชา เราจะต้องนับจำนวนนักเรียนที่ทำคะแนนได้มากกว่า กมล ที่นี่เราจะกำหนดหนึ่งชั้นเรียนที่เรียกว่านักเรียนเพื่อโหลดคะแนนสำหรับนักเรียนแต่ละคน ชั้นเรียนมีฟังก์ชัน Input() หนึ่งฟังก์ชันเพื่อรับอินพุต และฟังก์ชันคำนวณTotalScore() เพื่อคำนวณคะแนนของนักเรียนจากคะแนน 5 คะแนน
ดังนั้น ถ้าอินพุตเป็น n =4 คะแนน =[[25,45,32,42,30],[22,25,41,18,21],[37,42,48,45,25],[ 36,48,35,40,30]] จากนั้นผลลัพธ์จะเป็น 2 เนื่องจากนักเรียนสองคนสุดท้ายมีคะแนนมากกว่ากมล
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
-
s :=อาร์เรย์ของวัตถุประเภทนักเรียนที่มีองค์ประกอบ n
-
สำหรับการเริ่มต้น i :=0 เมื่อฉัน
-
โหลดคะแนนทั้งหมด[i] ลงใน s[i]
-
-
kamal_sc :=คะแนนรวมของ s[0]
-
นับ :=0
-
สำหรับการเริ่มต้น i :=1 เมื่อฉัน
-
Total :=คะแนนรวมของ s[i]
-
ถ้าทั้งหมด> kamal_sc แล้ว:
-
(เพิ่มจำนวนขึ้น 1)
-
-
-
จำนวนคืน
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
#include#include ใช้เนมสเปซ std;class Student{ สาธารณะ:คะแนน int[5]; อินพุตเป็นโมฆะ (เวกเตอร์ v){ สำหรับ (int i =0; i <5; i++) คะแนน[i] =v[i]; } int คำนวณคะแนนรวม (){ int res =0; สำหรับ(int i =0; i <5; i++) res +=score[i]; ผลตอบแทน res; }};int main(){ int n =4; เวกเตอร์<เวกเตอร์ > คะแนน ={{25,45,32,42,30},{22,25,41,18,21},{37,42,48,45,25},{36,48 ,35,40,30}}; นักเรียน *s =นักเรียนใหม่[n]; สำหรับ(int i =0; i kamal_sc){ นับ++; } } cout <<นับ;}
อินพุต
<ก่อน>4, {{25,45,32,42,30}, {22,25,41,18,21}, {37,42,48,45,25}, {36,48,35,40 ,30}}ผลลัพธ์
2