Go: package main

import (
	"bufio"
	"os"
	"fmt"
)

func reverse(s string) string {
	runes := []rune(s)
	for i, j := 0, len(runes)-1; i < j; i, j = i+1, j-1 {
		runes[i], runes[j] = runes[j], runes[i]
	}
	return string(runes)
}

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	scanner.Scan()
	input := scanner.Text()
	fmt.Println(reverse(input))
}

C++: #include <iostream>

using namespace std;

int main() {
    string s;
    char x;
    while (cin >> x) {
        s += x;
    }
    for (int i=0;i<s.length()/2;i++){
        char temp=s[i];
        s[i]=s[s.length()-i-1];
        s[s.length()-i-1]=temp;
    }
    cout << s << endl;
    return 0;
}

C++: #include <algorithm>
#include <vector>
#include <math.h>
#include <stdio.h>
#include <cctype>
#include <iostream>
#include <set>
#include <string>
#include <queue>
#include <map>
#include <utility>
using namespace std;
int size(string x){
	string::size_type size=x.size();
	return size;
}
#define fu(l,k) for(int i=l;i<k;i++)
#define fd(l,k) for(int i=l;i>k;i--)
#define sort(ss) sort(ss.begin(), ss.end())
#define rsort(ss) sort(ss.rbegin(), ss.rend())
typedef  vector<string> vs;
typedef  vector<int> vi;
double pi(){
	return acos(-1.0);
}
typedef set<int> set_i;
typedef set<string> set_s;
int INF=1000000;
int main(){
	string ss;
	cin>>ss;
	int sr=size(ss);
	for(int i=sr;i>=0;i--){
		if(i==0) cout<<ss[i]<<endl;
		else cout<<ss[i];
	}
}

C++: #include <algorithm>
#include <cmath>
#include <iomanip>
#include <iostream>
#include <list>
#include <string>
#include <vector>
using namespace std;

int main(int argc, char const *argv[]) {
  string a, result;
  std::cin >> a;
  // a = "hello";
  for (size_t i = a.size(); i > 0; i--) {
    result += a[i - 1];
  }
  std::cout << result << '\n';
  return 0;
}

C++: #include<iostream>
#include<string>

using namespace std;

int main(){
	string str;
	cin<<str;
	for(int i=str.size();-1<i;i--){
		cout<<str[i];
	}
	cout<<endl;
return 0;
}

C++: #include<iostream>
#include<string>
using namespace std;

int main(){
	string a;
	cin >> a;
	for(int i = a.length()-1; i >= 0; i--)
		cout << a[i];
	cout << endl;
}

C++: #include<iostream>
#include<string>
using namespace std;
int main(){
string str;
cin>>str;
for(int i=str.size();i>=0;i--){
cout<<str[i];
}
cout<<endl;
return 0;
}

C++: #include<iostream>
#include<string>
#include<algorithm>
#include <stdio.h>
using namespace std;


 int main(){
    string a;
    cin >> a;
    int len=a.length();
    for(int i=len;i>=0 ; i--)
    cout << a[i];
 }

C++: #include <iostream>
#include <string>

using namespace std;

int main() {
    string instr;
    cin >> instr;

    for(int i=0; i<(int)instr.size(); ++i) {
        cout << instr[instr.size()-i-1];
    }
    cout << endl;
    return 0;
}

C++: #include <stdio.h>
#include <string.h>

int main( void ){
    char str[20];
    scanf( "%s",str );
    int lStr = strlen( str );
    for( int i = 0;i < strlen( str );i++ ){
        printf( '%c',str[lStr] );
        lStr--;
    }
    return 0;
}

C++: #include<iostream>
#include<string>
using namespace std;

