Вниз
Скачать: 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.061 c
15-1268415749
Leonid Troyanovsky
2010-03-12 20:42
2010.08.27
by Riply


15-1273624795
Sab
2010-05-12 04:39
2010.08.27
Раздача файлов web server


2-1267276280
lewka
2010-02-27 16:11
2010.08.27
Работа с архиватором


15-1265790438
12
2010-02-10 11:27
2010.08.27
Переведите пожалуйста на любой диалект VBA ..


15-1270041267
12
2010-03-31 17:14
2010.08.27
Прикольный рудимент. D7.XP.




   Наверх