![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
я не знаю что надо написать чтобы программа проверяла числа
![]() |
|
#2
|
||||
|
||||
|
Элеменатрно...
Код:
//Есть число n
var
n : Word;//число
s : String;//строка-массив символов
i, j : word;
check : boolean;
begin
Check := True;
s := IntToStr;//перевести число в строку
for i := 0 to Length(s)-1 do//от нуля до конца строки
for j := i to Length(s)-1 do//от определенного символа до конца строки
if S[i]=S[j] then//если определенный символ совпадает с любым остальным
Check := false;//то проверка не пройдена
if Check then//если проверка пройдена
ShowMessage('Сопадений нет')
else//если проверка не пройдена
ShowMessage('Совпадения есть');
end;Последний раз редактировалось NIch, 29.12.2009 в 09:08. |
|
#3
|
||||
|
||||
|
Сперва получить из числа все цифры
Проще всего переведя в строку - тогда каждый символ и есть число. Если нельзя через строку, последовательно mod и div. Далее по очереди ( в цикле ) берешь цифрыот первй до предпоследней и сравниваешь их ( в еще одном цикле ) с цифрами от следующей до последней. Если нашел хоть одно совпадение - высказывание ложно. _________ ЗЫ: опоздал - поправлю NIch : строки вроде начинаются с 1 и при j := i - S[i]=S[j] ( у меня "на коленке" и похуже бывает ) Последний раз редактировалось s0Creator, 29.12.2009 в 09:11. |
|
#4
|
||||
|
||||
|
А через множества не проще?
|
|
#5
|
||||
|
||||
|
Цитата:
|
|
#6
|
||||
|
||||
|
Цитата:
Код:
var
st:string; mn:set of char; i:byte; ok:boolean;
begin
st:=Edit1.Text;
ok:=true;
for i:=1 to Length(st) do begin
if st[i] in mn then ok:=false
else mn:=mn+[st[i]];
end;
if ok=true then ShowMessage('Win!') else ShowMessage('Fail!');
end;Это если вводить текстом число. Если оно просто целым числом передается, вначале преобразуй его в строку и все. А так - эта прога будет работать даже для буквенных строк, в принципе. |
|
#7
|
|||
|
|||
|
спасбо всем с наступающим вас )
проверю ![]() |