Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CALCUL DU TAUX D'ALCOOLEMIE


Information sur la source

Catégorie :VB.NET Classé sous : alcool, calcul, taux Niveau : Débutant Date de création : 12/12/2007 Vu / téléchargé: 14 723 / 442

Note :
6,5 / 10 - par 2 personnes
6,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (14)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Calcul du taux d'alcoolemie en fonction du sexe et du poids du sujet et nombre d'heure de récupération
 

Source

  • ' Conçu avec SharpDevelop 2.2.1
  • ' Programmeur : DODICH
  • ' Date : Décembre 2007
  • '
  • '
  • Imports System.Math
  • Imports System.DateTime
  • Imports System.Drawing.Color
  • Public Partial Class MainForm
  • Dim ToolTip1 As New ToolTip
  • Dim A, B, C, D, E As Decimal 'Variable alcool et total
  • Dim K As Decimal 'Homme = 0.7 / Femme = 0.6
  • Dim M As Integer 'Poids
  • Dim T, R As Decimal 'T: Taux, R: Récup
  • Public Sub New()
  • Me.InitializeComponent()
  • 'Affichage des infos sur les images
  • ToolTip1.SetToolTip(Me.PictureBox1, "Calculer le taux d'alcoolémie")
  • ToolTip1.SetToolTip(Me.PictureBox2, "Ajouter une bière")
  • ToolTip1.SetToolTip(Me.PictureBox3, "Ajouter un verre de vin")
  • ToolTip1.SetToolTip(Me.PictureBox4, "Ajouter un verre de vin")
  • ToolTip1.SetToolTip(Me.PictureBox5, "Ajouter une dose d'alcool fort")
  • ToolTip1.SetToolTip(Me.PictureBox6, "Ajouter une dose d'alcool doux")
  • ToolTip1.SetToolTip(Me.PictureBox7, "Ajouter une dose d'alcool fort")
  • ToolTip1.SetToolTip(Me.PictureBox10, "Afficher l'aide")
  • K = 0.7
  • M = 80
  • End Sub
  • Sub PictureBox1Click(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • Alcoolemie()
  • End Sub
  • Sub Alcoolemie
  • On Error Resume Next
  • E = A + B + C + D 'Total des consommation
  • TextBox5.Text = E
  • If radioButton1.Checked = True Then K = 0.7 'Homme
  • If radioButton2.Checked = True Then K = 0.6 'Femme
  • TextBox6.Text = (E * 0.8) / (K * M) 'Formule alcoolemie
  • T = TextBox6.Text
  • Label14.Text = Math.Round(T, 2) 'Arrondi 2 chiffres après la virgule
  • R = Label14.Text - 0.5
  • TextBox7.Text = R / 0.15 * 60 'Alcool à évacuer
  • If TextBox7.Text < 0 Then TextBox7.Text = 0
  • Dim Heure As String
  • Heure = Int(TextBox7.Text / 60) & " heure(s) et " & TextBox7.Text Mod 60 & " minute(s)"
  • Label17.Text = Heure 'Affichage du nombre d'heure(s) pour récupérer
  • If TextBox7.Text < 0.5 Then
  • 'Affichage du texte en bleu ou en rouge
  • Label14.ForeColor = System.Drawing.Color.SteelBlue
  • Label15.ForeColor = System.Drawing.Color.SteelBlue
  • Label17.Visible = False
  • Else
  • Label14.ForeColor = System.Drawing.Color.Firebrick
  • Label15.ForeColor = System.Drawing.Color.Firebrick
  • Label17.Visible = True
  • End If
  • End Sub
  • Sub NumericUpDown4ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox1.Text = (numericUpDown4.Value * 250) * (numericUpDown7.Value / 100)
  • A = TextBox1.Text 'valeur de 25cl de bière
  • End Sub
  • Sub NumericUpDown7ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox1.Text = (numericUpDown4.Value * 250) * (numericUpDown7.Value / 100)
  • A = TextBox1.Text
  • End Sub
  • Sub NumericUpDown6ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox2.Text = (numericUpDown6.Value * 20) * (numericUpDown5.Value / 100)
  • B = TextBox2.Text
  • End Sub
  • Sub NumericUpDown5ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox2.Text = (numericUpDown6.Value * 20) * (numericUpDown5.Value / 100)
  • B = TextBox2.Text
  • End Sub
  • Sub NumericUpDown1ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • M = NumericUpDown1.Value
  • End Sub
  • Sub Timer1Tick(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • Label2.Text = Now.ToLongTimeString 'Affichage de l'heure
  • End Sub
  • Sub NumericUpDown9ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox3.Text = (numericUpDown9.Value * 100) * (numericUpDown8.Value / 100)
  • C = TextBox3.Text
  • End Sub
  • Sub NumericUpDown8ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox3.Text = (numericUpDown9.Value * 100) * (numericUpDown8.Value / 100)
  • C = TextBox3.Text
  • End Sub
  • Sub NumericUpDown11ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox4.Text = (numericUpDown11.Value * 60) * (numericUpDown10.Value / 100)
  • D = TextBox4.Text
  • End Sub
  • Sub NumericUpDown10ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • TextBox4.Text = (numericUpDown11.Value * 60) * (numericUpDown10.Value / 100)
  • D = TextBox4.Text
  • End Sub
  • Sub PictureBox2Click(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • numericUpDown4.Value = numericUpDown4.Value + 1
  • End Sub
  • Sub PictureBox3Click(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • numericUpDown9.Value = numericUpDown9.Value + 1
  • End Sub
  • Sub PictureBox4Click(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • numericUpDown9.Value = numericUpDown9.Value + 1
  • End Sub
  • Sub PictureBox5Click(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • numericUpDown6.Value = numericUpDown6.Value + 1
  • End Sub
  • Sub PictureBox7Click(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • numericUpDown6.Value = numericUpDown6.Value + 1
  • End Sub
  • Sub PictureBox6Click(ByVal sender As Object, ByVal e As EventArgs)
  • On Error Resume Next
  • numericUpDown11.Value = numericUpDown11.Value + 1
  • End Sub
  • Sub PictureBox10Click(ByVal sender As Object, ByVal e As EventArgs)
  • PictureBox8.Visible = True 'Affichage de l'aide
  • End Sub
  • Sub PictureBox8Click(ByVal sender As Object, ByVal e As EventArgs)
  • PictureBox8.Visible = False 'Masquer l'aide
  • End Sub
  • End Class
' Conçu avec SharpDevelop 2.2.1
' Programmeur : DODICH
' Date : Décembre 2007
'
'
Imports System.Math
Imports System.DateTime
Imports System.Drawing.Color


Public Partial Class MainForm
	
	Dim ToolTip1 As New ToolTip
	Dim A, B, C, D, E As Decimal  'Variable alcool et total
	Dim K As Decimal 'Homme = 0.7 / Femme = 0.6
	Dim M As Integer  'Poids
	Dim T, R As Decimal  'T: Taux, R:  Récup
	
	Public Sub New()
		
		Me.InitializeComponent()
		'Affichage des infos sur les images
		ToolTip1.SetToolTip(Me.PictureBox1, "Calculer le taux d'alcoolémie")
		ToolTip1.SetToolTip(Me.PictureBox2, "Ajouter une bière")
		ToolTip1.SetToolTip(Me.PictureBox3, "Ajouter un verre de vin")
		ToolTip1.SetToolTip(Me.PictureBox4, "Ajouter un verre de vin")
		ToolTip1.SetToolTip(Me.PictureBox5, "Ajouter une dose d'alcool fort")
		ToolTip1.SetToolTip(Me.PictureBox6, "Ajouter une dose d'alcool doux")
		ToolTip1.SetToolTip(Me.PictureBox7, "Ajouter une dose d'alcool fort")
		ToolTip1.SetToolTip(Me.PictureBox10, "Afficher l'aide")
		K = 0.7
		M = 80
		
	End Sub
	
	Sub PictureBox1Click(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		Alcoolemie()
		
	End Sub
	
	Sub Alcoolemie
		
		On Error Resume Next
		
		E = A + B + C + D  'Total des consommation
		TextBox5.Text = E
		If radioButton1.Checked = True Then K = 0.7  'Homme
		If radioButton2.Checked = True Then K = 0.6  'Femme
		
		TextBox6.Text = (E * 0.8) / (K * M)  'Formule alcoolemie
		T = TextBox6.Text
		Label14.Text = Math.Round(T, 2)  'Arrondi 2 chiffres après la virgule
		
		R = Label14.Text - 0.5
		TextBox7.Text = R / 0.15 * 60  'Alcool à évacuer
		If TextBox7.Text < 0 Then TextBox7.Text = 0
		
		Dim Heure As String
        Heure = Int(TextBox7.Text / 60) & " heure(s) et " & TextBox7.Text Mod 60 & " minute(s)"
		Label17.Text = Heure  'Affichage du nombre d'heure(s) pour récupérer
		
		If TextBox7.Text < 0.5 Then
			'Affichage du texte en bleu ou en rouge
			Label14.ForeColor = System.Drawing.Color.SteelBlue
			Label15.ForeColor = System.Drawing.Color.SteelBlue
			Label17.Visible = False
		Else
			Label14.ForeColor = System.Drawing.Color.Firebrick
			Label15.ForeColor = System.Drawing.Color.Firebrick
			Label17.Visible = True
		End If
		
	End Sub
	
	Sub NumericUpDown4ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox1.Text = (numericUpDown4.Value * 250) * (numericUpDown7.Value / 100)
		A = TextBox1.Text  'valeur de 25cl de bière
		
	End Sub
	
	Sub NumericUpDown7ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox1.Text = (numericUpDown4.Value * 250) * (numericUpDown7.Value / 100)
		A = TextBox1.Text
		
	End Sub
	
	Sub NumericUpDown6ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox2.Text = (numericUpDown6.Value * 20) * (numericUpDown5.Value / 100)
		B = TextBox2.Text
		
	End Sub
	
	Sub NumericUpDown5ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox2.Text = (numericUpDown6.Value * 20) * (numericUpDown5.Value / 100)
		B = TextBox2.Text
		
	End Sub
	
	Sub NumericUpDown1ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		M = NumericUpDown1.Value
		
	End Sub
	
	Sub Timer1Tick(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		Label2.Text = Now.ToLongTimeString  'Affichage de l'heure
		
	End Sub
	
	Sub NumericUpDown9ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox3.Text = (numericUpDown9.Value * 100) * (numericUpDown8.Value / 100)
		C = TextBox3.Text
		
	End Sub
	
	Sub NumericUpDown8ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox3.Text = (numericUpDown9.Value * 100) * (numericUpDown8.Value / 100)
		C = TextBox3.Text
		
	End Sub
	
	Sub NumericUpDown11ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox4.Text = (numericUpDown11.Value * 60) * (numericUpDown10.Value / 100)
		D = TextBox4.Text
		
	End Sub
	
	Sub NumericUpDown10ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		TextBox4.Text = (numericUpDown11.Value * 60) * (numericUpDown10.Value / 100)
		D = TextBox4.Text
		
	End Sub
	
	Sub PictureBox2Click(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		numericUpDown4.Value = numericUpDown4.Value + 1
		
	End Sub
	
	Sub PictureBox3Click(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		numericUpDown9.Value = numericUpDown9.Value + 1
		
	End Sub
	
	Sub PictureBox4Click(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		numericUpDown9.Value = numericUpDown9.Value + 1
		
	End Sub
	
	Sub PictureBox5Click(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		numericUpDown6.Value = numericUpDown6.Value + 1
		
	End Sub
	
	Sub PictureBox7Click(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		numericUpDown6.Value = numericUpDown6.Value + 1
		
	End Sub
	
	Sub PictureBox6Click(ByVal sender As Object, ByVal e As EventArgs)
		
		On Error Resume Next
		
		numericUpDown11.Value = numericUpDown11.Value + 1
		
	End Sub
	
	Sub PictureBox10Click(ByVal sender As Object, ByVal e As EventArgs)
		
		PictureBox8.Visible = True  'Affichage de l'aide
		
	End Sub
	
	Sub PictureBox8Click(ByVal sender As Object, ByVal e As EventArgs)
		
		PictureBox8.Visible = False  'Masquer l'aide
		
	End Sub
	
End Class

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Commentaires et avis

signaler à un administrateur
Commentaire de Exploreur le 12/12/2007 10:19:53

Salut,

bonne idée...mais lol la personne qui fait un apéro devras avoir avec lui son portable ou son mini-pc, pous savoir s'il est hors limite ou pas....Puis généralement quand un personne à arroser un peu trop, je doute qu'il est envie d'allumer son pc pour savoir ou il en ai niveau taux d'alcool...lol...^^

Sinon, l'interface est soignée et plaisante...

Tu mets des On Error resume Next..c'est bien mais pense (ce n'est pas une obligation) de faire Err.Clear.

Voir même de faire une sub qui gére toutes les erreurs, du moins qui te renvois le N° d'erreur, et ainsi, mieux la gérer

A+
Exploreur

signaler à un administrateur
Commentaire de PCPT le 12/12/2007 15:34:48 administrateur CS

salut,
en DotNet il faut être plus rigoureux au niveau des types

"R = Label14.Text - 0.5"
R = CHAINE - NUMERIQUE ???

de plus la gestion d'erreur se fait de préférence avec TRY / CATCH EXCEPTION

++

signaler à un administrateur
Commentaire de EBArtSoft le 12/12/2007 23:11:38 administrateur CS

Ca y est... Bruno... on a touché le fond...

hahaha

;)

signaler à un administrateur
Commentaire de Charles Racaud le 12/12/2007 23:30:52

Je suis même pas sur de pouvoir allumer mon ordi si je suis bourré ^^

Une seule remarque, le bouton "calculer" n'est pas assez mis en évidence. J'ai eu du mal à le trouver, alors j'imagine pas si on est bourré.
__
Kenji

signaler à un administrateur
Commentaire de MrDodo le 13/12/2007 06:33:28

Bonjour,

Merci pour tous ces commentaires.
Ce sont mes débuts en vb.net ... et je vois qu'il me reste bien du chemin à parcourir.

Et pour tous ceux qui s'inquiètent, c'est bien sûr à utiliser avant d'être bourré (la limite à ne pas dépasser), après on s'en fou on est trop occupé à refaire le monde...

DODICH

signaler à un administrateur
Commentaire de Patrice99 le 13/12/2007 09:13:28

Si on ne trouve pas le bouton calculer alors ne pas conduire.

signaler à un administrateur
Commentaire de hvb le 13/12/2007 09:53:57

tu étais bourré quand tu l'as codé...? :D
Nan mais les on error resume next, les conversions implicites, les noms de variables pas du tout explicites, ainsi que les nombreuses valeurs "en dur" sans utiliser des constantes, c'est à oublier. Mais l'idée est très drole.

On notera d'ailleurs le nombre de commentaires pour un code si simple, il vous a attiré le nom de la source hein? Bravo l'image des developpeurs vb...! :D

signaler à un administrateur
Commentaire de Renfield le 13/12/2007 10:23:26 administrateur CS

faudrait le coder en .Net, ca pourrais etre un code instructif...

signaler à un administrateur
Commentaire de EBArtSoft le 13/12/2007 13:12:11 administrateur CS

euh... c'est deja en .net !
ahhhh les ravages de l'alcool :p

signaler à un administrateur
Commentaire de Exploreur le 13/12/2007 13:44:25

Salut à tous,

Renfield >> As-tu bien appuyé sur le bouton calcul ?? Lol..

A+
Exploreur

signaler à un administrateur
Commentaire de leretour1 le 14/12/2007 15:47:12 6/10

Bonjour à tous.
C'est sympa pour un débutant.
moi,je n'en suis même pas à ce niveau là.
?????
J'espère y arriver un jour.

signaler à un administrateur
Commentaire de MadM@tt le 15/12/2007 21:37:26

Faut souffler où ? J'ai pas trouvé le ballon ^^

signaler à un administrateur
Commentaire de jjc_Mtl le 17/12/2007 12:45:11

précision linguistique:
alcoolémie = taux d'alcool dans le sang
taux d'alcoolémie = taux de taux?
jjc_Mtl

signaler à un administrateur
Commentaire de alaingarot le 17/12/2007 18:15:44 7/10

Pas mal du tout, bravo !
(Même si je l'avais déjà...)

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

calcul du taux de rendemnt actuarial [ par sofy2006 ] salut tt le monde j ai besoin de calculer le taux de rendement actuarial d'une obligation sous VB6 et je ne sais pas commentMErci operateur sous acces et vb [ par ab2000 ] salut!j'ai un petit problème avec un code que je n'arrive a lui trouve une syntaxe.en fait je faire des calcul avec des opérateur qui son referencie d Affichage de +14 décimales [ par Rytox ] Bonjour !!J'ai créé un programme qui calcul la valeur de Pi en rentrant le nombre de décimales à calculer mais le problème est qu'il n'affiche et n'en Probléme en WinForms [ par baatoutmehdi ] Salut,je vais aller droite au but,Là je suis en train de développer une application, en WinForms, de calcul de coûts des appels pour un opérateur télé affichage en excel [ par debutant225 ] bonjourj'ai un probleme je voudrai  faire afficher dans une cellule le resultat d'un calcul. en fait quand je fais un calcul entre 2 cellules le resul calcul scientifique avec excel 2003 en vba [ par nasilo ] Bonjour,Est-il possible  dans excel à l'aide de VBA de procéder à des calculs scientifiques du genre itérations complexestype par exemple comme :=-0.8 Besoin de maîtriser le multi-threading [ par baatoutmehdi ] Bonjour à tous, En ce moment je suis en train de développer une application vb.net en WinForms de calcul de coûts Néanmoins, le programme est très l manque d'un .exe [ par Sankaman61 ] bonjour j'envoie ce message pour savoir pourquoi dans le logiciel sur le calcul de matèriaux qui à pour lien :http://www.vbfrance.com/code


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 2,340 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.