#include <stdio.h>

void power3(unsigned long result[]);
void print_result(unsigned long result[]);


int main(void) {
unsigned long a[9] = {1, 0, 0, 0, 0, 0, 0, 0, 0};
for(int i = 1; i < 100; i++){
power3(a);
printf("n = %d:", i);
print_result(a);
printf("\n");
}
return 0;
}

void power3(unsigned long result[]){
for(int i = 0; i < 8; i++){
result[i] = result[i] * 3;
}
for(int i = 0; i < 8; i++){
if(result[i] > 9999999){
result[i+1] = result[i+1] + result[i] / 10000000 ;
result[i] = result[i] % 10000000;
}
}
}

void print_result(unsigned long result[]){
for(int i = 8; i >= 0; i--){
if(result[i] == 0){
	printf("        ");
}
else if(result[i] < 10){
	printf("      %lu", result[i]);
}
else if(result[i] < 100){
	printf("     %lu", result[i]);
}
else if(result[i] < 1000){
	printf("    %lu", result[i]);
}
else if(result[i] < 10000){
	printf("   %lu", result[i]);
}
else if(result[i] < 100000){
	printf("  %lu", result[i]);
}
else if(result[i] < 1000000){
	printf(" %lu", result[i]);
}
else{
printf("%lu ", result[i]);
}
	
}
}
