|
Тема
|
Visual Basic
|
|
Автор | iiiiiii (Нерегистриран) |
Публикувано | 17.10.01 12:38 |
|
Neobhodim mi e algorituma za korektnost na EGN, po vazmojnost na VB.
Blagodaria vi predvaritelno
| |
Тема
|
Re: Visual Basic
[re: iiiiiii]
|
|
Автор | FullScream (Нерегистриран) |
Публикувано | 17.10.01 13:00 |
|
Po princip na VB se pishat programi a ne algoritmi :))
| |
Тема
|
Re: Visual Basic
[re: iiiiiii]
|
|
Автор | Nejdet (Нерегистриран) |
Публикувано | 18.10.01 14:31 |
|
Pogledni na
http://www.grao.government.bg/
| |
|
Единният Граждански Номер (ЕГН) се състои от 10 цифри. Първите 6 цифри са дата на раждане (ГГММДД), следващите 3 са поредност на раждането - число от 000 до 999 и десетата цифра е контролна.
Разряди на ЕГН:
Коректността на ЕГН се установява чрез проверка на датата, пола на лицето и контролната цифра.
1. Проверка на датата
Проверяват се денят, месецът и годината за валидна дата. За родените преди 01.01.1900 г. към месеца се прибавя числото 20. За родените след 31.12.1999 г. към месеца се прибавя числото 40.
2. Проверка на пол
Деветата цифра на ЕГН (К9) е четна за мъже и нечетна за жени.
3. Алгоритъм за изчисляване на контролната цифра
На всяка цифра от първите девет от ляво на дясно т.е. от К1 до К9, започвайки от К1 се определят следните тегла: 2 4 8 5 10 9 7 3 6. Всяка от цифрите на ЕГН се умножава по съответното тегло и получените произведения се сумират. Сумата от произведенията се дели на 11. Получения остатък е контролното число, като при остатък 0 или 10 контролната цифра е 0.
Примери:
7524169268 Мъж, с дата на раждане 16.04.1875 г.
7501010010 Жена, с дата на раждане 01.01.1975 г.
7552010005 Мъж, с дата на раждане 01.12.2075 г.
8032056031 Жена, с дата на раждане 05.12.1880 г.
8001010008 Мъж, с дата на раждане 01.01.1980 г.
7552011038 Жена, с дата на раждане 01.12.2075 г.
8141010016 Жена, с дата на раждане 01.01.2081 г
Със заповед N РД 02-14-637/22.06.1998 година министърът на регионалното развитие и благоустройството и председател на "Информационно общество" г-н Евгений Бакърджиев утвърди промяната, касаеща ЕГН за лицата, които ще бъдат родени след 31.12.1999 г.
| |
Тема
|
Re: Visual Basic
[re: kozoder]
|
|
Автор | anika (Нерегистриран) |
Публикувано | 20.10.01 11:57 |
|
ti si bil mnogo gotin
imalo i dobri hora tuka!!!

| |
Тема
|
Eto go i algorituma
[re: iiiiiii]
|
|
Автор |
Shveik (Администратор) |
Публикувано | 20.10.01 14:12 |
|
Az sum go pisal na pascal ti sam si go prevedi na basic
function Check_EGN(EGN: string): Boolean;
{Проверка за правилно контр. число на ЕГН }
const
Ex10: array [1..10] of Longint =
(1000000000,100000000,10000000,
1000000,100000,10000,1000,100,10,1);
var
Nm : array [1..10] of Longint;
Code : Integer;
C_num: Longint;
n_egn: Double;
n: Integer;
begin
Result := False;
Val(EGN, N_Egn, code);
{ Преобразува символната променлива ЕGN в числова N_Egn }
if Code <> 0 then Exit;{ Ако има нецифрови данни или няма въведени данни отива на грешка}
for n := 1 to 10 do
begin
Nm[n] := Trunc( n_egn/Ex10[n] ); { Получава се поредното число от ЕГН в масива Nm }
N_egn := Round( Frac(n_egn/Ex10[n]) * Ex10[n] ); {Подготовка за получаване на следващото число}
end;
{ Изчислява контролното число }
C_num := (Nm[1]*2 + Nm[2]*4 + Nm[3]*8 +
Nm[4]*5 + Nm[5]*10 + Nm[6]*9 +
Nm[7]*7 + Nm[8]*3 + Nm[9]*6) mod 11;
if C_num = 10 then c_num := 0;
if C_num = Nm[10] then
Result := True;
end;
Дори и да не можеш - ТРЯБВА.
Щом трябва значи МОЖЕШ.Редактирано от Shveik на 20.10.01 14:15.
| |
Тема
|
Re: Visual Basic
[re: kozoder]
|
|
Автор | iiiiiii (Нерегистриран) |
Публикувано | 22.10.01 12:59 |
|
Blagodaria Vi mnogo
| |
|
|
|
|