Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

การสลับแถวบนและแถวล่างในอาร์เรย์สามเหลี่ยมใน C++


บทช่วยสอนนี้ออกแบบมาเพื่อสลับแถวบนของอาร์เรย์สามเหลี่ยมขนาด 3x3 ให้กลายเป็นแถวล่างโดยใช้โค้ด C++ หากนำอาร์เรย์สามเหลี่ยมเข้ามา ผลลัพธ์ที่ต้องการจะเป็นดังภาพ

การสลับแถวบนและแถวล่างในอาร์เรย์สามเหลี่ยมใน C++

ขั้นตอนการทำงานมีดังอัลกอริทึมด้านล่าง

อัลกอริทึม

ขั้นตอนที่ 1: รับอาร์เรย์สามเหลี่ยมเข้ามา ขั้นตอนที่ 2: ส่งให้เมธอด Swap() ขั้นตอนที่ 3: วนลูปภายนอกจนถึง 3 ขั้นตอนที่ 4: เพิ่ม j = i + 1 ในลูปภายในจนถึง 3 ขั้นตอนที่ 5: ใส่ค่าอาร์เรย์ในตัวแปร temp ขั้นตอนที่ 6: สลับค่า arr[i][j] = arr[j][i] ขั้นตอนที่ 7: ใส่ข้อมูล temp ไปที่ arr[j][i] ขั้นตอนที่ 8: แสดงผลด้วยลูป for

โค้ด C++ จึงถูกเขียนขึ้นตามอัลกอริทึมดังกล่าว

ตัวอย่าง

#include <iostream> #define n 3 using namespace std; // ฟังก์ชันสลับแถวบน-ล่าง void swap(int arr[n][n]) {     // ลูปสำหรับสลับสมาชิกของเมทริกซ์     for (int i = 0; i < n; i++) {       for (int j = i + 1; j < n; j++) {           int temp = arr[i][j];           arr[i][j] = arr[j][i];           arr[j][i] = temp;       }     }     // ลูปสำหรับพิมพ์สมาชิกของเมทริกซ์     for (int i = 0; i < n; i++) {       for (int j = 0; j < n; j++)           cout << arr[i][j] << " ";       cout << endl;     } } // ฟังก์ชันหลักเพื่อรันโปรแกรม int main() {     int arr[n][n] = {       { 1, 2, 3},       { 4, 5, 6},       { 7, 8, 9},     };     cout << "Input::" << endl;     for (int i = 0; i < n; i++) {       for (int j = 0; j < n; j++)           cout << arr[i][j] << " ";       cout << endl;     }     // เรียกใช้ฟังก์ชัน     cout << "Output(Swaped)::" << endl;     swap(arr);     return 0; }

ผลลัพธ์

ตามผลลัพธ์ด้านล่าง แถวบนและส่วนล่างของอาร์เรย์ 3 มิติถูกสลับกัน

Input:: 1 2 3 4 5 6 7 8 9 Output(Swaped):: 1 4 7 2 5 8 3 6 9