begin process at 2012 05 27 13:50:39
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Divers

 > UN BEAU CARRE

UN BEAU CARRE


 Information sur la source

 Description

Il dessine un beau carré sur la sortie standard

Source

  • /*
  • ** colle.c
  • **
  • ** Made by ali mdidech
  • **
  • **
  • ** Started on Sat Oct 11 15:25:46 2003 ali mdidech
  • ** Last update Sun Nov 2 23:49:11 2003 ali mdidech
  • */
  • #include <stdio.h>
  • int write(int d, const void *buf, int nbytes);
  • void my_putchar(char c)
  • {
  • write(1, &c, 1);
  • }
  • void first_last_line(int columns, int first_last)
  • {
  • int ccolumns;
  • ccolumns = 1;
  • while (ccolumns <= columns)
  • {
  • if (ccolumns == 1)
  • {
  • if (first_last == 0)
  • my_putchar('/');
  • else
  • my_putchar('\\');
  • }
  • else if (ccolumns == columns)
  • {
  • if (first_last == 0)
  • my_putchar('\\');
  • else
  • my_putchar('/');
  • }
  • else
  • my_putchar('*');
  • ccolumns++;
  • }
  • my_putchar('\n');
  • }
  • void corps(int columns, int lines)
  • {
  • int clines;
  • int ccolumns;
  • clines = 2;
  • ccolumns = 1;
  • while (clines < lines)
  • {
  • while(ccolumns <= columns)
  • {
  • if ((ccolumns == 1) || (ccolumns == columns))
  • my_putchar('*');
  • else
  • my_putchar(' ');
  • ccolumns++;
  • }
  • my_putchar('\n');
  • ccolumns = 1;
  • clines++;
  • }
  • }
  • void not_regular(int columns, int lines)
  • {
  • int clines;
  • int ccolumns;
  • if ((columns == 1) && (lines > 0))
  • {
  • clines = 1;
  • while (clines <= lines)
  • {
  • my_putchar('*');
  • my_putchar('\n');
  • clines++;
  • }
  • }
  • else if ((lines == 1) && (columns > 0))
  • {
  • ccolumns = 1;
  • while (ccolumns <= columns)
  • {
  • my_putchar('*');
  • ccolumns++;
  • }
  • my_putchar('\n');
  • }
  • }
  • void colle(int columns, int lines)
  • {
  • if ((columns >= 2) && (lines >= 2))
  • {
  • first_last_line(columns, 0);
  • corps(columns, lines);
  • first_last_line(columns, 1);
  • }
  • else
  • not_regular(columns, lines);
  • }
  • int main(int ac, char **av)
  • {
  • if (ac == 3)
  • colle(atoi(av[1]), atoi(av[2]));
  • else
  • printf("Lancez le programme avec la largeur puis la longeur\nEx:./carre 4 4\n");
  • return(0);
  • }
/*
** colle.c 
**
** Made by ali mdidech
** 
**
** Started on  Sat Oct 11 15:25:46 2003 ali mdidech
** Last update Sun Nov  2 23:49:11 2003 ali mdidech
*/

#include <stdio.h>

int	write(int d, const void *buf, int nbytes);

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

void	first_last_line(int columns, int first_last)
{
  int	ccolumns;

  ccolumns = 1;
  while (ccolumns <= columns)
    {
      if (ccolumns == 1)
	{
	  if (first_last == 0)
	    my_putchar('/');
	  else
	    my_putchar('\\');
	}
      else if (ccolumns == columns)
	{
	  if (first_last == 0)
	    my_putchar('\\');
	  else
	    my_putchar('/');
	}
      else
	my_putchar('*');
      ccolumns++;
    }
  my_putchar('\n');
}

void	corps(int columns, int lines)
{
  int	clines;
  int	ccolumns;

  clines = 2;
  ccolumns = 1;
  while (clines < lines)
    {
      while(ccolumns <= columns)
	{
	  if ((ccolumns == 1) || (ccolumns == columns))
	    my_putchar('*');
	  else
	    my_putchar(' ');
	  ccolumns++;
	}
      my_putchar('\n');
      ccolumns = 1;
      clines++;
    }
}

void	not_regular(int columns, int lines)
{
  int	clines;
  int	ccolumns;

  if ((columns == 1) && (lines > 0))
    {
      clines = 1;
      while (clines <= lines)
	{
	  my_putchar('*');
	  my_putchar('\n');
	  clines++;
	}
    }
  else if ((lines == 1) && (columns > 0))
    {
      ccolumns = 1;
      while (ccolumns <= columns)
	{
	  my_putchar('*');
	  ccolumns++;
	}
      my_putchar('\n');
    }
}

void	colle(int columns, int lines)
{
  if ((columns >= 2) && (lines >= 2))
    {
      first_last_line(columns, 0);
      corps(columns, lines);
      first_last_line(columns, 1);
    }
  else
    not_regular(columns, lines);
}

int	main(int ac, char **av)
{
  if (ac == 3)
    colle(atoi(av[1]), atoi(av[2]));
  else
    printf("Lancez le programme avec la largeur puis la longeur\nEx:./carre 4 4\n");
 return(0);
}

 Conclusion

compiler puis lancez avec 2 argument entiers specifiants la tongeur et la largeur


 Sources du même auteur

LA COMMANDE CAT SANS LES OPTIONS
UN SAPIN DE NOEL

 Sources de la même categorie

Source avec Zip KISIEL CD INFO DRIVE par kisiel0147852
Source avec une capture SUPPRESSION DES REDONDANCES DE FICHIERS par cyberntique
Source avec Zip ÉDITEUR DE RECTANGLES EN CONSOLE par seoseo
CONVERSION DE FICHIER EN FICHIER BMP par seoseo
Source avec Zip DETECTEUR EJP par idpro

Commentaires et avis

Commentaire de prog94 le 09/01/2009 21:31:08

Sa sent la colle d'epitech sa !!

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales