Decoding no of ways and printing each decode message

Question in short:
print in how many ways can it be decoded and print each decoded message of evry encoded message
1 represents A …26 is z and 04 or 06 … is invalid

243 output  BDC
24 3 output will be XC
2 34 invalid
so 2 ways

The input is a String

Input : 22415
Only one  single and other will be in pair (odd length string )

Single  is first 2

other pair 24, 15
Output :B X O

I have tried a bit and wrote pseudocode (not actual java code) so please check it . I have covered three cases till now .

first case Input string considering every charcter as a single:

            for loop from  zero to , less than string  length ,i++

    char c=s.Char at(i)
    in char c  each digit storing

    if (c=='1' or '2' or...'9')
    int p= character c is being coverted to  integer

     else {
    if c ==0
    Then go to the  next character of input string 
    Control will go to for loop and i has to be incremented.

    p=p-1 ;
    As index starts from  zero  so character 1 means array zero position.

    char w= a[p];
    corresponding character  stored in w

    String s1= s1+ space + w;
    End of for loop

int count = count +1 ;
Counter one increase for every way of decoding the message

the above code is only considering every charcter of input string as Single.

CASE 2: Grouping case only pairing no single:


Input : 234
23: W
4: D (this is one way)
Output: W D

Input : 234
2: B
34: invalid
This is not Counted as 34 is invalid.

So one way of grouping the input.

Input: 2304
23 (W)
04 (invalid)

String s= taking input from user
If(s.length()%2==0) Only if the length of string is even

for loop i=zero  , less than string length -1  ,i+2

char c = s.charAt(i);
char j = s. char At (i+1);

String s1=c.concatenate(j);
Two charactersconcatenation
as now we consider grouping case (eg 12,23...)

if (c=='0')
Then Invalid
first digit  zero then invalid

 else {
if (s1>26)
Exit If condition and terminate the for loop as it is invalid

else if (if two above cases are not met)

if (s1=='10', '11',..'26')

a1[]={'k' ,...'z'}

int p1 = convert the string 
to integer and store in p1

p1=p1 -1 ;

char w1= a1[p];
corresponding character stored in w1

String s2= s2+ space + w1;

End of for loop

int count = count +1 ;

End of if

Case 3: Single + pairing (odd length string only):

This is another case

Input : 22415
Only one single and other will be in pair (odd length string )

Single is first 2

other pair 24, 15
Output :B X O

Or it can be like this

Single is 3rd position 4 & others are Pair

pair is 22,15

Output :

Two conditions for this code:
The input has to be of odd length.

i shall be placed on even index (including 0) only of the input String.
i controls the flow of single digit .

    String s= taking input from the user


    i is for single digit  Even index only

    for (i=0;i<s.length; i=i+2)

    char a2={'A', 'B',....,Z};

    char single=s.charAt(i);

    int p3=convert single variable to integer ;


    char w3=a2[p3];
    Single digit corresponding alphabet in w3 

    now we have to check whether the single digit index position is less than 2 or not for that:

    This is Another event 
    Where single digit index position is >2

    So there is pairing before single and After single

    if (i>2){

    char x1= s.charAt(l)
    char x2= s.charAt(l+1)

    String pair 1=x1 concatenate x2;

    int p= convert  pair1 to Integer and store in p


    char w5 = a2[p];
    Corresponding alphabet w5 represent korbe

    s3=s3+" "+w5

    } Inside for loop closed

    s3=s3 +" "+w3

    Single digit adding to s3

   after  Single digit  pairing 
    for(j=i+1; j<s.length()-1; j+2)

    char x2= s.charAt(j)
    char y2= s.charAt(j+1)

    String pair1= x2.concatenate(y2)

    Single digit jodi zero hye
    Exit if

    if(x2 =='0')

    Else if (pair1>26)
    Exit if condt terminate the inside for loop }

    Else if {
    int p7= Convert pair to integer;


    char w6=a2[p7]
    s3=s3 +" "+ w6
    For loop closed

    int count=+1;
    } End of else

    i jodi 2 r less hye
    Extracting the characters after single digit.



    String s3= s3+w3;
   in  String s3  single digit r corresponding character inserted

after Single digit pairing  storing them in pair Variable

    for(j=i +1; j<s.length()-1;j+2)
    char x=s.charAt(j);

    char y=s.charAt(j+1);

    String pair=x concatenate y;

    if(w3 =='0')
    exit if;

    Sopln( "Invalid");
    Terminate the inside for loop

    else if(pair >26)
    exit if condt terminate the inside for loop
        else if {
    if(pair =='10'....'26')
    p2=Convert pair to integer

    char w2=a2[p2]
    s3=s3+" "+ w2
    }Inside for loop closed

    int count= count+1;
    If closed

    } i for loop closed 

    } Top if closed (odd check)

I have done till these . Are the above codes right logically ?

THere are other cases still left which i am thinking