| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > программа работы со строками |
| Автор: Igor Mirkovich 10.12.2005, 18:11 |
| Помогите написать прогу на С++ которая определяет является ли заданная строка (фраза) палиндромом. На паскале написать это прогу мне не составит труда, а вот С++ язык для меня новый... Заранее благодарен!!! код на паскале: Вариант1: uses crt; var st:string[99]; i,q:integer; begin clrscr; write('Введите строку (фразу): '); readln(st) ; st:= concat(' ''',st,''' '); write('Строка ',st); while Pos(' ',st)<>0 do Delete(st,Pos(' ',st),1); i:=1; q:=length(st); while( i<=q div 2) and (st[i]=st[q+1-i]) do Inc(i); if i<=q div 2 then write (' не '); write(' является палиндромом'); readln; end. Вариант2: const s: string='aaaa aaas'; s1: string = ''; s2: string = ''; var i:integer; begin s:=' '''+s+''' '; for i:=1 to length(s) do if s[i]<>' ' then begin s1:=s1+s[i]; s2:=s[i]+s2;; end; if s1<>s2 then s:=s+' не '; write(' Строка ',s,' является палиндромом'); readln; end. |
| Автор: Void 10.12.2005, 18:32 | ||||
Менее зрелищно:
|
| Автор: darkart 10.12.2005, 19:07 | ||
Вот так:
|
| Автор: Igor Mirkovich 11.12.2005, 21:22 |
| Спасибо за помощь!!! |
| Автор: sergejzr 11.12.2005, 21:40 |
| А слабо задать "палиндром" в поиск? |