Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Palidrome Report Program.....

Former Member
0 Likes
1,087

Dear Reader,

Can u plz forward me Report program in ABAP for palidrome of a string and also palindrom program for 10 digit nos..... plz forward asap....

Regards

Narin Nandivada.

3 REPLIES 3
Read only

Former Member
0 Likes
708

HI,

see this code.


PARAMETERS:var(10).
data:tmp(10),len(2),t_len(2).

len = strlen( var ).
t_len = len.

DO len TIMES.
  t_len = t_len - 1.
  CONCATENATE tmp var+t_len(1) into tmp.
ENDDO.

IF var = tmp.
  WRITE:/ 'palindrome'.
ELSE.
  WRITE:/ 'not a palindrome'.
ENDIF.

rgds,

bharat.

Read only

anoop_gupta2
Participant
0 Likes
708

hey

this will definetly help u .

report  zpalin no standard page heading.
"DATA str TYPE string value 'anoopg'.
parameters str type string.

data len type i value 0.
len = strlen( str ).
write : / 'length of the String =' , len.
data even type i value 0.
data temp type i.
data i type i.
data j type i.
temp = len mod 2.

if temp = 0.
  data half type i.
  data ch type char1.
  data ch1 type char1.
  data pos type char3.
  data pos1 type char3.
  data flag type i value 0.
  half = len / 2.
  i = 0.
  pos1 = len - 1.
  while half <> 0.
    ch = str+pos(1).
    pos = pos + 1.
    half = half - 1.

    ch1 = str+pos1(1).
    if ch <> ch1.
    flag = 1.
    endif.

    write : / 'ch =' ,ch ,'ch1=' , ch1.

    pos1 = pos1 - 1.


  endwhile.
  if flag = 1.
    write / 'not a palindrome'.
  else.
    write / 'cong.ts its a palidrome'.
  endif.
  else.

  half = len / 2.
  "write half.
  half = half - 1.
    i = 0.
  pos1 = len - 1.
  while half <> 0.
    ch = str+pos(1).
    pos = pos + 1.
    half = half - 1.

    ch1 = str+pos1(1).
    if ch <> ch1.
    flag = 1.
    endif.

    write : / 'ch =' ,ch ,'ch1=' , ch1.

    pos1 = pos1 - 1.


  endwhile.
  if flag = 1.
    write / 'not a palindrome'.
  else.
    write / 'cong.ts its a palidrome'.
  endif.

endif.

  • please reward if useful.

Anoop Gupta

Read only

Former Member
0 Likes
708

Check out the below sample code


DATA: p1(1000) TYPE c VALUE 'STS'.
DATA: p2(1000) TYPE c.

DATA: s_len TYPE i.
CONDENSE p1 NO-GAPS.
s_len = NUMOFCHAR( p1 ).

DATA: position TYPE i VALUE '0'.
DATA: position2 TYPE i.
DATA: offset1 TYPE i.
DO s_len TIMES.
  position2 = s_len - position - 1.
  p2+position2(1) = p1+position(1).
  position = position + 1.
ENDDO.

WRITE: / p1.
WRITE: / p2.

IF p1 = p2.
  WRITE: / 'This is a Palindrome!'.
ENDIF.