Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm xem một phân tử có thể được hình thành từ 3 nguyên tử bằng cách sử dụng số hóa trị của chúng trong C ++ hay không

Như chúng ta biết số hóa trị là con số xác định có bao nhiêu liên kết mà nguyên tử phải hình thành với các nguyên tử khác. Chúng tôi có các số hóa trị của ba nguyên tử. Chúng ta phải kiểm tra xem chúng có thể tạo ra một phân tử hay không. Các nguyên tử có thể tạo thành nhiều liên kết với nhau. Vì vậy, nếu các số hóa trị là 2, 4, 2, thì kết quả đầu ra sẽ là CÓ. Như các liên kết như bên dưới -

1 - 2, 1 - 2, 2 - 3, 2 - 3.

Giả sử các số hóa trị là a, b và c. Coi c là lớn nhất. Sau đó, chúng ta có hai trường hợp mà chúng không thể tạo thành phân tử -

  • a + b + c là số lẻ. Vì mọi liên kết đều làm giảm số hóa trị của hai nguyên tử đi 1 nên tổng sẽ là số chẵn
  • a + b

Ví dụ

#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";
   }
}

Đầu ra

They can form Molecule