![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
У меня есть строка и массив:
Код:
Word:string; symbols:array['a'..'z'] of string; Введите символ: d Символ 'd' занимает 4 место в массиве. |
|
#2
|
||||
|
||||
|
Код:
function rs(ds:char): integer; var с: char; i: integer; begin i:= 1; for c:= 'a' to 'z' do if c = ds then Result:= i else inc(i); end; |
| Этот пользователь сказал Спасибо Alegun за это полезное сообщение: | ||
serega6531 (26.05.2013)
| ||
|
#3
|
|||
|
|||
|
Цитата:
|
|
#4
|
||||
|
||||
|
Возможно тебе нужна ф-ция типа Ord('символ') - возвращает позицию символа в ASCII table.
Код:
pos:=ord('символ')-ord('a');Цитата:
Код:
Word:Char; Иначе перебором, как Alegun, но чуть-чуть по-другому: Код:
function rs(ds:string): integer;
var
с: char;
i: integer;
begin
i:= 1;
for c:= 'a' to 'z' do
if symbols[c] = ds then
begin
result:=i;
break;
end else inc(i);
end; |
|
#5
|
||||
|
||||
|
Цитата:
Код:
function CharPos(c: Char): Integer; begin Result:=Ord(c)-96; end; |
|
#6
|
|||
|
|||
|
А как сделать перевод из одного массива в другой?
Т.е один массив - ['a'..'z'], второй - ['A'..'Z'], вводим n, выдаётся N. Мне не надо переводить в верхний регистр, я просто для примера. Последний раз редактировалось serega6531, 26.05.2013 в 18:55. |