#include<stdio.h>
#include<iostream>
#include<string.h>
#include<math.h>
#define _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_DEPRECATE
#pragma warning(disable:4996)
using namespace std;
long long gcd(long long a,long long b)
{
long long tool;
while (b != 0)
{
tool = b;
b = a % b;
a = tool;
}
return a;
}//约分
long long math(long long n)
{
long long len = 0;
while (n)
{
len++;
n = n / 10;
}
return len;
}//判断位数
long long max(int a,int b)
{
if (a > b)
return a;
else
return b;
}//放回最长的位数
int main()
{
long long numerator = 1;
long long denominator = 1;
long long n;
long long tool=0;
while (scanf("%lld", &n) != EOF)
{
numerator = n;
long long tep = n;
for (int i = 2; i <= n; i++)
{
numerator = numerator * i + denominator * tep;
denominator = denominator * i;
tool = gcd(numerator, denominator);
numerator = numerator / tool;
denominator = denominator / tool;
}
long long len = 0;
long long len1 = 0, len2 = 0, len3 = 0;
long long integer;
tool = denominator;
if (denominator == 1)
{
printf("%lld", numerator);
}
else
{
integer = numerator / denominator;
numerator -= integer * denominator;
len1 = math(integer);
len2 = math(denominator);
len3 = math(numerator);
len = max(len2, len3);
for (int i = 0; i <= len1; i++)
printf(" ");
printf("%lld\n", numerator);
printf("%lld ", integer);
for (int i = 1; i <= len; i++)
printf("-");
printf("\n");
for (int i = 0; i <= len1; i++)
printf(" ");
printf("%lld", denominator);
}
tep = 0;
len=0,len1 = 0,len2=0,len3=0;
numerator = 1;
denominator = 1;
tool = 0;
}
return 0;
}