İdeal ve Gerçek Gazlarda Basınç Hesabı (goto Fonksiyonu)

SORU

Gazlar düşük basınç ve sıcaklıklarda ideal davranış gösterirler. Yüksek basınç ve düşük sıcaklıklarda ise gerçek gaz davranışı gösterirler.
İdeal gaz davranışı gösterirken gazların basıncı

P=nRT/V
eşitliğinden hesaplanır.
Gerçek gaz davranışı gösterirken ise basınçları van der Walls denklemi olan
P=nRT/(V-nb) - n2a/V2
eşitliğinden hesaplanır.
CO2 gazının ideal veya gerçek gaz davranışına göre gazın basıncını hesaplayacak bir program yazınız.
Eşitliklerdeki P; basınç, n; mol sayısı; R; değeri 0.082 atm. L. mol-1 K1 olan gaz sabiti, T; mutlak sıcaklık, V; gazın hacmi, a; CO2 e özgü bir sabit ve değeri 3.640 L2 atm. mol-2, b; CO2 e özgü bir sabit ve değeri 4.267x10-2 L. mol-1 dir.

YANIT

Algoritma :

  1. Gazın mutlak sıcaklığını girin.
  2. Gazın mol sayısını girin.
  3. Gazın hacmini girin.
  4. Basıncın İdael gaz davranışına göre mi, Gerçek gaz Davranışına göre mi çözüleceğine ilişkin seçeneği kullan.
  5. İdael Gaz Seçildiyse İdeala göre çözüm sonucunu göster.
  6. Gerçek Gaz Seçildiyse gerçek gaz davranışına göre çözüm sonucunu göster.
  7. Hesaplamaları göster ve yazdır.
  8. Programı bitir.

PROGRAM KODU <?php $T=$_POST[T]; $n=$_POST[n]; $V=$_POST[V]; $IGG=$_POST[IGG]; if($IGG==1) {$secilen1=' checked ';} if($IGG==2) {$secilen2=' checked ';} echo "<form name='ZAH' action=$_SERVER[PHP_SELF] method='post'> <table> <tr><td>T</td><td>:</td><td><input type='text' name='T' value='$T' size='5' /> K</td></tr> <tr><td>n</td><td>:</td><td><input type='text' name='n' value='$n' size='5' /> mol</td></tr> <tr><td>V</td><td>:</td><td><input type='text' name='V' value='$V' size='5' /> L.</td></tr> <tr><td>Çöz</td><td>:</td><td> <input type='radio' name='IGG' $secilen1 value='1' size='5' /> İdeal Gaz<br/> <input type='radio' name='IGG' $secilen2 value='2' size='5' /> Gerçek Gaz<br/> </td></tr> <tr><td colspan='3' align='right'><input type='submit' name='Hesapla' ></td></tr> </table> "; goto Ideal; devam: goto Gercek; Ideal: if ($IGG==1) { echo " P=($n mol)(0.082 atm. L. mol<sup>-1</sup> K<sup>-1</sup>)($T K)/($V L.)<br/>"; echo "P=".round($n*0.082*$T/$V,3)." atm."; } goto devam; Gercek: if ($IGG==2) { echo "P = [($n mol)(0.082 atm. L. mol<sup>-1</sup> K<sup>-1</sup>)($T K)/[(($V L) -($n mol)(4.267x10<sup>-2</sup>))]] - ($n mol)<sup>2</sup>(3.640 L<sup>2</sup> atm. mol<sup>-2</sup>)/($V L.)<sup>2</sup><br/>"; echo "P = ".round($n*0.082*$T/($V-$n*4.267e-2)-pow($n,2)*3.64/pow($V,2),3)." atm.<br/>"; } end: ?>
ÇALIŞAN PROGRAM
T: K
n: mol
V: L.
Çöz: İdeal Gaz
Gerçek Gaz