Aller au contenu

Mathc initiation/Fichiers h : x 15

Un livre de Wikilivres.


Sommaire

Installer ce fichier dans votre répertoire de travail.

x_hfile.h
utilitaire
/* ------------------------------------ */
/*  Save as :   x_hfile.h               */
/* ------------------------------------ */
#include    <stdio.h>
#include   <stdlib.h>
#include   <stddef.h>
#include    <ctype.h>
#include     <time.h>
#include     <math.h>
/* ------------------------------------ */
/* ------------------------------------ */
#define         C1     1
#define         C2     2
#define         C3     3
#define         C4     4
#define         C5     5
#define         C6     6
#define         C7     7

#define       CMAX     8
/* ------------------------------------ */
/* ------------------------------------ */
typedef struct
{
    int  i;
    int  j;
} struct_ij;
/* ------------------------------------ */
/* ------------------------------------ */
void clrscrn(void)
{
  printf("\n\n\n\n\n\n\n\n\n\n"
         "\n\n\n\n\n\n\n\n\n\n"
         "\n\n\n\n\n\n\n\n\n\n");
}
/* ------------------------------------ */
void nlign(int n)
{
int i;

  for(i=0;i<n;i++)	
  
        printf("\n");
}
/* ------------------------------------ */
void stop(void)
{
 printf(" Press return to continue. ");
 
 getchar();
}
/* -------------- Into a while() loop - */
int stop_w(void)
{
    printf("\n Press return to continue");
    printf("\n Press X      to stop    ");
    
 return(toupper(getchar())!='X');
}
/* ---------------------------------- */
/* ---------------------------------- 
   Call :  time_t t;                                                          
           int i;                                                           
                                                                            
         srand(time(&t));                                                   
           i = rnd_I(9);                                                    
   ---------------------------------- */
int rp_I(
int maxI)
{
 return((rand() % maxI) + 1);
}
/* ------------------------------------ */
/* ------------------------------------ */
int rp2_I(
int maxI)
{
int n = 0;

	n  = rp_I(maxI) * 1;
	n += rp_I(maxI) * 10;			
	
 return(n);
}
/* ------------------------------------ */
int rp3_I(
int maxI)
{
int n = 0;

	n  = rp_I(maxI) * 1;
	n += rp_I(maxI) * 10;
	n += rp_I(maxI) * 100;				
	
 return(n);
}
/* ------------------------------------ */
int rp4_I(
int maxI)
{
int n = 0;

	n  = rp_I(maxI) * 1;
	n += rp_I(maxI) * 10;
	n += rp_I(maxI) * 100;
	n += rp_I(maxI) * 1000;				
	
 return(n);
}
/* ------------------------------------ */
int rp5_I(
int maxI)
{
int n = 0;

	n  = rp_I(maxI) * 1;
	n += rp_I(maxI) * 10;
	n += rp_I(maxI) * 100;
	n += rp_I(maxI) * 1000;				
	n += rp_I(maxI) * 10000;		
	
 return(n);
}
/* ------------------------------------ */
/* ------------------------------------ */
struct_ij rand_j_mns_i(void)
{
struct_ij value = {0,0}; 

int       c = 0;
int       m = 1;

int      ti = 0;
int      tj = 0;


 for(c = C1; c <= C3; c++)
  {
  ti = rp_I(9);
  tj = rp_I(9);
  
  if(tj>ti) { value.i += ti * m;
	          value.j += tj * m; }
	          
  else      { value.i += tj * m;
	          value.j += ti * m; } 
	
  m *= 10;	             
  }           
  
  value.j += rp_I(9) * m;
       
return (value);
}
/* ------------------------------------ */
/* ------------------------------------ */


Ce fichier contient la bibliothèque des utilitaires.

Il y a une nouvelle fonction "void nlign(int n);", cette fonction permet d'ajouter des lignes vides dans l'écran à la place de la commande "\n".


Les fonctions int rp*_I(int maxI); permettent de contrôler la valeur maximale de chaque chiffre d'un nombre de * chiffres.