|  | 
 
 | 
| 
 | |||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
|  | 
|  | Опции темы | Поиск в этой теме | Опции просмотра | 
| 
			 
			#1  
			
			
			
			
		 | |||
| 
 | |||
|  программа котороя при вводе слова или фамилии выводит её наоборот добрый вечер! нужна помощь, нужно написать программу, которая выводит фамилию наоборот(нужно было продолжить код), но я запутался посмотрите что не так? Код: procedure TForm1.Button1Click(Sender: TObject);
var
s,a:string;
i,len:integer;
begin
s:=Memo1.Text;
len:=Length(s);
SetLength('п',len)
SetLength('р',len)
SetLength('в',len)
SetLength('е',len)
SetLength('т',len)
for i:= len downto 1 do
begin
a[len-1+1]:=s[i];
end;
Label1.Caption:=a
end;
end. | 
| 
			 
			#2  
			
			
			
			
		 | |||
| 
 | |||
|   Может так: Код: var
  I : Integer;
  S, Buf : String;
begin
  S := Memo1.Lines.Text;
  For I := 1 To Length(S) div 2 Do
    Begin
      Buf := S[i];
      S[i] := S[Length(S)-I+1];
      S[Length(S)-I+1] :=- Buf;
   End;
  Label1.Caption := S;
end; | 
| 
			 
			#3  
			
			
			
			
		 | |||
| 
 | |||
|   возможно, я точно помню что там такие строчки были Код: SetLength('п',len)
SetLength('р',len)
SetLength('в',len)
SetLength('е',len)
SetLength('т',len) | 
| 
			 
			#4  
			
			
			
			
		 | ||||
| 
 | ||||
|   Цитата: 
 | 
| 
			 
			#5  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 хмм....сейчас попробую ваш код | 
| 
			 
			#6  
			
			
			
			
		 | |||
| 
 | |||
|   выдал ошибку на этой строчке Код: S[Length(S)-I+1] :=- Buf; [Error] Unit1.pas(38): Operator not applicable to this operand type | 
| 
			 
			#7  
			
			
			
			
		 | ||||
| 
 | ||||
|   Символ в строке может принимать только Char, ты же передаешь строку (да еще и с минусом). | 
| Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
|  
cawwe (19.12.2012)
 | ||
| 
			 
			#8  
			
			
			
			
		 | |||
| 
 | |||
|   не пойму всё ровно выдаёт ошибку | 
| 
			 
			#9  
			
			
			
			
		 | ||||
| 
 | ||||
|  Через дин.массив Код: procedure TForm1.Button1Click(Sender: TObject);
var
// Динамический символьный массив
arr : array of char;
// итератор для цикла
i : integer;
begin
//  Выделяем память под массив
SetLength(arr, 255);
arr[0] := 'П';
arr[1] := 'р';
arr[2] := 'и';
arr[3] := 'в';
arr[4] := 'е';
arr[5] := 'т';
arr[6] := '!';
{
выводим от длинны массива, которая заполнена символами
до его начала
}
for i := Length(arr) downto 0 do
Memo1.Lines.Add(arr[i]);
// Освобождаем память
arr := nil; | 
| Этот пользователь сказал Спасибо orion_asm за это полезное сообщение: | ||
|  
cawwe (19.12.2012)
 | ||
| 
			 
			#10  
			
			
			
			
		 | |||
| 
 | |||
|   спасибо огромное за помощь! |