Задание:
Ввести с клавы слово и переместить первый символ в конец слова, если он не есть латинской буквой.
Без функции я это задание решил, но я еще не понимаю как его правильно прописать в функции. Подскажите плз. А еще лучше покажите...
Вот посмотри:
function SetWord(var s: string): string;
var
len,i,o: Integer;
c: char;
begin
len:=length(s);
c:=s[1];
if (c>='a') and (c<='z') then
begin
SetWord:='';
exit;
end
else
s:=s+' ';
s[len+1]:=c;
Delete(s,1,1);
SetWord:=s;
end;
Артемий2, 2 вопроса:
1) с чего функция возвращает пустую строку, если 1-ый символ переданной ей строки 'a' .. 'z'? Может, лучше было вернуть исходную строку?
2) 'A' .. 'Z' - уже НЕ буквы латинского алфавита?
Замечательно! Простите!
function SetWord(var s: string): string;
var
len,i,o: Integer;
c: char;
begin
len:=length(s);
c:=s[1];
if ((c>='a') and (c<='z')) or ((c>='A') and (c<='Z')) then
begin
SetWord:=s;
exit;
end
else
s:=s+' ';
s[len+1]:=c;
Delete(s,1,1);
SetWord:=s;
end;
Зачем?
s:=s+' ';
s[len+1]:=c;
s:=s+с;
Компактность!
Ну, раз компактность, то:
function SetWord(s: string): string;
begin
if upcase(s[1]) in ['A' .. 'Z'] then SetWord := s
else SetWord := Copy(s, 2, length(s)) + s[1];
end;
Крут!
s:=s+' ';
s[len+1]:=c;
s:=s+с;
Последний пост - мой. Извиняюсь, забыл войти..
Lapp, да, я тоже так думаю. В чем возражение?
И опять гостем!.. Фу ты ну ты.. Но я же не выходил, вроде.. башка уже ни к черту..
Простите!