Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* ************************************************************************** */
- /* */
- /* ::: :::::::: */
- /* sastantua.c :+: :+: :+: */
- /* +:+ +:+ +:+ */
- /* By: kmills <marvin@42.fr> +#+ +:+ +#+ */
- /* +#+#+#+#+#+ +#+ */
- /* Created: 2018/10/21 18:43:35 by kmills #+# #+# */
- /* Updated: 2018/10/21 19:32:48 by kmills ### ########.fr */
- /* */
- /* ************************************************************************** */
- void ft_putchar(char c);
- int ft_1(int size);
- void ft_2(int size);
- void ft_3(int size,int n);
- void ft_even_odd_number(int size);
- void sastantua(int size);
- int g_i = 2;
- int g_k_zv = -5;
- int g_k_pr = 0;
- int g_lvl;
- int g_k_str = 2;
- int g_t_str = 1;
- int g_z = 6;
- int g_k;
- int g_n = 3;
- int ft_1(int size)
- {
- int p[150];
- int s[150];
- p[0] = 2;
- p[1] = 8;
- p[2] = 15;
- s[0] = 6;
- s[1] = 7;
- s[2] = 9;
- while (g_i++ <= size)
- {
- if (g_i % 2 == 0)
- s[g_i] = s[g_i - 1] + 2;
- else
- s[g_i] = s[g_i-1] + 1;
- }
- g_i = 2;
- while (g_i++ <= size)
- p[g_i] = p[g_i - 1] + s[g_i - 1];
- g_k = p[g_i - 3];
- return (g_k);
- }
- void ft_2(int size)
- {
- if (g_lvl == size && g_t_str == 1)
- g_k_pr = g_k;
- else if (g_lvl != size && g_t_str == 1)
- {
- g_k_pr = g_k_pr - g_n;
- if ((size - g_lvl) > 1 && (size - g_lvl) % 2 == 0)
- g_n = g_n + 1;
- }
- else
- g_k_pr = g_k_pr - 1;
- if (g_t_str == 1)
- {
- if ((size - g_lvl) > 2 && ((size - g_lvl) % 2 != 0))
- g_z = g_z + 2;
- g_k_zv = g_k_zv + g_z;
- }
- else
- g_k_zv = g_k_zv + 2;
- g_i = 0;
- while (g_i++ < g_k_pr)
- ft_putchar(' ');
- g_i = 0;
- ft_putchar('/');
- }
- //void ft_3(int size, int n)
- {
- while (g_i++ < (n + (g_k_zv / 2) - (size / 2)))
- ft_putchar('*');
- g_i = 0;
- if (g_t_str == 3 + (size / 2) && size > 4)
- {
- while (g_i++ < (size - 2 - n))
- ft_putchar('|');
- ft_putchar('$');
- ft_putchar('|');
- g_i = 0;
- while (g_i++ < (n + (g_k_zv / 2) - (size / 2)))
- ft_putchar('*');
- }
- else
- {
- while (g_i++ < (size - n))
- ft_putchar('|');
- g_i = 0;
- while (g_i++ < (n + (g_k_zv / 2) - (size / 2)))
- ft_putchar('*');
- }
- }
- void ft_even_odd_number(int size)
- {
- int n;
- if (size % 2 != 0)
- n = 0;
- else
- n = 1;
- if (g_t_str > 2 + n)
- {
- ft_3(size, n);
- }
- else
- while (g_i++ < g_k_zv)
- ft_putchar('*');
- }
- void sastantua(int size)
- {
- g_lvl = size;
- g_k = ft_1(size);
- while (g_lvl > 0)
- {
- g_k_str++;
- while (g_t_str <= g_k_str)
- {
- ft_2(size);
- if (g_lvl != 1)
- while (g_i++ < g_k_zv)
- ft_putchar('*');
- else
- {
- ft_even_odd_number(int size);
- }
- g_i = 0;
- ft_putchar('\\');
- ft_putchar('\n');
- g_t_str++;
- }
- g_lvl--;
- g_t_str = 1;
- }
- }
- int main(int argc, char *argv[])
- {
- int g_n;
- g_n = argc;
- g_n = atoi(argv[1]);
- //printf("g_n = %g_i\n", g_n);
- sastantua(g_n);
- return (0);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement