সুতরাং এই কোডবিটে আমার লক্ষ্য এলোমেলোভাবে দুটি ডাইস রোল করা এবং আমরা সবাই জানি যে আপনার নিয়মিত ডাইয়ের কেবল 6 টি দিক রয়েছে তাই আমি আরকি 4 ব্রান্ডম_উনিফর্ম (ইউআইএনটি 32) এ অ্যাক্সেসের জন্য ফাউন্ডেশন আমদানি করেছি। আমি এলোমেলোভাবে 0 পেতে এড়াতে (1..7) এর ব্যাপ্তিটি ব্যবহার করার চেষ্টা করেছি তবে এটি এমন একটি ত্রুটি ঘটেছে যা আমি খুব বেশি উপভোগ করি না। আমি এটি করার চেষ্টা করেছি:
dice1 = arc4random_uniform(UInt32(1..7))
তবে তা ফিরে এসেছিল
সরবরাহ করা আর্গুমেন্ট গ্রহণ করে এমন 'আরআইডি' এর জন্য কোনও ওভারলোড খুঁজে পাওয়া যায়নি
আমি আশা করি এটি আমাকে সাহায্য করার জন্য আপনার জন্য আশ্চর্যজনক ডিবস যথেষ্ট তথ্য আছে :)
দয়া করে মনে রাখবেন আমি দ্রুত খেলার অনুশীলন করতে খেলার মাঠে এটি করছি। এটি কীভাবে করা যায় তা শিখাই জরুরী নয়; সত্যিকারের অ্যাপ্লিকেশনগুলি তৈরির আগে আমি লাফিয়ে উঠি: ডি
//imports random number function
import Foundation
//creates data storage for dice roll
var dice1: UInt32 = 0
var dice2: UInt32 = 0
//counter variable
var i = 0
//how many times snake eyes happens
var snakeeyes = 0
//how many times a double is rolled
var `double` = 0
//rolls dice 100 times
while i < 100{
//from here
//sets dice roll
এটি 'ব্যাপ্তি $ T3' এর ত্রুটিটি UInt32 এ রূপান্তরযোগ্য নয় returns
dice1 = arc4random_uniform(1..7) dice2 = arc4random_uniform(1..7)
//checks for snake eyes
if dice1 == 1 && dice2 == 1 {
snakeeyes = snakeeyes + 1
}
//checks for doubles
if dice1 == dice2{
`double` = `double` + 1
}
//increases counter
i = i + 1
//to here
}
println("You got Snake Eyes \(snakeeyes) times.")
println("You got Doubles, \(`double`) times.")
u_int32_t arc4random_uniform(u_int32_t upper_bound);
dice1 = arc4random_uniform(6) + 1
1 - 6 এর ব্যাপ্তি পেতে আপনার করা উচিত I আমি আইওএস উদ্দেশ্য সি করি না বা তত্পরতার বিষয়ে কোনও জ্ঞানও নেই। এলোমেলো পদ্ধতি আপনাকে 0 - 5, এবং + 1 প্রদান করবে 1 - 6