#include <unistd.h>

void	ft_putchar(char c)
{
	write(1, &c, 1);
}

void	imp(int x, int y, int ind_y)
{
	int	ind_x;

	ind_x = 0;
	while (ind_x < x)
	{
		if (ind_x == 0 && ind_y == 0)
			ft_putchar('o');
		else if (ind_x == x - 1 && ind_y == 0)
			ft_putchar('o');
		else if (ind_x == 0 && ind_y == y - 1)
			ft_putchar('o');
		else if (ind_x == x - 1 && ind_y == y - 1)
			ft_putchar('o');
		else if (ind_y == 0 || ind_y == y - 1)
			ft_putchar('-');
		else if (ind_x == 0 || ind_x == x - 1)
			ft_putchar('|');
		else
			ft_putchar(' ');
		ind_x++;
	}
	ft_putchar('\n');
}

void	rush(int x, int y)
{
    
    int	ind_y;

    ind_y = 0;

    if (x < 1 || y < 1)
    {   write (1, "Saisie de valeur(s) incorrecte",30);
        return ;
    }
    if ((x >= 1 && x < 2147483647) && (y >= 1 && y < 2147483647))
    {
    	while (ind_y < y)
    	{
    		imp(x, y, ind_y);
    		ind_y++;
    	}
        return ;
    }
}


int	main()
{
    
    {
	rush(2222222222222222222,3);
	return (0);
    }
}

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: