POWERSHELL BETİĞİ :
Kod:
# Açıklamalar
Write-Host "Bağıl Nem (Relative Humidity) :"
Write-Host "Havanın içindeki su buharı miktarının, o sıcaklıkta maksimum tutabileceği su buharı miktarına oranıdır (%)."
Write-Host ""
Write-Host "Mutlak Nem (Absolute Humidity) :"
Write-Host "Belirli bir hacimdeki havada bulunan su buharı miktarıdır (g/m³)."
Write-Host ""
# Kullanıcıdan sıcaklığı al
$temperatureC = Read-Host "Ortam sıcaklığını girin (°C)"
$temperatureC = [double]($temperatureC -replace ",",".")
# Bağıl nem tahmini (basit model)
$relativeHumidity = [math]::Max([math]::Min(100, 50 - 0.5*($temperatureC - 20)), 5)
# Doygun buhar basıncı (hPa) - Magnus formülü
$es = 6.112 * [math]::Exp((17.67 * $temperatureC) / ($temperatureC + 243.5))
# Gerçek buhar basıncı (hPa)
$e = ($relativeHumidity / 100) * $es
# Mutlak nem (g/m³)
$absoluteHumidity = (216.7 * $e) / ($temperatureC + 273.15)
# Ortam durumu
if ($temperatureC -lt 10) {
$status = "Soğuk"
}
elseif ($temperatureC -lt 20) {
$status = "Ilık"
}
elseif ($temperatureC -lt 30) {
$status = "Sıcak"
}
else {
$status = "Aşırı sıcak"
}
# Sonuçları göster
Write-Host ""
Write-Host "Sıcaklık : $temperatureC °C"
Write-Host ("Bağıl Nem : {0:N2} %" -f $relativeHumidity)
Write-Host ("Mutlak Nem : {0:N2} g/m³" -f $absoluteHumidity)
Write-Host "Ortam Durumu : $status"
# Betiğin kapanmasını önle (imleç alt satırda)
Write-Host ""
Read-Host "Devam etmek için Enter'a basın..."
GNU/LİNUX BASH SHELL BETİĞİ :
Kod:
#!/bin/bash
# Açıklamalar
echo "Bağıl Nem (Relative Humidity) :"
echo "Havanın içindeki su buharı miktarının, o sıcaklıkta maksimum tutabileceği su buharı miktarına oranıdır (%)."
echo ""
echo "Mutlak Nem (Absolute Humidity) :"
echo "Belirli bir hacimdeki havada bulunan su buharı miktarıdır (g/m³)."
echo ""
# Kullanıcıdan sıcaklığı al
read -p "Ortam sıcaklığını girin (°C): " temperatureC
# Virgül varsa nokta ile değiştir
temperatureC=$(echo "$temperatureC" | tr ',' '.')
# Bağıl nem tahmini (basit model)
relativeHumidity=$(echo "50 - 0.5*($temperatureC - 20)" | bc -l)
# 5 ile 100 arasında sınırla
if (( $(echo "$relativeHumidity < 5" | bc -l) )); then
relativeHumidity=5
elif (( $(echo "$relativeHumidity > 100" | bc -l) )); then
relativeHumidity=100
fi
# Doygun buhar basıncı (hPa) - Magnus formülü
es=$(echo "6.112 * e((17.67 * $temperatureC) / ($temperatureC + 243.5))" | bc -l -q)
# Gerçek buhar basıncı (hPa)
e=$(echo "($relativeHumidity / 100) * $es" | bc -l)
# Mutlak nem (g/m³)
absoluteHumidity=$(echo "(216.7 * $e) / ($temperatureC + 273.15)" | bc -l)
# Ortam durumu
if (( $(echo "$temperatureC < 10" | bc -l) )); then
status="Soğuk"
elif (( $(echo "$temperatureC < 20" | bc -l) )); then
status="Ilık"
elif (( $(echo "$temperatureC < 30" | bc -l) )); then
status="Sıcak"
else
status="Aşırı sıcak"
fi
# Sonuçları göster
echo ""
printf "Sıcaklık : %.2f °C\n" "$temperatureC"
printf "Bağıl Nem : %.2f %%\n" "$relativeHumidity"
printf "Mutlak Nem : %.2f g/m³\n" "$absoluteHumidity"
echo "Ortam Durumu : $status"
# Betiğin kapanmasını önle
echo ""
read -p "Devam etmek için Enter'a basın..."
Ekli dosyalar
Son düzenleme: