۱۳۸۸ اسفند ۱۵, شنبه

فرمول تشخیص صحت کد ملی ( کارت ملی شناسایی )

در این مقاله می خواهم به شما طریقه تشخیص صحت کد ملی را که ممکن است در زبانهای برنامه نویسی

مختلف و در فرمهای ورود اطلاعات مورد نیاز شما باشد را آموزش دهم.

همانطور که می دانید همه ارگانها و سازمانهای دولتی جمهوری اسلامی و شرکتهای تابعه موظف شده اند از

این پس فیلد جدیدی در کنار مشخصات افراد به نام کد ملی درج نمایند و تقریبا همه هموطنان عزیز در حال حاضر کارت ملی را دارند. ولی ما به عنوان یک برنامه نویس وقتی در فرمی کد ملی را دریافت می کنیم چگونه از صحت کد وارد شده مطمئن شویم.

سازمان ثبت احوال کشور در راستای ارائه کارت ملی روشی را برای تولید کدهای ملی استفاده نموده است که با استفاده از آنها می توانیم کدهایی داشته باشیم که از امنیت بالایی برخوردار باشند و همچنین قابلیت تقلب نداشته باشند.

همه کدهای ملی ۱۰ رقمی هستند.

کدهای ملی که همه ارقام آنها مثل هم باشند معتبر نیستند مثل

۰۰۰۰۰۰۰۰۰۰

۱۱۱۱۱۱۱۱۱۱

۲۲۲۲۲۲۲۲۲۲

۳۳۳۳۳۳۳۳۳۳

۴۴۴۴۴۴۴۴۴۴

۵۵۵۵۵۵۵۵۵۵

۶۶۶۶۶۶۶۶۶۶

۷۷۷۷۷۷۷۷۷۷

۸۸۸۸۸۸۸۸۸۸

۹۹۹۹۹۹۹۹۹۹

روش اعتبار سنجی کد ملی :

دهمین رقم شماره ملی را ( از سمت چپ ) به عنوان A در نظر می گیریم.

یک مقدار B در نظر می گیریم و آن را برابر با =

(اولین رقم * ۱۰) + ( دومین رقم * ۹ ) + ( سومین رقم * ۸ ) + ( چهارمین رقم * ۷ ) + ( پنجمین رقم * ۶) + ( ششمین رقم * ۵ ) + ( هفتمین رقم * ۴ ) + ( هشتمین رقم * ۳ ) + ( نهمین رقم * ۲ )

قرار می دهیم.

مقدار C را برابر با = B – (B/11)*11 قرار می دهیم.

اگر مقدار C برابر با صفر باشد و مقدار A برابر C باشد کد ملی صحیح است.

اگر مقدار C برابر با ۱ باشد و مقدار A برابر با ۱ باشد کد ملی صحیح است.

اگر مقدار C بزرگتر از ۱ باشد و مقدار A برابر با ۱۱ – C باشد کد ملی صحیح است.

در پایان یک نمونه کد جاوا اسکریپت جهت چک کردن کد ملی تقدیم می گردد //

