# Calculate pressure of a real gas using Van der Waal’s Equation

Last Updated : 02 Nov, 2023

Given integers V, T, and n representing the volume, temperature and the number of moles of a real gas, the task is to calculate the pressure P of the gas using Van der Waal’s Equation for real gas.

Van der Waal’s Equation for Real Gas:
( P + a * n2 / V2 ) * (V – n * b) = n R T)
where, average attraction between particles (a) = 1.360,
volume excluded by a mole of particles (b) = 0.03186,
Universal Gas constant (R) = 8.314

Examples:

Input: V = 5, T = 275, n = 6
Output: 2847.64

Input: V = 7, T = 300, n = 10
Output: 3725.43

Approach: To solve the problem, simply calculate the pressure P of real gas by using the equation P = ((n * R * T) / (V â€” n * b)) â€” (a* n * n) / (V * V) and print the result.

Below is the implementation of the above approach:

## C++

 `// C++ Program to implement` `// the above approach`   `#include ` `using` `namespace` `std;`   `// Function to calculate the pressure of a` `// real gas using Van der Wall's equation` `void` `pressure_using_vanderwall(``double` `V,` `                               ``double` `T, ``double` `n)` `{`   `    ``double` `a = 1.382;` `    ``double` `b = 0.031;` `    ``double` `R = 8.314;`   `    ``// Calculating pressure` `    ``double` `P = ((n * R * T) / (V - n * b))` `               ``- (a * n * n) / (V * V);`   `    ``// Print the obtained result` `    ``cout << P << endl;` `}`   `// Driver code` `int` `main()` `{`   `    ``double` `V = 7, T = 300, n = 10;` `    ``pressure_using_vanderwall(V, T, n);` `    ``return` `0;` `}`

## Java

 `// Java program to implement` `// the above approach` `class` `GFG{` `    `  `// Function to calculate the pressure of a` `// real gas using Van der Wall's equation` `public` `static` `void` `pressure_using_vanderwall(``double` `V,` `                                             ``double` `T, ` `                                             ``double` `n)` `{` `    ``double` `a = ``1.382``;` `    ``double` `b = ``0.031``;` `    ``double` `R = ``8.314``;` ` `  `    ``// Calculating pressure` `    ``double` `P = ((n * R * T) / (V - n * b)) - ` `                ``(a * n * n) / (V * V);` ` `  `    ``// Print the obtained result` `    ``System.out.println(String.format(``"%.2f"``, P));` `}`   `// Driver Code` `public` `static` `void` `main(String[] args)` `{` `    ``double` `V = ``7``, T = ``300``, n = ``10``;` `    `  `    ``pressure_using_vanderwall(V, T, n);` `}` `}`   `// This code is contributed by divyesh072019`

## Python3

 `# Python3 Program to implement ` `# the above approach `   `# Function to calculate the pressure of a ` `# real gas using Van der Wall's equation ` `def` `pressure_using_vanderwall(V, T, n): `   `    ``a ``=` `1.382` `    ``b ``=` `0.031` `    ``R ``=` `8.314`   `    ``# Calculating pressure ` `    ``P ``=` `((n ``*` `R ``*` `T) ``/` `(V ``-` `n ``*` `b)) ``-` `(a ``*` `n ``*` `n) ``/` `(V ``*` `V) `   `    ``# Print the obtained result ` `    ``print``(``round``(P, ``2``)) `   `# Driver code` `V, T, n ``=` `7``, ``300``, ``10` `pressure_using_vanderwall(V, T, n)`   `# This code is contributed by divyeshrabadiya07`

## C#

 `// C# program to implement` `// the above approach` `using` `System;`   `class` `GFG{` `     `  `    ``// Function to calculate the pressure of a` `    ``// real gas using Van der Wall's equation` `    ``public` `static` `void` `pressure_using_vanderwall(``double` `V,` `                                                 ``double` `T, ` `                                                 ``double` `n)` `    ``{` `        ``double` `a = 1.382;` `        ``double` `b = 0.031;` `        ``double` `R = 8.314;` `      `  `        ``// Calculating pressure` `        ``double` `P = ((n * R * T) / (V - n * b)) - ` `                    ``(a * n * n) / (V * V);` `      `  `        ``// Print the obtained result` `        ``Console.WriteLine(Math.Round(P, 2));` `    ``}` `     `  `    ``// Driver Code` `    ``public` `static` `void` `Main(String[] args)` `    ``{` `        ``double` `V = 7, T = 300, n = 10;` `         `  `        ``pressure_using_vanderwall(V, T, n);` `    ``}` `}` ` `  `// This code is contributed by AnkitRai01`

## Javascript

 ``

Output

```3725.43

```

Time Complexity: O(1)
Auxiliary Space: O(1)