int main() {
	string str,a;
	a = 0
	cin >> str;
	for(int i =str.size()-1;i>=0;i--){
		a += str[i];


	}
	cout << a << endl;
	
	return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;
int main() {
  char a;
  string str;
  cin >> str;
  for (int i = 0; i != str.size()-1-i; i++) {
    a = str[i];
    str[i] = str[str.size()-1-i];
    str[str.size()-1-i] = a;
  }
  cout << str << endl;
}

C++: #include<iostream>
#include<string>
int main(){
	std::string str;
	std::cin>>str;
	for(int i=str.size()-1;i>=0;i--){
		std::cout<<str[i];
	}
	return 0;
}

C++: #include "stdafx.h"
#include <iostream>
#include <sstream>
#include <vector>
#include <algorithm>
#include <string>
#include <functional>
#include <numeric>
#include <ctype.h>
#include <cstdlib>
#include <string.h>
#include <cmath>
#include <cstdio>





using namespace std;


int main()
{
	string input, str;

	cin >> input;

	for (auto a : input)
	{
		str.insert(str.begin(), a);
	}

	cout << str << endl;
}

C++: #include <iostream>
#include <string>
using namespace std;

int main(){
	string str;
	int n;

	cin >> str;


	n = str.size();

	for(int i = n - 1; i >= 0; i--){
		cout << str[i];
	}

	cout << endl;
}

C++: #include <iostream>
#include <iomanip>
#include <vector>
#include <set>
#include <map>
#include <list>
#include <iterator>
#include <queue>
#include <stack>
#include <deque>
#include <sstream>
#include <algorithm>
#include <numeric>
#include <string>
#include <cmath>
#include <complex>
#include <functional>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cassert>
#include <cstdlib>
#include <cctype>

#define REP(i,m,n) for(int i=m;i<n;i++)
#define rep(i,n) for(int i=0;i<n;i++)
#define rp(i,c) rep(i,(int)c.size())
#define fr(i,c) for(__typeof((c).begin()) i=(c).begin();i!=(c).end();i++)
#define mp make_pair
#define pb push_back
#define all(c) (c).begin(),(c).end()
#define rall(u) (u).rbegin(),(u).rend()
#define dbg(x) cerr<<#x<<" = "<<(x)<<endl
#define v_delete(a,b) (a).erase(remove((a).begin(), (a).end(), b), (a).end())
#define v_unique(a) (a).erase(unique((a).begin(), (a).end()), (a).end())
#define VV(T) vector<vector< T > >
#define init(a,b) memset((a), (b), sizeof((a)))
using namespace std;

typedef long long ll;
typedef vector<int> vi;
typedef pair<int,int> pi;
const int inf=1<<28;
const double INF=1e10,EPS=1e-9;


template<class T>int SIZE(T a){return a.size();}
template<class T>string IntToString(T num){string res;stringstream ss;ss<<num;return ss.str();}
template<class T>T StringToInt(string str){T res=0;for(int i=0;i<SIZE(str);i++)res=(res*10+str[i]-'0');return res;}
template<class T>T gcd(T a,T b){if(b==0)return a;return gcd(b,a%b);}
template<class T>T lcm(T a,T b){return a/gcd(a,b)*b;}

template <class T> void input(T& a, int n) { for (int i = 0; i < n; ++i) cin >> a[i]; }
template <class T> void input(T* a, int n) { for (int i = 0; i < n; ++i) cin >> a[i]; }
typedef pair<int,int> pii;

inline bool IN(int x, int y, int w, int h)
{
    return 0 <= x && x < w && 0 <= y && y < h;
}


int main()
{
	string str;
	cin >> str;
	reverse(str.begin(),str.end());
	cout << str << endl;
}

C++: #include <iostream>
using namespace std;
int main(void){
    char buf[21];
    int length=0;
    
    cin>>buf;
    for(int i=0; buf[i]!='\0'; i++) length++;
    for(int i=length-1; i>=0; i--) cout<<buf[i];
    cout<<endl;
    
    return 0;
}

C++: #include <iostream>
#include <string>

using namespace std;


int main()
{
    string str;
    
    cin >> str;
    for (auto i = str.end() - 1; i != str.begin() - 1; i--)
    {
        cout << *i;
    }
    
    cout << endl;
    
    return 0;
}

C++: #include <stdio.h>
#include <vector>

using namespace std;

int main(void) {
        char input;
        vector<char> str(5);

        while((input = getchar()) != '\n') {
                str.insert(str.begin(), input);
        }

        for (char output : str) {
                putchar(output);
        }
        puts("");

        return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <math.h>
#include <cmath>
#include <stdio.h>
#include <string>
#include <string.h>
#include <cstring>
#include <sstream>
#include <iomanip>
#include <stdlib.h>

using namespace std;

int main (void)
{
	string a;

	cin >> a;
	int k = 0;
	k = a.size();

	for (int i = k; i > 0; i--)
	{
		cout << a.substr(i - 1,1);
	}
	cout << endl;
}

C++: #include <iostream>
#include <string>
#include <algorithm>

using namespace std;

int main(){
    string str;
    cin >> str;
    reverse(str.begin(),str.end());
    cout << str << endl;
    return 0;
}

C++: #include <iostream>
#include<string.h>

using namespace std;

int main()
{
	char sr[20];
	cin >> sr;
	int len = strlen(sr);
	for (int i = len; i >0; i--)
	{
		cout << sr[i-1];
	}
	return 0;
}