Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Здравствуйте, помогите пожалуйста написать программы на языке паскаль.Заранее спасибо (http://www.tehnari.ru/f41/t92438/)

igor278130 19.11.2013 09:51

Здравствуйте, помогите пожалуйста написать программы на языке паскаль.Заранее спасибо
 
Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 5 латинских букв , между соседними словами – запятая, за последним словом – точка. Преобразовать последовательность следующим образом:
А) перенести первую букву каждого слова в конец слова;
b) перенести последнюю букву каждого слова в начало слова;
c) удалить из каждого слова первую и последнюю буквы;

Vladimir_S 19.11.2013 11:27

Вложений: 1
Цитата:

Сообщение от igor278130 (Сообщение 971236)
Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 5 латинских букв , между соседними словами – запятая, за последним словом – точка. Преобразовать последовательность следующим образом:
А) перенести первую букву каждого слова в конец слова;
b) перенести последнюю букву каждого слова в начало слова;
c) удалить из каждого слова первую и последнюю буквы;

Да без проблем, пожалуйста:
Код:

var
 S:string;
 i,j,N,L: integer;
 W,W1:Array[1..255] of String;
 C:Char;

Begin
 writeln('Enter the string: ');
 readln(S);
 N:=1;
 i:=0;
 Repeat
  Inc(i);
  W[N]:='';
  While (S[i]<>',') and (S[i]<>'.') do
  begin
    W[N]:=W[N]+S[i];
    Inc(i);
  end;
  If S[i]<>'.' then Inc(N);
 Until S[i]='.';

 For i:=1 to N do
  begin
  L:=Length(W[i]);
  C:=W[i][1];
  W1[i]:='';
  for j:=2 to L do W1[i]:=W1[i]+W[i][j];
  W1[i]:=W1[i]+C;
  end;
 For i:=1 to N do
  if i<N then Write(W1[i]+',') else Write(W1[i]+'.');
 Writeln;

 For i:=1 to N do
  begin
  L:=Length(W[i]);
  C:=W[i][L];
  W1[i]:='';
  W1[i]:=W1[i]+C;
  for j:=1 to L-1 do W1[i]:=W1[i]+W[i][j];
  end;
 For i:=1 to N do
  if i<N then Write(W1[i]+',') else Write(W1[i]+'.');
 Writeln;

 For i:=1 to N do
  begin
  L:=Length(W[i]);
  W1[i]:='';
  for j:=2 to L-1 do W1[i]:=W1[i]+W[i][j];
  end;
 For i:=1 to N do
  if i<N then Write(W1[i]+',') else Write(W1[i]+'.');

 Readln
End.



Часовой пояс GMT +4, время: 12:59.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.