2017-07-01 1 views
-1

je crée une petite application qui permet aux utilisateurs de calculer le prix de vente par le prix de revient * 10% (bénéfice par exemple) et le résultat stockera en vente Prixvb.net (1.10) en pourcentage

dim saleprice as integer 
costprice = textbox1.text 
percent = textbox2.text 
saleprice = costprice * percent 
label1.text = saleprice 

mais le problème est quand l'entrée d'utilisateur 10 dans textbox2.text il multipliera par 100 si l'entrée d'utilisateur 1.10 alors le résultat sera correct mais je veux passer ce "1." donc l'utilisateur mettra directement 10 ou autre, mais je ne sais pas comment le faire s'il vous plaît aider et merci à l'avance

+0

S'il vous plaît lire [demander] et prendre le [tour], et ajouter «Option Strict On» au sommet de tous vos fichiers de code ... toujours – Plutonix

Répondre

1

Il ya un problème principal avec votre code, mais aussi un couple de petits problèmes. Le problème principal est que vous avez défini saleprice comme un entier, de sorte qu'il ne peut contenir que des entiers. Je devine que vous avez également costprice et percent définis comme entiers. Au lieu de cela, définissez-les tous comme Single ou Double.

Il y a aussi le problème des types de conversion. Les informations que vous entrez dans le TextBox sont stockées en tant que chaîne. Dans le monde réel, vous devez vous assurer que la propriété .Text est convertible en valeur numérique, puis la convertir. Avec vos paramètres Visual Studio actuels, la conversion est effectuée dans les coulisses. Cela rend la vie plus facile pour les débutants, mais encourage la programmation très bâclée.

Je suggère de modifier les paramètres du compilateur afin que Option Strict est sur, Option Explicit est sur, Option Compare est réglé sur binaire et Option Infer est désactivé.

Cela rendra l'écriture de votre code un peu plus difficile, mais à long terme, cela vous fera gagner du temps et vous obligera à écrire un meilleur code.

Edit: Whoops

I Missed la partie cruciale de votre question - de supprimer la partie « 1 » et il suffit d'entrer le pour cent en nombre entier - cela devrait être votre code

Alors .. dans sa forme la plus simple et sujette encore erreur, votre code devrait être ..

Dim costprice As Double 
Dim percent As Double 
Dim saleprice As Double 
costprice = Val(TextBox1.Text) 
percent = Val(textbox2.text)/100 
saleprice = costprice * (1 + percent) 
Label1.Text = saleprice.ToString 

pour augmenter le coût de 10 pour cent, il suffit d'entrer 10 dans la zone de texte pour cent. Pour réduire le coût de 10%, entrez -10.

+0

merci beaucoup pour votre réponse –

+0

Oups - édité pour bien répondre à votre question –

+0

onc encore david merci beaucoup pour votre aide cela fonctionne pour moi :) –