Go: package main

import (
        "fmt"
)

func main () {
        var str string
        fmt.Scanf("%s", &str)
        show(len(str)-1, str)
}

func show(n int, str string) {
        if n == 0 {
                fmt.Printf("%s\n", string(str[n]))
        } else {
                fmt.Printf("%s", string(str[n]))
                show(n-1, str)
        }
}

C++: #include<stdio.h>
#include <string.h>
int main(){
	int i;
	char str[30];
	scanf(" %[^\n]", str);
	for(i = strlen(str) - 1; i>=0; --i){
		printf("%c", str[i]);
	}
	printf("\n");
	return 0;
}

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

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

    for (int i=str.length();i>=0;--i)
    {
        std::cout << str[i];
    }
}

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

int main(){
	char str[30], *end_p;
	int end;;
	cin >>str;
	
	end_p = strrchr(str, '\0');
	end = end_p - str;
	
	for(int i = (end - 1); i >= 0; i--){
		cout <<str[i];
	}
	
	cout <<endl;
	return 0;
}

C++: #include<iostream>
#include<cstring>
using namespace std;
#define F(I,N) for(int I=0;I<N;I++)
void swap(char *a,char *b){
	char t=*a;
	*a=*b;
	*b=t;
}

int main(){
	char str[30];
	while(cin>>str){
		int l=strlen(str);
		F(i,l/2) swap(&str[i],&str[l-i-1]);
		cout<<str<<endl;
	}
	return 0;
}

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

using namespace std;

int main(int argc, char *argv[]) {
  string str;

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

C++: //--------------------------------------------------template----------------------------------------//
//c
#include <stdio.h>
#include <time.h>
#include <math.h>
//c++
#include <cstdio>
#include <iostream>
#include <algorithm>
#include <functional>
#include <cstdlib>
#include <sstream>
#include <string>
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <deque>
#include <vector>
#include <complex>
#include <cmath>
//c++11
#include <tuple>
#define all(c) ((c).begin(),(c).end())
#define rall(c) (c).rbegin(),(c).rend()
//#define sort(v,n) sort(v,v+n)
//#define vsort(v) sort(v.begin(),v.end())
#define vvsort(v) sort(v.rbegin(),v.rend())
#define ll long long
#define pb(a) push_back(a)
#define fi first
#define se second
#define inf 999999999
using namespace std;
const ll MOD = 1e9 + 7;
const double PI = acos(-1.0);
//---------------------------------------------------------------------------------------------//
string s;

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

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>
#include <algorithm>
using namespace std;

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

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

int main(void){

  char word[25];
  int i,length;
  
  cin >> word;
  length = strlen(word);
  
  for(i = length + 1; i >=0; i--){
   cout << word[i];
  }
  
  cout << endl;
  
  return 0;

}

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

using namespace std;

int main(void){

  string hoge;

  cin >> hoge;

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

C++: #include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
double gcd( double m, double n );
double lcm( double m, double n );
int main(int argc, const char * argv[])
{
    char a[20];
    int n=0;
    while(scanf("%c",&a[n])!=EOF){
        n++;
    }
    for(int i=n-1; i>=0;i--){
        printf("%c",a[i]);
    }
    printf("\n");
    
    
}

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];
	std::cout << std::endl;
	return 0;
}

C++: #include <cstdio>
#include <algorithm>
int main( int argc, char *argv[] ) {
	using namespace std;
	char str[20];
	fscanf(stdin, "%s", str);
	for (int i=0; i<20; i++) {
		if (str[i] == '\0') {
			int last = i-1;
			for (int j=0; j<i/2; j++) {
				swap(str[j], str[last-j]);
			}
			break;
		}
	}
	printf("%s\n", str);
	return 0;
}

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

int main(){
  string str;
  cin >> str;
  int l = strlen(str);
  for(int i = l - 1; i >= 0; i--){
    cout << str[i];
  }
  cout << endl;
}

C++: #include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main() {
  string s;
  while(getline(cin, s)) {
    reverse(s.begin(), s.end());
    cout << s << endl;
  }
  return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;
int main() {
	string str;
	cin>>str;
	reverse(str.begin(),str.end());
	cout<<str<<endl;
}

C++: #include <stdio.h>
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
#define rep(i, n) for (int i = 0; i < (int)(n); i++)

int main() {
    string s;
    getline(cin, s);
    if (s.size() > 0 && s[s.size()-1] == '\r') s.resize(s.size()-1);
    reverse(s.begin(), s.end());
    cout << s << endl;
    return 0;
}

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

using namespace std;

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

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

void reverse(char *);
int main()
{

	
	char str[20];
	gets(str);
	reverse(str);
   getch();

}
void reverse(char *str)
{
	char *p=str;
   *p++;
	if(*p) reverse(p);
   cout << *str;
   
}

C++: #include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
const ll MOD = 1e9 + 7/*998244353*/;
const ll INF = 1LL << 60;
ll mod_pow(ll, ll, ll); ll mod_fact(ll, ll); ll mod_inv(ll, ll); ll gcd(ll, ll); ll lcm(ll, ll);
//
int main(){
    string s;
    cin >> s;
    reverse(s.begin(), s.end());
    cout << s << "\n";
}

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

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

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

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

C++: #include<stdio.h>

int main(void){
	char str[21],c;
	int n;
	scanf("%s",str);
	for(int i=0;i<21;i++){
		if(str[i]=='\0'){
			n=i;
			break;
		}
	}
	for(int i=0;i<n/2;i++){
		c=str[i];
		str[i]=str[n-i-1];
		str[n-i-1]=c;
	}
	printf("%s\n",str);
	return 0;
}

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

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

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.pop_back();
    }
    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++: // Reverse Sequence
#include <cstdio>
#include <cstring>

int main()
{
	char str[20+1] = {0};
	scanf("%s", str);
	
	size_t n = strlen(str);
	
	for (int i = n -1; i >= 0; i--)
		printf("%c", str[i]);
	printf("\n");
	
	return 0;
}