How to reverse the middle N characters of a string in C++

1 Answer

0 votes
#include <iostream>

using namespace std;

string reverse_middle(string s, int pos) { 
    int len = s.length();
    int mid = (len - pos) / 2; 
    string tmp = "";

    for (int i = 0; i < mid; i++) 
        tmp += s[i]; 
  
    for (int i = mid + pos - 1; i >= mid; i--) 
        tmp += s[i]; 
  
    for (int i = mid + pos; i < len; i++) 
         tmp += s[i];
    
    return tmp;
} 
  
int main() 
{ 
    string s = "abcdefg"; 
    int pos = 3; 
    
    cout << reverse_middle(s, pos); 
    
    return 0; 
} 


/*
run:

abedcfg

*/

 



answered Jun 22, 2019 by avibootz

Related questions

1 answer 156 views
1 answer 136 views
1 answer 117 views
1 answer 109 views
1 answer 109 views
2 answers 130 views
2 answers 134 views
...