PowerShell'de Şans Topu Versiyon 2
Gönderilme zamanı: 28 Eyl 2025 08:04
KOD İÇERİK AÇIKLAMASI : ( Şans_Topu_PS v2.ps1)
Bu kodladığım PowerShell koduyla, bir şans oyunu (gerçek Milli Piyango Şans Topu Oyunun bire bir benzetimidir.) için rastgele sayı kombinasyonları oluşturur ve bunları belirli bir formatta ekrana yazdırır.
Kod Analiz Özetlemesi :
Renk Paleti Tanımlama: Koyu tonlarda renkler, ana sayılar için bir palet olarak tanımlanır. Bonus sayı için ise koyu gri bir renk seçilir.
Toplam Kombinasyon Hesaplama: Toplam kombinasyon sayısı hesaplanır ve bu kombinasyonların olasılığı yüzdesel olarak belirlenir.
Rastgele Seçim: 6 tur boyunca her turda 5 ana sayı (1-34 arası) ve 1 bonus sayı (1-14 arası) rastgele seçilir. Seçimler bir diziye eklenir.
Başlık Yazdırma: Ekrana başlık ve alt çizgi ile ayırıcı bir çizgi yazdırılır.
Sonuçların Yazdırılması: Her tur için seçilen sayılar, belirlenen renklerle birlikte ekrana yazdırılır. Bonus sayı ve olasılık da gösterilir.
Hata Yönetimi: Hatalar yakalanır ve kullanıcıya bildirilir.
Ana Menü: Kullanıcıya betiği sonlandırma veya çekilişi tekrarlama seçeneği sunulur. Kullanıcının seçimine göre döngü devam eder veya sonlanır.
EKRAN GÖRÜNTÜSÜ : (Sistem : Windows 11 Yapı 24H2 x64 Home TR)
KOD İÇERİĞİ :
Bu kodladığım PowerShell koduyla, bir şans oyunu (gerçek Milli Piyango Şans Topu Oyunun bire bir benzetimidir.) için rastgele sayı kombinasyonları oluşturur ve bunları belirli bir formatta ekrana yazdırır.
Kod Analiz Özetlemesi :
Renk Paleti Tanımlama: Koyu tonlarda renkler, ana sayılar için bir palet olarak tanımlanır. Bonus sayı için ise koyu gri bir renk seçilir.
Toplam Kombinasyon Hesaplama: Toplam kombinasyon sayısı hesaplanır ve bu kombinasyonların olasılığı yüzdesel olarak belirlenir.
Rastgele Seçim: 6 tur boyunca her turda 5 ana sayı (1-34 arası) ve 1 bonus sayı (1-14 arası) rastgele seçilir. Seçimler bir diziye eklenir.
Başlık Yazdırma: Ekrana başlık ve alt çizgi ile ayırıcı bir çizgi yazdırılır.
Sonuçların Yazdırılması: Her tur için seçilen sayılar, belirlenen renklerle birlikte ekrana yazdırılır. Bonus sayı ve olasılık da gösterilir.
Hata Yönetimi: Hatalar yakalanır ve kullanıcıya bildirilir.
Ana Menü: Kullanıcıya betiği sonlandırma veya çekilişi tekrarlama seçeneği sunulur. Kullanıcının seçimine göre döngü devam eder veya sonlanır.
EKRAN GÖRÜNTÜSÜ : (Sistem : Windows 11 Yapı 24H2 x64 Home TR)

KOD İÇERİĞİ :
Kod: Tümünü seç
do {
try {
# Renk paleti (dark tonlar) ana sayılar için
$colors = @("DarkRed","DarkGreen","DarkYellow","DarkBlue","DarkMagenta","DarkCyan")
# Şans sayısı için koyu ama görünür renk
$bonusColor = "DarkGray"
# Toplam kombinasyon sayısı
$totalCombinations = [math]::Round((278256 * 14),0)
$probPercent = [math]::Round((1 / $totalCombinations) * 100, 8)
# 6 tur × 6 set saklama
$allSelections = @()
for ($round=1; $round -le 6; $round++) {
# 5 ana sayı (1-34), tekrar yok
$mainNumbers = (1..34 | Get-Random -Count 5 | Sort-Object)
# 1 şans sayısı (1-14)
$bonusNumber = Get-Random -Minimum 1 -Maximum 15
$allSelections += ,@($mainNumbers + $bonusNumber)
}
# Başlık
Write-Host ""
Write-Host ("{0,-12} {1,3} {2,3} {3,3} {4,3} {5,3} {6,5} {7,10}" -f "Tur","S1","S2","S3","S4","S5","Şans","Olasılık(%)")
Write-Host ("-"*60)
# Satırları yaz ve renklendir
for ($i=0; $i -lt $allSelections.Count; $i++) {
$row = $allSelections[$i]
$color = $colors[$i % $colors.Count]
# Ana sayılar
$mainPart = ("{0,-12} {1,3} {2,3} {3,3} {4,3} {5,3}" -f ("Şans Topu " + ($i+1)), $row[0], $row[1], $row[2], $row[3], $row[4])
Write-Host $mainPart -ForegroundColor $color -NoNewline
# Şans sayısı ve olasılık
Write-Host (" {0,5} {1,10}" -f $row[5], $probPercent) -ForegroundColor $bonusColor
}
} catch {
Write-Host "Hata oluştu: $_"
}
# Ana menü
Write-Host ""
Write-Host "Ana Menü:"
Write-Host "0 = Betiği sonlandır"
Write-Host "1 = Çekilişi tekrarla"
$choice = Read-Host "Seçiminiz (0/1)"
} while ($choice -eq "1")
Write-Host "`nBetiğin çalışması tamamlandı. Çıkmak için Enter'a basın..."
Read-Host