Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2008, 10:25   #1
Saken
 
Регистрация: 30.11.2008
Сообщений: 6
Вопрос помогите плз с задачой (строки на яз.Паскаль)

короче дана такая задача:
дана строка состоящий из пяти имен, если в имени больше шести букв то написать его в обратном порядке...
Saken вне форума Ответить с цитированием
Старый 30.11.2008, 12:25   #2
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Код:
uses crt;
var s,s1,sub:string;
    i,j,m,n:integer;
    a:array[1..10] of string;
begin
clrscr;
writeln('Input str');
readln(s);
i:=0;n:=0;
repeat
inc(i);
if (s[i]=' ')or(s[i]=',') then begin
                   inc(n);
                   a[n]:=sub;
                   sub:='';
                   end
else sub:=sub+s[i];
until i=length(s);
inc(n);
a[n]:=sub;
writeln;


for i:=1 to n do
  if length(a[i])>6 then begin
                          for j:=length(a[i]) downto 1 do
                            write(a[i][j]);
                         writeln;
                         end
                           

end.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 30.11.2008, 12:28   #3
Saken
 
Регистрация: 30.11.2008
Сообщений: 6
По умолчанию

можете доделать этот код:

Цитата:
program as1;
uses crt;
var str:string;
i,k:integer;
janastr:string;
begin
clrscr;
readln(str);
k:=length(str);
if k>6 then
for i:=k downto 1 do
janastr:=janastr+copy(str,i,1);
writeln(janastr);
readkey;
end.
Saken вне форума Ответить с цитированием
Старый 30.11.2008, 12:37   #4
Saken
 
Регистрация: 30.11.2008
Сообщений: 6
По умолчанию

большое спс
Saken вне форума Ответить с цитированием
Старый 30.11.2008, 12:56   #5
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Как я понял Вы хотите сделать с функцией readkey

Код:
uses crt;
var s,sub,s1:string;
    i,k:integer;
    ch:char;
begin
clrscr;
s:='';sub:='';
repeat
ch:=readkey;
case ch of
#32,#13:begin
    s1:='';
    if length(sub)>6 then for i:=length(sub) downto 1 do
                                s1:=s1+sub[i]
       else s1:=sub;
    s:=s+s1+' ';
    sub:='';
    write(#32);
    end;
else begin
      sub:=sub+ch;
      write(ch);
     end;
end;
until  ch=#13;
clrscr;
writeln(s);
readln;
end.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 30.11.2008, 14:26   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

alex_fcsm, КРАСАВЧИК! :-)

Цитата:
Сообщение от alex_fcsm
Как я понял Вы хотите сделать с функцией readkey
да Господь с Вами...
Он readkey использовал исключительно для того, чтобы остановить выполнение программы (ну, вместо Readln, которое ставят часто в конце программы, только Readkey это больше похоже на "Press any key" :-)
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
паскаль. строки. помогите решить, пожалуйста. tanuschka Помощь студентам 8 05.10.2009 23:52
3 задачки на Паскаль. Массив,строки. помогите решить до завтра! meds Паскаль, Turbo Pascal, PascalABC.NET 2 29.05.2008 08:29
Помогите решить задачу на строки (паскаль) mpegable Помощь студентам 1 27.05.2008 09:08
Паскаль, строки, помогите zaraza21 Помощь студентам 4 23.11.2007 14:01
Помогите с задачой о павуке :-) на Паскале Haret Помощь студентам 5 11.12.2006 06:53