function checkMelliCode(varmellicode)
{
var meli_code;
meli_code=varmellicode.value;
if (meli_code.length == 10)
{
if(meli_code==’1111111111′ ||
meli_code==’0000000000′ ||
meli_code==’2222222222′ ||
meli_code==’3333333333′ ||
meli_code==’4444444444′ ||
meli_code==’5555555555′ ||
meli_code==’6666666666′ ||
meli_code==’7777777777′ ||
meli_code==’8888888888′ ||
meli_code==’9999999999′ )
{
alert(“کد ملی صحیح نمی باشد”);
objcode.focus();
return false;
}
c = parseInt(meli_code.charAt(9));
n = parseInt(meli_code.charAt(0))*10 +
parseInt(meli_code.charAt(1))*9 +
parseInt(meli_code.charAt(2))*8 +
parseInt(meli_code.charAt(3))*7 +
parseInt(meli_code.charAt(4))*6 +
parseInt(meli_code.charAt(5))*5 +
parseInt(meli_code.charAt(6))*4 +
parseInt(meli_code.charAt(7))*3 +
parseInt(meli_code.charAt(8))*2;
r = n – parseInt(n/11)*11;
if ((r == 0 && r == c) || (r == 1 && c == 1) || (r > 1 && c == 11 – r))
{
return true;
}
else
{
alert(“کد ملی صحیح نمی باشد”);
objcode.focus();
return true;
}
}
else
{
return true;
}

» ادامه مطلب

سفره ی هفت سین عید نوروز

یکی از مشکلاتی که در هنگام کار با ابزارهای پرتابل مثل موبایل یا پخش‌کننده‌های موسیقی داریم این است که کار با صفحه لمسی یا دکمه‌های کوچک آنها، آن چنان که باید آسان نیست. مثلا ورزشکاری را تصور کنید که هنگام دویدن عادت دارد به موسیقی گوش کند، پیداست که عوض کردن قطعات موسیقی برای او ساده نیست. تصور کنید که در یک خیابان شلوغ در حالی که در یک دستتان، نایلون خرید را دارید، می‌خواهید پاسخ SMS دوستتان را بدهید. ما به دفعات به مشکلاتی مشابه دو مثال بالا در زندگی روزانه‌مان برخورد می‌کنیم. اما فناوری جدید که مایکروسافت و دانشگاه «کارنیگی ملون» ابداع کرده‌اند، ممکن است به این دردسر خاتمه دهد.
در فناوری جدید، قسمتی از پوست بدن مثل جلوی ساعد می‌تواند مبدل به یک صفحه لمسی شود. فناوری جدید Skinput نام دارد و خود متشکل از دو فناوری دیگر است:
۱- وقتی شما با انگشت به قسمت‌های مختلف دستتان ضربه می‌زنید بر حسب جایی که ضربه وارد می‌شود، امواج صوتی با شدت و فرکانس‌های مختلف تولید می‌شود. حس‌گری این امواج صوتی را می‌گیرد و به پردازنده سیستم می‌فرستد تا مشخص شود، کاربر کجا دستش را لمس کرده است. صوتی که در هنگام لمس کف دست، انگشتان یا نقاط مختلف ساعد ایجاد می‌شود، ویژگی‌های مختلف دارند، تفاوت بافت نرم، ماهیچه‌ها و استخوان‌های قسمت‌های مختلف دست، باعث این اختلاف می‌شود.
۲- یک پروژکتور بسیار کوچک، که با بازوبندی به بازو بسته می‌شود و تصویر را روی ساعد یا کف دست می‌تاباند.
حتی هنگامی که در حال حرکت باشید، باز هم این سیستم به درستی عمل می‌کند. به علاوه لازم نیست همیشه پروژکتور کوچک روشن باشد، مثلا شما برای کار با یک پخش‌کننده موسیقی می‌توانید از سرانگشتان یک دست را به جای دکمه‌های وسیله، مورد استفاده قرار بدهید، کافی است که به خاطر بسپارید که مثلا لمس انگشت شست، صدای سیستم را بلند می‌کند، یا لمس انگشت کوچک دست، باعث پخش ترک بعدی می‌شود.
بنابراین به زودی باید شاهد افرادی باشید که مثل دیوانه‌ها در حال لمس کردن و خاراندن مناطق مختلف دستشان هستند و ما فقط اگر مطلع باشیم و بدانیم چنین فناوری‌ای وارد بازار شده، بعد از چند لحظه درنگ متوجه قضیه می‌شویم!
همان طور که عادت‌کرده‌ایم که افرادی را ببینیم که در ظاهر در خیابان بلند بلند با خودشان حرف می‌زنند و در واقع در حال صحبت با هدست بلوتوث‌شان هستند، با این فناوری هم کنار خواهیم آمد!
این ویدئو را حتما ببینید.
منبع: نیوساینتیست
» ادامه مطلب

شعر طنز سال نو

سال نو

می شود امسال بهتر سال نو

بهتر از هر سال دیگر ، سال نو

می شود با لطفِ مسوولین امر

غصه و غم خاک برسر ، سال نو !

یا پیامک می رسد از دوستان

یا که می آید نمابر سال نو !

نیست بعد از توپ و تانک و فشفشه

صحبت از شیر سماور ، سال نو !

طبق تمهیدات مجلس بعد از این

می رود تا ماه آذر سال نو !

کارمند از فرط بی دردی فقط

کیف خواهد کرد با هر سال نو !

هفت گاو چاق دارد می خورد

هفت تایی گاو لاغر ، سال نو

پس برای صرفه جویی جای مرغ

حال کن با تخم کفتر ، سال نو!

این شکافِ بین ما و زندگی

می شود این بار کمتر ،سال نو

چرخ پر باد تورم چارتاش ،

می شود بدجور پنچر سال نو !

می نماید دولت خدمتگذار

کوچه ها را سنگ مرمر ، سال نو !

با کمی تغییر در جنس بشر

می شود خواهر ، برادر سال نو !

) یعنی از جنس مونث می توان ،

ساخت یک جنس مذکر سال نو ! (

رشد خواهد کرد هر چیزی ! به جز

طفلکی این دبّ اصغر ، سال نو !

هر کسی پایین منبر بوده است

می رود بالای منبر ، سال نو !

خاک بر فرق کسی که می زند

همچنان از پشت خنجر ،سال نو

گرگ چندی در لباس میش رفت

می شود رو دستش آخر ، سال نو

آن که بالا بوده می آید به زیر

با زرنگی می رود در ، سال نو !

از در و دیوار مهمان می رسید

میهمان ؟ نه ! قوم بربر ، سال قبل !

حکم این جانب وَ آن الواط ها

یک مویز و چل قلندر ، سال قبل !

نامسلمانی که می دیدم شدید

می شدم از بیخ کافر ، سال قبل !

مثل دریا بود و ما را غرق کرد ،

درخودش نرخ شناور سال قبل !

جای نان با بچه گفتم می خرم

من برایت باز مادر ، سال قبل !

من پسر می خواستم ، البته باز

همسرم زایید دختر ! سال قبل

گور بابایش ولی این بار شد

ظاهرا از ما مکّدر ، سال قبل !

مثل ابراهیم اگر فرصت شود

می دوم دنبال هاجر ، سال نو !

فکر تجدید فراشم ، منتها

زن نمی گیرم مگر ، در سال نو !

از کتاب خاطراتم میوه رفت

می رسد اما چغندر سال نو !

بچه می خواهد لباس و پول نیست

باز شد صحرای محشر ، سال نو

» ادامه مطلب