Go: package main

import (
  "fmt"
)

func main() {
  var a string
  fmt.Scan(&a)
  for i:= len(a) -1; i>=0; i-- {
    fmt.Print(string(a[i]))
  }
  fmt.Println()
}

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

using namespace std;

int main(){
	char line[20];
	int a=0;
	
while(cin>>line){
	for(a; line[a] != 0x00 ;a++);
	a--;
	for(a;a>=0;a--){
	cout<<line[a];
	}
	cout<<endl;
}


return 0;
}

C++: #include <stdio.h>
int main(void){
    char s[22]={'\n'},*p;
    gets(s+1);
    for(p=s;*p++;);
    for(p--;s<=p;p--)putchar(*p);
    return 0;
}

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

int main(){
    std::string str;
    std::queue<char> que;
    std::cin >> str;
    const int size = str.size();
    for(int i = 0; i < size; ++i){
        que.push(str.back());
        str.erase(str.size() - 1, 1);
    }
    for(int i = 0; i < size; ++i){
        std::cout << que.front();
        que.pop();
    }
    return 0;
}

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

using namespace std;

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

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

C++: #include "bits/stdc++.h"
using namespace std;

long long int gcd(long long int l, long long int r) {
	assert(l > 0 && r > 0);
	if (l > r)return gcd(r, l);
	else {
		const long long int num = r%l;
		if (num) {
			return gcd(l, num);
		}
		else {
			return l;
		}
	}
}
long long int lca(long long int l, long long int r) {
	return l / gcd(l, r)*r;
}
int main() {
	string st; cin >> st;
	reverse(st.begin(), st.end());%
	return 0;
}

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

using namespace std;

#define loop(i,a,b) for(int i = a; i < b ; i ++)
#define rep(i,a) loop(i,0,a)

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

}

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

int main() {
	int i;
	string s;
	cin >> s;
	for (i = 0; i <= 20; i++) {
		if (s[i] == 0)
			break;
	}
	for (i--; i >= 0; i--) {
		cout << s[i];
	}
	//cout << endl;
	return 0;
}

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

int main()
{
	string x;
	cin >> x;
		for(int i=x.length()-1;i>=0;i--)
			cout << x[i];
	cout<<"\n";
}

C++: #include <stdio.h>
int main(void){
    char s[21],*p;
    gets(s);
    for(p=s;*p++;);
    for(p--;s<=p;p--)putchar(*p);
    puts("");
    return 0;
}

C++: #include "bits/stdc++.h"
using namespace std;

int main()
{
    string a;
    char b;
    cin >> a;
    for (int i = 0; i < a.size() / 2; i++)
    {
        b = a[i];
        a[i] = a[a.size() - 1 - i];
        a[a.size() - 1 - i] = b;
    }
    cout << a << endl;
}

C++: #include<stdio.h>



int main(){
	char c[20];

	scanf("%s",c);
	int i;

	for(i=0;i<20;i++){
		if((int(c[19-i])!=-52)&&(int(c[19-i]!=0))){
			printf("%c",c[19-i]);
		}
	}


	return 0;
}

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

using namespace std;
static const int MAXV = 21;

int main() {
  char A[MAXV]={};
  cin >> A;
  int i=0;
  for(;i<MAXV;i++) {
    //printf("%c", A[i]);
    if (A[i] == 0) break;
  }
  i--;
  for(;i!=-1;i--) {
    printf("%c", A[i]);
  }
}

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

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

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

