You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

140 lines
3.0 KiB

#include "sae.h"
#include <stdlib.h>
void AjoutArticle(void)
{
int ref;
float poid,volume,prix;
FILE *flot;
flot = fopen("articles.txt","a");
if (flot == NULL)
{
printf("Problème avec la création du fichier\n");
exit(1);
}
printf("Saisir la référence de l'article (-1 pour arrêter): ");
scanf("%d",&ref);
while (ref < -1)
{
printf("Erreur ; Le numéro doit être positif (ou -1 pour arrêter); retapez : ");
scanf("%d",&ref);
}
while (ref >= 0)
{
printf("Saisir le poid(kg): ");
scanf("%f",&poid);
while (poid < 0)
{
printf("Erreur ; Le poid doit être positif ; retapez : ");
scanf("%f",&poid);
}
printf("Saisir le volume: ");
scanf("%f",&volume);
while (volume < 0)
{
printf("Erreur ; Le volume doit être positif ; retapez : ");
scanf("%f",&volume);
}
printf("Saisir le prix: ");
scanf("%f",&prix);
while (prix < 0)
{
printf("Erreur ; Le prix doit être positif ; retapez : ");
scanf("%f",&prix);
}
fprintf(flot,"%d\t%.3f\t%.2f\t%.2f\n",ref,poid,volume,prix);
printf("Saisir la référence de l'article (-1 pour arrêter): ");
scanf("%d",&ref);
while (ref < -1)
{
printf("Erreur ; Le numéro doit être positif (ou -1 pour arrêter); retapez : ");
scanf("%d",&ref);
}
}
fclose(flot);
printf("Fin de l'ajout.\n");
}
int TableArticle(int Tref[], float Tpoid[],float Tvolume[],float Tprix[])
{
int ref,i=0;
float poid,volume,prix;
FILE *flot;
flot = fopen("articles.txt","r");
if (flot == NULL)
{
printf("Problème avec la lecture du fichier\n");
exit(1);
}
fscanf(flot,"%d %f %f %f",&ref,&poid,&volume,&prix);
while(feof(flot) == 0)
{
Tref[i] = ref;
Tpoid[i] = poid;
Tvolume[i] = volume;
Tprix[i] = prix;
i++;
fscanf(flot,"%d %f %f %f",&ref,&poid,&volume,&prix);
}
fclose(flot);
return i;
}
void AffichTable(int Tref[], float Tpoid[],float Tvolume[],float Tprix[],int n)
{
int i;
printf("référence\tpoids(kg)\tvolume(l)\tprix Unitaire\n");
for (i=0;i < n;i++)
{
printf("%d\t\t%.2f\t\t%.3f\t\t%.2f\n",Tref[i],Tpoid[i],Tvolume[i],Tprix[i]);
}
}
void ModifArticle(int Tref[], float Tpoid[],float Tvolume[],float Tprix[],int n)
{
int refR;
printf("Saisir la référence de l'article a modifier: ");
scanf("%d",&refR);
while (refR < -1)
{
printf("Erreur ; Le numéro doit être positif; retapez : ");
scanf("%d",&refR);
}
int i;
for (i=0;i < n;i++)
{
if (Tref[i] == refR)
{
printf("Saisir le nouveau poid(kg): ");
scanf("%f",&Tpoid[i]);
while (Tpoid[i] < 0)
{
printf("Erreur ; Le poid doit être positif ; retapez : ");
scanf("%f",&Tpoid[i]);
}
printf("Saisir le nouveau volume: ");
scanf("%f",&Tvolume[i]);
while (Tvolume[i] < 0)
{
printf("Erreur ; Le volume doit être positif ; retapez : ");
scanf("%f",&Tvolume[i]);
}
printf("Saisir le nouveau prix: ");
scanf("%f",&Tvolume[i]);
while (Tvolume[i] < 0)
{
printf("Erreur ; Le prix doit être positif ; retapez : ");
scanf("%f",&Tvolume[i]);
}
}
}
}