Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <string.h>
- #define STOP 0
- #define LS 12
- #define PALCOL 0.79
- #define PARTI 100
- #define M 'M'
- #define SMALTI 0.125
- #define LIM 0.5
- #define MINORE 60
- float kg;
- float coeff;
- float menu();
- float acquisizione();
- float alcolemia(float, float);
- void responso(float);
- int main(int argc, char *argv[])
- {
- float alcol;
- coeff=menu();
- alcol=acquisizione(kg, coeff);
- responso(alcol);
- return 0;
- }
- float menu()
- {
- char sesso, pancia[LS+1];
- int next;
- printf("Inserire il proprio peso corporeo in kg:\n");
- scanf("%f", &kg);
- printf("Indicare se si era a 'pancia piena' o 'pancia vuota'\n");
- gets(pancia);
- if(gets(pancia)){
- printf("Inserire il proprio sesso (M/F)\n");
- scanf("%c", &sesso);
- }
- if(sesso==M){
- if(!strcmp(pancia, "pancia piena"))
- return 1.2;
- else
- return 0.7;
- }else
- if(!strcmp(pancia, "pancia piena"))
- return 0.9;
- return 0.5;
- }
- float acquisizione()
- {
- float gradi, ml, alcol;
- do{
- printf("Inserire la quantità (in ml) di bevanda ingerita e la rispettiva gradazione (inserire 0 0 per terminare):\n");
- scanf("%f%f", &ml, &gradi);
- if(!(ml==STOP && gradi==STOP))
- alcol+=alcolemia(ml, gradi);
- }while(ml!=STOP && gradi!=STOP);
- return alcol;
- }
- float alcolemia(float ml, float gradi)
- {
- return ml*gradi*PALCOL/(PARTI*(kg)*(coeff));
- }
- void responso(float alcol)
- {
- int orelim, minlim, ore, min;
- orelim=(alcol-LIM)/SMALTI;
- minlim=MINORE*((alcol-LIM)/SMALTI-orelim);
- ore=(alcol)/SMALTI;
- min=MINORE*(alcol/SMALTI-ore);
- printf("Il tasso alcolemico del sangue è %f g/l, ", alcol);
- if(alcol<LIM)
- printf("quindi ti è consentito guidare\n");
- else{
- printf("quindi non ti è consentito guidare\n\nTi sarà consentito guidare tra circa ");
- if(orelim>1)
- printf("%d ore e %d minuti\n", orelim, minlim);
- else if(orelim==1)
- printf("%d ora e %d minuti\n", orelim, minlim);
- else
- printf("%d minuti\n", minlim);
- }
- printf("Inoltre smaltirai completamente l'alcol tra circa ");
- if(ore>1)
- printf("%d ore e %d minuti\n", ore, min);
- else if(ore==1)
- printf("%d ora e %d minuti\n", ore, min);
- else
- printf("%d minuti\n", min);
- return ;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement