• Source
    1. #include <iostream>
    2. #include <string.h>
    3. #include <stdio.h>
    4. using namespace std;
    5. int NSValue(char exp){
    6. if (exp == 'N' or exp == 'n') return 1;
    7. else if(exp == 'S' or exp == 's') return -1;
    8. }//NSValue
    9. int EWValue(char exp){
    10. if (exp == 'E' or exp == 'e') return 1;
    11. else if(exp == 'W' or exp == 'w') return -1;
    12. }//EWValue
    13.  
    14. int getDirection(char exp[]){
    15. int east=0;
    16. int north=0;
    17. int i,j,temp,l;
    18. l=strlen(exp);
    19. for(i=0;i<l;i++){
    20. if((exp[i]=='N' or exp[i]=='n') || (exp[i]=='S' or exp[i]=='s')){north+=NSValue(exp[i]);}
    21. if((exp[i]=='E' or exp[i]=='e') || (exp[i]=='W' or exp[i]=='w')){east+=EWValue(exp[i]);}
    22. }//for
    23. if(east>0){for(i=0;i<east;i++){printf("%c",'E');}}//if
    24. else if(east<0){east=-east;
    25. for(i=0;i<east;i++){printf("%c",'S');}
    26. }//if
    27.  
    28.  
    29. if(north>0){for(i=0;i<north;i++){printf("%c",'N');}}//if
    30. else if(north<0){north=-north;
    31. for(i=0;i<north;i++){printf("%c",'S');}
    32. }//elseif
    33.  
    34. }//getDirection
    35. int main() {
    36. //char exp[100] = "NESNWES";
    37. char exp[100] = "SSSNEEEW";
    38. getDirection(exp);
    39. return 0;
    40. }