برنامه نویس

به وبلاگ خودتان خوش آمدید.

برنامه نویس

به وبلاگ خودتان خوش آمدید.

سورس صحت سنجی کد ملی

کد ملی شماره ای است 10 رقمی که از سمت چپ سه رقم کد شهرستان ، شش رقم بعدی کد منحصر به فرد برای فرد دارنده و رقم آخر آن هم یک رقم کنترل است که از روی 9 رقم سمت چپ بدست می آید. برای بررسی کنترل کد کافی است مجدد از روی 9 رقم سمت چپ رقم کنترل را محاسبه کنیم
از آنجایی که درسیستم کد ملی معمولا قبل از کد تعدادی صفر وجود دارد.(رقم اول و رقم دوم از سمت چپ کد ملی ممکن است صفر باشد) و در بسیاری از موارد ممکن است کاربر این صفرها را وارد نکرده باشد و یا نرم افزار این صفرها را ذخیره نکرده باشد بهتر است قبل از هر کاری در صورتی که طول کد بزرگتر مساوی 8 و کمتر از 10 باشد به تعداد لازم (یک تا دو تا صفر) به سمت چپ عدد اضافه کنید. ساختار کد ملی در زیر نشان داده شده است

1- برای محاسبه رقم کنترل از روی سایر ارقام ، هر رقم را در موقعیت آن ضرب کرده و حاصل را با هم جمع می کنیم.
2- مجموع بدست آمده از مرحله یک را بر 11 تقسیم می کنیم
3- اگر باقیمانده کمتر از 2 باشد ، رقم کنترل باید برابر باقیمانده باشد در غیر اینصورت رقم کنترل باید برابر یازده منهای باقیمانده باشد


به عنوان مثال 4709450552
باید از سمت چپ یکی یکی اعداد را از 10 به پایین ضرب کنیم البته تا 9 تا عدد یعنی 470945055

40=10*4
63=9*7
0=8*0
63=7*9
24=6*4
25=5*5
0=4*0
15=3*5
10=2*5

 

خوب حالا باید تمام این حاصلضرب ها رو با هم جمع کنیم
که میشه 240
حالا باید این عدد رو تقسیم بر 11 کنیم البته ما با باقیمانده تقسیم کار داریم
اگر باقیمانده از 2 کوچکتر بود همون عدد میشه رقم آخر کد ملی
اما اگر از 2 بیشتر بود 11 رو منهای باقیمانده میکنیم
در این مثال باقیمانده عدد 9 میشه
2=9-11
پس کد اخر میشه عدد 2 حالا به کد ملی ما نگاه کنید 4709450552
شما هم میتونید از همین روش بفهمید که کد ملی درست وارد شده یا نه
امید وارم خوب تونسته باشم توضیح بدم 

 

ادامه مطلب ...

تبدیل تاریخ میلادی به شمسی در VB.NET

این برنامه ازچهارتابع استفاده می کند که به شرح زیر است:

1- تابع DateShamsi: این تابع درواقع تابع اصلی برنامه است و می توانید هرجا که خواستید عمل تبدیل تاریخ میلادی به شمسی را انجام دهید این تابع را صدا بزنید.

2- تابع ValDayMiladi: این تابع به محاسبه کل روزهای سپری شده ازتاریخ میلادی تاحال می پردازد و نتیجه خودرا به تابع اصلی برنامه برمیگرداند.

3- تابع ValDaySal : این تابع ابتدا تعداد کل روزهای سپری شده ازتاریخ شمسی را ازورودی دریافت می کند سپس به محاسبه سال شمسی می پردازد وبرای محاسبه ماه وروز تاریخ شمسی از تابع TarikhShamsi کمک می گیرد سپس نتیجه کار که همان تاریخ شمسی است را به تابع اصلی برنامه تحویل می دهد.

4- تابع TarikhShamsi : این تابع به محاسبه ماه و روز تاریخ شمسی می پردازد.
حال برنامه در VB.NET به صورت زیر است:

ادامه مطلب ...

تولید اعداد تصادفی در VB.NET

تولید اعداد تصادفی در VB.NET بهتر شده است به صورتی که شما به راحتی می توانید با استفاده از کلاس Random اقدام به تولید اعداد تصادفی کنید .
برای این کار ابتدا شی را از کلاس Random ایجاد کنید تا از طریق آن شی به متدهای کلاس Random دسترسی پیدا کنید برای ایجاد شی می توانید از یکی از دو دستور زیر استفاده کنید:

ادامه مطلب ...