Рассчитайте давление реального газа с помощью уравнения Ван-дер-Ваала.

Опубликовано: 16 Декабря, 2021

Учитывая целые числа V , T и n, представляющие объем, температуру и количество молей реального газа, задача состоит в том, чтобы вычислить давление P газа, используя уравнение Ван-дер-Вааль для реального газа.

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

Примеры:

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

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

Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.

Подход: для решения проблемы просто рассчитайте давление P реального газа, используя уравнение P = ((n * R * T) / (V - n * b)) - (a * n * n) / (V * V) и распечатайте результат.

Ниже представлена реализация описанного выше подхода:

C ++

// C++ Program to implement
// the above approach
#include <bits/stdc++.h>
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 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

<script>
// Javascript program to implement the above approach
// Function to calculate the pressure of a
// real gas using Van der Wall's equation
function pressure_using_vanderwall(V, T, n)
{
let a = 1.382;
let b = 0.031;
let R = 8.314;
// Calculating pressure
let P = ((n * R * T) / (V - n * b)) - (a * n * n) / (V * V);
// Print the obtained result
document.write(P.toFixed(2));
}
let V = 7, T = 300, n = 10;
pressure_using_vanderwall(V, T, n);
// This code is contributed by decode2207.
</script>
Выход:
 3725,43

Сложность времени: O (1)
Вспомогательное пространство: O (1)