Mathc initiation/Fichiers h : x 15
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.