int main(){
	string str;
	cin >> str;
	
	string::reverse_iterator it = str.rbegin();
	while(it != str.rend()){
		cout << *it;
		it++;
	}
	cout << endl;
	return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include <stack>
#include <queue>
#include <cstring>
#include <climits>
#include <cmath>
#include <cfloat>

#define FOR(i,b,n) for(int i=b;i<n;i++)
#define CLR(mat) memset(mat, 0, sizeof(mat))
#define INF 1<<25

using namespace std;

string str, rstr;

int main()
{
	while( cin >> str, !cin.eof())
	{
		rstr = string( str.rbegin() , str.rend() );

		cout << rstr << endl;
	}

	return 0;
}

C++: #include<map>
#include<set>
#include<list>
#include<cmath>
#include<queue>
#include<stack>
#include<cstdio>
#include<string>
#include<vector>
#include<complex>
#include<cstdlib>
#include<cstring>
#include<climits>
#include<numeric>
#include<sstream>
#include<iostream>
#include<iomanip>
#include<algorithm>
#include<functional>
#include<math.h>

#define MP make_pair
#define PB push_back
#define ALL(x) (x).begin(),(x).end()
#define REP(i,n) for(int i=0;i<(n);i++)
#define REP1(i,n) for(int i=1;i<(n);i++)
#define REP2(i,d,n) for(int i=(d);i<(n);i++)
#define RREP(i,n) for(int i=(n);i>0;i--)
#define CLR(a)      memset((a),0,sizeof(a))
#define MCLR(a)     memset((a),-1,sizeof(a))
#define RANGE(x,y,maxX,maxY) (0 <= (x) && 0 <= (y) && (x) < (maxX) && (y) < (maxY))

using namespace std;

typedef long long LL;
typedef unsigned long long ULL;
typedef vector<int> VI;
typedef vector<VI > VVI;
typedef vector<string> VS;
typedef vector<LL> VLL;
typedef pair<int,int> PII;

const int INF = 0x3f3f3f3f;
const LL INFL = 0x3f3f3f3f3f3f3f3fLL;
const double EPS = 1e-9;

const int DX[]={1,0,-1,0},DY[]={0,-1,0,1};

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

C++: #include <iostream>
#include <vector>
#include <algorithm>
#include <functional>
#include <iomanip>
#include <utility>
#include <string>
typedef unsigned long ul;

using namespace std;

int main(){
	int len;
	string str;
	cin >> str;
	len = str.length();
	for(int i = len-1; i >= 0; i--){
		cout << str.at(i);
	}
	cout << endl;
}

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

int main(){
	char c[20];
	int cnt=0;
	do{
		scanf("%c",&c[cnt]);
		cnt++;
	}while(c[cnt]);
	for(int i=cnt-1;i>=-1;i--){
		cout<<c[i+1];
	}
	return 0;
}

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

// A
int main() {
    ios_base::sync_with_stdio(false);

    string input;

    cin >> input;

    reverse(input.begin(), input.end());

    cout << input << endl;
}

C++: #include "bits/stdc++.h"

#define REP(i,num) for(int i=0;i<(num);++i)
#define ALL(c) c.begin(),c.end()
#define PRINTALL(c) for(auto& x:c){cout<<x<<' ';}cout<<endl;
#define PAIRCOMP(c,comp) [](const pair<ll,ll>& lhs,const pair<ll,ll>& rhs){return lhs.c comp rhs.c;}

using namespace std;
using ll = long long;

constexpr ll atcoder_mod = 1e9+7;

template<typename T=int>
T in(){T x; cin >> x; return (x);}
template<typename T=int,typename C=vector<T>>
C vecin(int N){C x(N);REP(i,N){x[i]=in<T>();}return move(x);}

void vout(){cout << endl;}
template<typename Head,typename... Tail>
void vout(Head&& h,Tail&&... t){cout << ' ' << h;vout(forward<Tail>(t)...);}
void out(){cout << endl;}
template<typename Head,typename... Tail>
void out(Head&& h,Tail&&... t){cout << h;vout(forward<Tail>(t)...);}

int main(){
	cin.tie(0);
	ios::sync_with_stdio(false);
	
	auto S=in<string>();
	reverse(ALL(S));
	
	out(S);
	return 0;
}

C++: #include <stdio.h>
int main(void){
  
  int i=0,j,n,k=0;
  char a[21],b[21];
  
  while(1)
    {
      scanf("%c",&a[i]);
      if(a[i]=='\0')break;
      i++;
    }
  
  for(j=i-2;j>=0;j--)
    {
      b[j]=a[k];
      k++;
    }
  b[j]='\0';

  printf("%s\n",b);
  return 0;
}

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

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