18.01.2012, 21:10 | #1 (permalink) |
Новичок
Регистрация: 12.01.2012
Сообщений: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Помочь знакомой в pascal
|
18.01.2012, 21:10 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Посоветую вам прочитать содержимое данных топиков Прошу помочь со светодиодами Просьба помочь разобраться с питанием Прошу помочь с выбором |
19.01.2012, 15:31 | #3 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Пожалуйста:
Код:
Const Smb=[' ',',',':','?','.','!','-',';','(',')']; Type W=Array[1..100] of string; Var st,dw:string; i,j,N,N1:integer; wrd,wrd1:W; Procedure GetWords(s: string; var words:W; var Nw:integer); var i,back: integer; begin i := 1; Nw := 0; while i<=length(s) do begin while (i<=length(s)) and (s[i] in Smb) do inc(i); if i<=length(s) then begin back:=i; while (i<=length(s)) and Not(s[i] in Smb) do inc(i); end; inc(Nw); words[Nw]:=copy(s, back, i-back); end; end; BEGIN Writeln('Enter the string:'); Readln(st); Writeln; GetWords(st, wrd, N); N1:=0; For i:=1 to N do If wrd[i][1]=wrd[i][length(wrd[i])] then begin Inc(N1); wrd1[N1]:=wrd[i]; end; Writeln(N1,' words beginning and ending with similar letters:'); For i:=1 to N1 do For j:=1 to N1-i do If length(wrd1[j])<length(wrd1[j+1]) then begin dw:=wrd1[j]; wrd1[j]:=wrd1[j+1]; wrd1[j+1]:=dw; end; For i:=1 to N1 do write(wrd1[i]+' '); readln; END. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|