#include <stdio.h>
#include <stdlib.h>
void draw(int num, int col, int row)
{
int i, j, n;
printf(" |");
for (j = 0; j < col; ++j) printf("#%-3i|", j+1);
printf("\n");
for (i = 0; i < row; ++i)
{
printf("#%-3i|", i+1);
for (j = 0, n = i; j < col; ++j, n += row)
(n < num) ? printf("%4i|", n) : printf(" -|");
printf("\n");
}
}
void calc(int num, int inp_col, int *out_col, int *row)
{
int m;
*out_col = inp_col;
m = num % inp_col;
*row = num / inp_col;
if (m == 0) return;
(*row)++;
if (inp_col - m < *row) return;
*out_col = num / *row;
if (num % *row > 0) (*out_col)++;
}
int main(int argc, char *argv[])
{
int an,ac,r,c;
an = atoi(argv[1]);
ac = atoi(argv[2]);
calc(an, ac, &c, &r);
if (ac != c) printf("Nem oldhato meg %i oszlopban\n", ac);
printf("Megoldhato %i oszlopban, %i sor\n", c, r);
draw(an, c, r);
return 0;
}