Kod: Tümünü seç
<?php
class User {
public $id;
public $balance;
public $norGold;
public function __construct($id, $balance, $norGold) {
$this->id = $id;
$this->balance = $balance;
$this->norGold = $norGold;
}
public function buyNorGold($amount, $currentNorGoldPrice) {
$totalCost = $amount * $currentNorGoldPrice;
if ($totalCost <= $this->balance) {
$this->balance -= $totalCost;
$this->norGold += $amount;
return true;
} else {
return false; // Yetersiz bakiye
}
}
public function sellNorGold($amount, $currentNorGoldPrice) {
if ($amount <= $this->norGold) {
$this->balance += $amount * $currentNorGoldPrice;
$this->norGold -= $amount;
return true;
} else {
return false; // Yetersiz NoRGold miktarı
}
}
}
// Örnek kullanıcılar
$users = [
new User(1, 50000, 10),
new User(2, 50000, 10),
new User(3, 50000, 10),
new User(4, 50000, 10),
new User(5, 50000, 10)
];
// Başlangıç NoRGold fiyatı
$currentNorGoldPrice = 50; // Örneğin, 1 NoRGold = 50 birim para birimi
// Kullanıcılar alım satım yapabilir
$userToBuy = $users[0];
$userToSell = $users[1];
$buyAmount = 3;
$sellAmount = 2;
// Alım işlemi
if ($userToBuy->buyNorGold($buyAmount, $currentNorGoldPrice)) {
echo "Kullanıcı {$userToBuy->id}, {$buyAmount} NoRGold satın aldı. Yeni bakiye: {$userToBuy->balance}, NoRGold miktarı: {$userToBuy->norGold}\n";
} else {
echo "Alım işlemi başarısız. Yetersiz bakiye\n";
}
echo "<hr>";
// Satım işlemi
if ($userToSell->sellNorGold($sellAmount, $currentNorGoldPrice)) {
echo "Kullanıcı {$userToSell->id}, {$sellAmount} NoRGold sattı. Yeni bakiye: {$userToSell->balance}, NoRGold miktarı: {$userToSell->norGold}\n";
} else {
echo "Satım işlemi başarısız. Yetersiz NoRGold miktarı\n";
}
?>