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

โปรแกรมหาเส้นผ่านศูนย์กลาง รอบ และขอบของกราฟล้อในภาษา C++


ในปัญหานี้ เราได้รับตัวเลขที่แสดงจำนวนจุดยอดของกราฟวงล้อ งานของเราคือสร้าง โปรแกรมเพื่อค้นหาเส้นผ่านศูนย์กลาง รอบ และขอบของกราฟวงล้อใน C++ .

คำอธิบายปัญหา − ในที่นี้ เราต้องหาจำนวนรอบ จำนวนขอบ และเส้นผ่านศูนย์กลางของกราฟล้อที่มีจุดยอด n จุด

ขั้นแรก มาทำความเข้าใจพื้นฐานบางประการเกี่ยวกับกราฟล้อกัน −

กราฟวงล้อได้มาจากกราฟวัฏจักร Cn-1 โดยการเพิ่มจุดยอดใหม่ จุดยอดใหม่นั้นเรียกว่าฮับซึ่งเชื่อมต่อกับจุดยอดทั้งหมดของ Cn.

ตัวอย่างกราฟวงล้อที่มีจุดยอด 7 จุด

โปรแกรมหาเส้นผ่านศูนย์กลาง รอบ และขอบของกราฟล้อในภาษา C++

เส้นผ่านศูนย์กลางของกราฟล้อ คือจำนวนขอบที่เราต้องปิดเพื่อเปลี่ยนจากจุดยอดใครไปสู่จุดอื่น สำหรับกราฟวงล้อด้านบน เส้นผ่านศูนย์กลาง 2

ไม่ ของวัฏจักรของกราฟวงล้อ คือจำนวนรอบปิดทั้งหมดที่สามารถเป็นกราฟที่กำหนดได้ สำหรับกราฟล้อด้านบน หมายเลข ของรอบคือ 31

ไม่ ของกราฟขอบล้อ คือจำนวนขอบที่เชื่อมจุดยอดทั้งหมด สำหรับกราฟวงล้อด้านบน ไม่มีขอบเท่ากับ 12

แนวทางการแก้ปัญหา

ในการแก้ปัญหา เราจะใช้สูตรตรงที่ให้ไว้ในทฤษฎีกราฟเพื่อค้นหาค่าที่จำเป็นสำหรับกราฟวงล้อ

สูตรคือ

เส้นผ่านศูนย์กลางของกราฟล้อ =

1, if vertices = 4, else 2.

ไม่ ของรอบของกราฟวงล้อ =

(No. of vertices )^2 - (3 * (No. of vertices -1) )

ไม่ ของขอบล้อ กราฟ =

2 * (No. of vertices - 1)

โปรแกรมเพื่อแสดงการทำงานของโซลูชันของเรา

ตัวอย่าง

#include <iostream>
#include <math.h>
using namespace std;
void calcValuesWheelGraph(int V){
   // Calculating the Diameter
   if(V == 4){
      cout<<"The Diameter of the Wheel Graph is 1 "<<endl;
   }
   else {
      cout<<"The Diameter of the Wheel Graph is 2 "<<endl;
   }
   // Calculating the no. of cycles
   cout<<"The number of cycles of the Wheel Graph is "<<(pow(V, 2) - (3 * (V-1)))<<endl;
   // Calculating the no. of Edges
   cout<<"The number of Edges of the Wheel Graph is "<<(2 * (V-1))<<endl;
}
int main(){
   int V = 9;
   calcValuesWheelGraph(V);
   return 0;
}

ผลลัพธ์

The Diameter of the Wheel Graph is 2
The number of cycles of the Wheel Graph is 57
The number of Edges of the Wheel Graph is 16