Go: package main

import (
	"fmt"
)

func main() {
	var str string
	fmt.Scanf("%s", &str)
	fmt.Printf("%s\n", strReverse(str))
}

func strReverse(str string) string {
	data := []rune(str)
	result := []rune{}

	for i := len(data) - 1; i >= 0; i-- {
		result = append(result, data[i])
	}

	return string(result)
}

C++: #include <iostream>

//文字列の文字数を返す関数
int str_length(char* str)
{
	int length;
	for (length = 0; length < 20; length++)  //文字列は最大20文字のため、length < 20
	{
		if (str[length] == '\0')  //ヌル記号→文字列の終端
		{
			break;
		}
	}
	return length;  //ヌル記号の配列番号＝文字列の文字数
}

//文字列を逆順に出力する関数
void reverce_output(char* str){
	int length = str_length(str);  //文字列の文字数を調べる
	int str_end = length - 1;  //文字数-1 = char型配列の、最後の文字の番号
	for (int i = 0; i < length; i++)
	{
		std::cout << str[str_end - i];  //文字列を逆順に出力
	}
	std::cout << '\n';
}

int main(){
	char input_char[20];  //入力される文字列の変数
	std::cin >> input_char;
	reverce_output(input_char); //文字列を逆順に出力
}

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) << endl;
	}
}

C++: #include <stdio.h>
#include <string.h>
 
int main(void)
{
  char str[25] = {0};
  int cx;

  fgets(str, sizeof(str), stdin);
  cx = strlen(str);

  for (int x=cx-2; x>=0; x--) {
    putchar(str[x]);
  }
  puts("");
 
  return 0;
}

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

using namespace std;

int main(void) {
	string str;
	getline(cin, str);

	for (int i = 0; i < str.length() / 2; i++) {
		char c;
		c = str[i];
		str[i] = str[str.length() - 1 - i];
		str[str.length() - 1 - i] = c;
	}

	cout << str << endl;

	return 0;
}

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

int main(){
	string s;
	cin>>s;
	for(int i=s.length()-1;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;

    return 0;
}

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

int main(){
    string s;
    cin >> s;
    int n = s.size();
    for(int i=0;i<n/2;i++) swap(s[i],s[n-i-1]);
    cout << s << endl;
}

C++: #include <iostream>
#include <string.h>
#define NUM_MOJI 20

using namespace std;

int main()
{
	char moji[NUM_MOJI];
	char r_moji[NUM_MOJI];

	cout << "文字列を入力してください："<<endl;

	//文字列入力
	cin >> moji;
	
	//反転
	for(int i=0; i < strlen(moji); ++i)
	{
		r_moji[i] = moji[strlen(moji)-(i+1)];
	}

	//出力
	for(int i=0; i < strlen(moji); ++i)
	{
		cout << r_moji[i];
	}



	return 0;
}

C++: #include<iostream>
int main(){char c[21];std::cin>>c;std::string d(c);std::reverse(d.begin(),d.end());std::cout<<d.c_str()<<'\n';}

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

using namespace std;

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

  for ( size_t i = 0; i < str.size(); i++ )
    cout << str[str.size()-1-i];

  cout << endl;
  
  return 0;
}

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

int main(){
  char str[30];
  int len, i;

  scanf("%[^\n]", str);
  len=strlen(str);
  for(i=0; i<len; i++){
    putchar(str[len-i-1]);
  }
  putchar('\n');
  return 0;
}

C++: /*
　　　　 ∧＿∧　にっぽんちゃちゃちゃ
　／＼（　・∀・）／ヽ
（ ●　と　　　つ　● ）　にっぽんちゃちゃちゃ
　＼/⊂、 ノ　　＼ノ
　　　　　し'
*/
#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i=0;i<(int)(n);++i)
#define repone(i,n) for(int i=1;i<(int)(n);++i)
#define repo(i,o,n) for(int i=o;i<(int)(n);++i)
#define Rep(j,n) for(int j=0;j<(int)(n);++j)
#define Repone(j,n) for(int j=1;j<(int)(n);++j)
#define all(v) (v).begin(),(v).end()
#define rall(v) (v).rbegin(),(v).rend()
#define int long long
#define MOD 1000000007
#define INF 9223372036854775807

signed main()
{
  string xyz ="";
int x=0,y=0,z=0,w=0,i=0,j=0,n=0;
std::cin >> xyz;

for(i=xyz.size()-1;i>=0;i--){
  std::cout << xyz[i];
}
std::cout  << '\n';

}

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

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

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

void main()
{
 char str[20],temp;
 int i,j=0;
 gets(str);
 i=0;
 j=strlen(str)-1;

 while(i<j)
     {
     temp=str[i];
     str[i]=str[j];
     str[j]=temp;
     i++;
     j--;
     }

 printf("%s",str);
 return(0);
}

C++: #include <iostream>
#include <vector>
#include <utility>
#include <string>
#include <algorithm>
#include <numeric>
#include <cmath>
#include <string.h>
#include <deque>
#define REP(i,j,n) for(int i=j;i<n;i++)
#define SORT(x) sort(x.begin(),x.end())

using namespace std;



int main() {
	string s;
	char v[20];
	/*getline(cin,s);

	for (auto itr = s.end(); itr != s.begin(); itr--) {
		cout << *itr;
	}
	cout << endl;*/

	cin >> v;
	for (int i = strlen(v)-1; i > -1; i--) {
		cout << v[i];
	}
	cout << endl;
	return 0;
}

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

using namespace std;

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

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

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

C++: //#define _USE_MATH_DEFINES
#define _CRT_SECURE_NO_WARNINGS
#include <cstdio>
#include <cstdlib>
//#include <cmath>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
#include <map>
#include <list>
#include <queue>
#include <set>
using namespace std;

int main(void){

	char str[50];
	
	cin >> str;
	
	int len = strlen(str);

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

	return 0;
}

/*
for(i=0;i<N;i++){
cin >> X[i];
}


for(i=0;i<N;i++){
for(j=0;j<N;j++){
cin >> X[i][j];
}
}
*/

C++: #include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int main()
{
    char a[100];
    int i;
    for(i=0;(a[i]=getchar())!='\n';i++);
    for(int j=i-1;j>=0;j--){
        cout<<a[j];
    }
    cout<<endl;
    return 0;
}

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

// http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0006

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

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

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

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

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

C++: #include <iostream>
#include <algorithm>
#include <cstdio>
#include <string>
#include <sstream>
#include <cstdlib>
#include <cmath>
 
using namespace std;

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

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 <stdio.h>
int main(void){
    // Your code here!
    int main(void){
    char str[100];
    int i;
    int count=0;
    
    scanf("%s",str);
    
    for(i=0;str[i]!='\0';i++){
        count++;
    }
    for(i=count-1;i>=0;i--){
        printf("%c",str[i]);
    }
    printf("\n");

    return 0;
}