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

ค้นหาว่าโมเลกุลสามารถเกิดขึ้นได้จาก 3 อะตอมโดยใช้เลขเวเลนซ์ใน C++ . หรือไม่


อย่างที่เราทราบกันดีว่าเลขเวเลนซ์คือตัวเลขที่กำหนดจำนวนพันธะที่อะตอมต้องก่อตัวกับอะตอมอื่นๆ เรามีเลขวาเลนซ์สามอะตอม เราต้องตรวจสอบว่าพวกมันสามารถสร้างหนึ่งโมเลกุลได้หรือไม่ อะตอมสามารถสร้างพันธะระหว่างกันได้หลายแบบ ดังนั้นหากจำนวนเวเลนซ์คือ 2, 4, 2 ผลลัพธ์จะเป็นใช่ เนื่องจากพันธะมีลักษณะดังต่อไปนี้ −

1 – 2, 1 – 2, 2 – 3, 2 – 3.

สมมติว่าจำนวนม่านตาคือ a, b และ c พิจารณา c ที่ใหญ่ที่สุด แล้วมี 2 กรณีที่ไม่สามารถสร้างโมเลกุลได้ −

  • a + b + c เป็นคี่ เนื่องจากทุกพันธะลดจำนวนเวเลนซ์ของสองอะตอมลง 1 ดังนั้นผลรวมจะเป็นเลขคู่
  • a + b

ตัวอย่าง

#include<iostream>
using namespace std;
bool canMakeMolecule(int a, int b, int c) {
   if ((a + b + c) % 2 != 0 || a + b < c)
      return false;
   else
      return true;
}
int main() {
   int a = 2, b = 4, c = 2;
   if(canMakeMolecule(a, b, c)){
      cout << "They can form Molecule";
   } else {
      cout << "They can not form Molecule";
   }
}

ผลลัพธ์

They can form Molecule