با سلام
ببخسید دوستان من برنامه عدد رندوم از 1000 تا 10000 نوشتم اما حالا میخوام خروجی شبیه مثلا BRC1589 بهم بده
یعنی 3 کاراکتر اول حروف A تا Z به صورت رندوم و کنارش عدد 4 رقمی رندوم چاپ کنه خیلی لازمش دارم کسی میتونه کمکم کنه
با تشکر
با سلام
ببخسید دوستان من برنامه عدد رندوم از 1000 تا 10000 نوشتم اما حالا میخوام خروجی شبیه مثلا BRC1589 بهم بده
یعنی 3 کاراکتر اول حروف A تا Z به صورت رندوم و کنارش عدد 4 رقمی رندوم چاپ کنه خیلی لازمش دارم کسی میتونه کمکم کنه
با تشکر
private static Random random = new Random();
public static string RandomString()
{
const string chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
const string numbers = "0123456789";
var horoof = new string(Enumerable.Repeat(chars, 3)
.Select(s => s[random.Next(s.Length)]).ToArray());
var adad = new string(Enumerable.Repeat(numbers, 4)
.Select(s => s[random.Next(s.Length)]).ToArray());
return horoof + adad;
}
string rnd_string = string.Empty;
Random rnd = new Random();
for (int i = 0; i < 3; i++)
rnd_string += (char)rnd.Next(65, 90);
rnd_string += rnd.Next(1000, 10000);
Console.WriteLine(rnd_string);
سلام دوست عزیز با تشکر از پاسخت اما خطا میداد و اجرا نمی شد
انگار { اشتباه باز شده متوجه نشدم
اینو تو محیط کنسول باید بنویسم دیگه؟
سلام دوست عزیز
میشه، برای اینکار شما میتونی کد بالا رو توی یه متد بنویسی و هر کجا که لازم داشتی توی یه حلقه هر چقدر که خواستی اجراش کنی.
فقط در این صورت چون برای تولید عدد تصادفی از زمان سیستم استفاده میشه و چندتاشون ممکنه تو اون لحظه فراخوانی بشه امکان اینکه یه چند تا مثل هم باشه هست. برای همین بهتره شما یه پارامترهای دیگه هم اضافه کنی. مثلا عدد رندوم بدست اومده رو با یه عددی ضرب کنی و یا جمع کنی و یا حتی دوباره از ساعت سیستم کمک بگیری. و یا در حلقه ای که میخوای پشت سر هم چاپ کنی وقفه ایجاد کنی تا عدد بعدی توی یه زمان دیگه ای باشه.
خطاش چی هست؟سلام دوست عزیز با تشکر از پاسخت اما خطا میداد و اجرا نمی شد
انگار { اشتباه باز شده متوجه نشدم
اینو تو محیط کنسول باید بنویسم دیگه؟
عکس فرستادم البته من تو فرم کد گذاشتم یعنی یم دکمه گذاشتم داخل دکمه کد نوشتم
12.jpg
خب برادر مشکل از نوشتن خودتون هست داره میگه یک آکولاد اضافیه
using System;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private async void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < 100; i++)
{
listBox1.Items.Add(Rndm());
await Task.Delay(1);
}
}
private static string Rndm()
{
string rnd_string = string.Empty;
Random rnd = new Random();
for (int i = 0; i < 3; i++)
{
rnd_string += (char)rnd.Next(65, 90);
}
rnd_string += rnd.Next(1000, 10000);
return rnd_string;
}
}
}
لطفاً از پرسیدن سوال در خصوصی خودداری کنید.
قبل از ایجاد تاپیک، حتماً قوانین سایت را مطالعه فرمایید.
قوانین پرسش های دانشجویی
برای درست وارد شدن کد در قالب C# سایت، ابتدا کد رو درون Notepad.exe کپی سپس از اونجا به سایت در قالب C# منتفل کنید
نرم افزار code manager دستیار برنامه نویسان جهت نگهداری کد ها
با سلام
نمیدونم مشکل شما چیه ولی اگه از ویژوال استودیو مستقیم توی word کپی کنید قالب رو حفظ می کنه
WordFormat.JPG
موفق باشید
لطفاً از پرسیدن سوال در خصوصی خودداری کنید.
قبل از ایجاد تاپیک، حتماً قوانین سایت را مطالعه فرمایید.
قوانین پرسش های دانشجویی
برای درست وارد شدن کد در قالب C# سایت، ابتدا کد رو درون Notepad.exe کپی سپس از اونجا به سایت در قالب C# منتفل کنید
نرم افزار code manager دستیار برنامه نویسان جهت نگهداری کد ها
دوست من اگه قراره همش نوشته های تصادفی ایجاد شده رو کپی کنی توی یه فایل متنی و نیازی فرم و نشون دادن توی textbox و اینجور چیزا نیست میشه برنامه رو تغییر داد و اینجوری نوشت که مستقیم توی یه فایل متنی بنویسه. وقتتو هم نگیره. خواستی تو اون مورد هم کمکت میکنم فقط از اول کامل بگو که دقیقا چی میخوای تا هی نیاز به تغییر برنامه نباشه، هم وقت خودت هم برای منتظر موندن جواب از اینجا گرفته نشه
با سلام
کاش یکمم خودتون تلاش میکردید
کار با کتابخانه IO از مباحث پایه برنامه نویسی هست و منابعش بسیار زیاده، در ضمن شما اگر برنامه های اینچنین می خواید بهتره به دور از شلوغی و در محیط کنسول بنویسید
private static StringBuilder sb = new StringBuilder();
static void Main(string[] args)
{
for (int i = 0; i < 100; i++)
{
sb.AppendLine(Rndm());
System.Threading.Thread.Sleep(50);
}
System.IO.File.WriteAllText(@"C:\test.txt", sb.ToString());
}
موفق باشید
لطفاً از پرسیدن سوال در خصوصی خودداری کنید.
قبل از ایجاد تاپیک، حتماً قوانین سایت را مطالعه فرمایید.
قوانین پرسش های دانشجویی
برای درست وارد شدن کد در قالب C# سایت، ابتدا کد رو درون Notepad.exe کپی سپس از اونجا به سایت در قالب C# منتفل کنید
نرم افزار code manager دستیار برنامه نویسان جهت نگهداری کد ها