এলোমেলো সংখ্যা তৈরি করা

PowerShell:
এলোমেলো সংখ্যা তৈরি করা

কিভাবে:

PowerShell Get-Random cmdlet ব্যবহার করে র্যান্ডম সংখ্যা উৎপন্ন করার জন্য একটি সরল পদ্ধতি অফার করে। এই cmdlet একটি নির্দিষ্ট পরিসীমা বা ডিফল্ট পরিসীমার মধ্যে র্যান্ডম সংখ্যা উৎপন্ন করতে পারে।

# 0 থেকে Int32.MaxValue পর্যন্ত একটি র্যান্ডম সংখ্যা উৎপন্ন করুন
$randomNumber = Get-Random
Write-Output $randomNumber

একটি পরিসীমা নির্দিষ্ট করতে, -Minimum এবং -Maximum প্যারামিটার ব্যবহার করুন:

# 1 থেকে 100 পর্যন্ত একটি র্যান্ডম সংখ্যা উৎপন্ন করুন
$randomNumber = Get-Random -Minimum 1 -Maximum 101
Write-Output $randomNumber

আরও বেশি নিয়ন্ত্রণের জন্য, আপনি System.Random ক্লাসের একটি অবজেক্ট তৈরি করতে পারেন:

# একটি সিরিজের জন্য System.Random ব্যবহার করা
$rand = New-Object System.Random
foreach ($i in 1..5) {
    $randomNumber = $rand.Next(1, 101)
    Write-Output $randomNumber
}

আপনি যদি একটি অ্যারে বা সংগ্রহ থেকে র্যান্ডম নির্বাচন প্রয়োজন হয়, Get-Random সরাসরি একটি আইটেম বাছাই করতে পারে:

# একটি অ্যারে থেকে র্যান্ডম নির্বাচন
$array = 1..10
$randomItem = Get-Random -InputObject $array
Write-Output $randomItem

গভীর ডুব

PowerShell এর Get-Random cmdlet .NET ক্লাস System.Random ব্যবহার করে pseudorandom সংখ্যা উৎপন্ন করে। এগুলি “প্সিউডো” কারণ এগুলি এমন সিরিজ তৈরি করতে এলগোরিদম ব্যবহার করে যা শুধু র্যান্ডম হিসেবে মনে হয়। অধিকাংশ অ্যাপ্লিকেশনের জন্য, এই ধরনের র্যান্ডমনেস যথেষ্ট। তবে, ক্রিপ্টোগ্রাফিক নিরাপত্তা প্রয়োজনীয় ক্ষেত্রে, System.Random তার প্রেডিক্টেবল প্রকৃতির কারণে উপযুক্ত নয়।

PowerShell এবং .NET System.Security.Cryptography.RNGCryptoServiceProvider ক্রিপ্টোগ্রাফিক র্যান্ডমনেসের জন্য প্রস্তাবনা করে যা এনক্রিপশন কী অথবা অন্যান্য নিরাপত্তা-সংবেদনশীল অপারেশন তৈরির জন্য আরও উপযুক্ত:

# ক্রিপ্টোগ্রাফিকভাবে নিরাপদ র্যান্ডম সংখ্যা
$rng = [System.Security.Cryptography.RNGCryptoServiceProvider]::new()
$bytes = New-Object byte[] 4
$rng.GetBytes($bytes)
$randomNumber = [BitConverter]::ToInt32($bytes, 0)
Write-Output $randomNumber

যদিও Get-Random এবং System.Random স্ক্রিপ্টিং এবং অ্যাপ্লিকেশন লজিকে র্যান্ডমনেসের বিস্তৃত সেটের চাহিদা মেটায়, বিশেষ করে নিরাপত্তা-কেন্দ্রিক অ্যাপ্লিকেশনগুলিতে যেখানে প্রেডিক্ট্যাবিলিটি একটি ভালনারাবিলিটি তৈরি করতে পারে সেখানে সঠিক টুল নির্বাচন করা অপরিহার্য।