Вниз
Скачать: CL | DM;

сравнение числа с маской   Найти похожие ветки 

 
tippa ©   (2010-04-18 20:04) [0]

Не могу написать функцию, которая берет маску в виде строки (например "XXYZZZ") и число, и возвращает true, если число подходит к этой маске.
function proverim(mask:string;n:integer):boolean;
//proverim("ZXXVVV",166000)->true

Дайте пожалуйста совет.


 
И. Павел ©   (2010-04-18 20:11) [1]

Как вариант:
Сперва сравниваем длины числпа и маски. Потом берем первую цифру числа - проходим по всем остальным цифрам - если маска та же а цифра другая - возвращаем ложь. Потом переходим к второй цифре и т.д.


 
DVM ©   (2010-04-18 20:28) [2]


> tippa ©

Может регулярные выражения использовать?


 
tippa ©   (2010-04-18 22:09) [3]

спс, вроде работает)
function maska(mask:string;n:string):boolean;
var i,j:integer;
   len:integer;//длина маски и числа
begin
Result:=true;
if length(mask)<>length(n) then
                                begin
                                Result:=false;
                                exit
                                end;
len:=length(mask);
for i:=1 to len do
 begin
 for j:=1 to len do
   begin
   if (mask[i]=mask[j]) and (n[i]<>n[j]) then
                                         begin
                                         Result:=false;
                                         exit
                                         end;
   end;
 end;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.048 c
4-1234253553
OlegNik
2009-02-10 11:12
2010.08.27
Доп. информация об устройствах.


15-1273420960
Виктор
2010-05-09 20:02
2010.08.27
Защита приложения


6-1224184143
ASMiD
2008-10-16 23:09
2010.08.27
OPC


15-1274780094
@!!ex
2010-05-25 13:34
2010.08.27
Что это?


2-1271933283
rail
2010-04-22 14:48
2010.08.27
Запускной файл




   Наверх