Problème avec mon premier programme C#
FerméSoulcollector Messages postés 12 Date d'inscription samedi 27 août 2022 Statut Membre Dernière intervention 27 août 2022 - 27 août 2022 à 21:57
- Problème avec mon premier programme C#
- Programme demarrage windows 10 - Guide
- Désinstaller programme windows 10 - Guide
- Premier pro - Télécharger - Montage & Édition
- Programme démarrage windows 10 - Guide
10 réponses
Modifié le 27 août 2022 à 15:40
Bonjour,
Merci de lire ceci https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
Et de corriger ton message.
Merci
Modifié le 27 août 2022 à 16:25
Bonjours à tous, je suis un débutant en réseautique et je dois faire 3 programme dont celui - ci; je dois écrire un programme qui va demander le nombre d'accident survenu au cours du dernier mois et qui va calculer et afficher les 4 statistiques suivantes;
L'âge moyen de tous les conducteurs;
Le pourcentage de femme;
Le pourcentage d'homme entre 18 et 25 ans;
Le pourcentage de conducteurs non enregistrés dans la province.
La partie qui me cause problème le plus est le pourcentage d'homme entre 18 et 25 ans.
Je sais très bien que j'ai plusieurs erreurs mais la partie qui me cause le plus de soucis c'est la moyenne d'homme entre 18 et 25 ans
Merci d'avance.
//Variable int nbr_acc, cpt, an_nais, an_cour, somme_age, age; string str_rep; char sexe, rep; float cpt_hom_age, cpt_fem, pourcent_hp, age_moy, hom_age_moy; cpt_fem = cpt_hom_age = pourcent_hp = 0; somme_age = 0; an_cour = DateTime.Now.Year; do// Boucle pour recommencer { do { Console.Write("Entrez le nombre d'accident survenue pendant le mois de mai:"); str_rep = Console.ReadLine(); } while (int.TryParse(str_rep, out nbr_acc) == false || nbr_acc < 0); //Pour chaque accident cpt = 1; while (cpt <= nbr_acc) { Console.WriteLine("Saisir les informations sur l'accident" + cpt); cpt++; do { Console.Write("Entrez l'année de naissance du conducteur impliqué(e):"); str_rep = Console.ReadLine(); } while (int.TryParse(str_rep, out an_nais) == false || an_nais < DateTime.Now.Year - 100 || an_nais > DateTime.Now.Year - 16); age = DateTime.Now.Year - an_nais; age_moy = somme_age + age; while (somme_age >= nbr_acc) ; do { Console.Write("Entrez le sexe du premier conducteur impliqué(e), H/F:"); str_rep = Console.ReadLine().ToUpper(); } while (char.TryParse(str_rep, out sexe) == false || sexe != 'H' && sexe != 'F'); if (sexe == 'F') cpt_fem++; else if (sexe == 'H' && sexe >= 1997 && sexe <= 2004) cpt_hom_age++; do { Console.Write("Entrer le code d'enregistrement du premier conducteur: (1/9)"); str_rep = Console.ReadLine(); } while (Char.TryParse(str_rep, out rep) && rep != '1' && rep != '9'); if (rep == '9') pourcent_hp++; } Console.ReadLine(); do { Console.Write("Voulez-vous recommencer (O/N)?:"); str_rep = Console.ReadLine().ToUpper(); } while (char.TryParse(str_rep, out rep) == false || rep != 'O' && rep != 'N'); } while (rep == 'O'); age_moy = (float)somme_age / cpt; Console.WriteLine("La moyenne d'age des conducteurs impliqué(es) est: {0}", age_moy); Console.ReadLine(); hom_age_moy = (float)cpt_hom_age / cpt; Console.WriteLine("Le pourcentage d'homme entre 18 et 25 ans est: ", cpt_hom_age); Console.ReadLine(); cpt_fem = (float)cpt_fem / cpt; Console.WriteLine("Le pourcentage de femme est: " + cpt_fem); Console.ReadLine(); pourcent_hp = (float)pourcent_hp / cpt; Console.WriteLine("Le pourcentage de conducteur hors- province est: " + pourcent_hp); Console.ReadLine();
27 août 2022 à 16:29
Bonjour
dans le tuto que t'as fait lire Barnabé, il,est écrit qu'il faut choisir le langage pour que le rendu soit correct. Et il est ajouté que pour C#, pour l’instant, il faut sélectionner C++.
J'ai donc corrigé.
Pour ton programme, dans ta formation as tu déjà vu ce qu'est une méthode? Et une classe ?
27 août 2022 à 16:48
Salut, oui mais c'est quelque chose qui a vite fait le tour, à part le fait que le programme se situe dans la classe Main. J'en suis seulement à 3 mois d'étude.
Modifié le 27 août 2022 à 18:46
Moi je termine ma formation dans une semaine, j'ai fait 4 mois de C# et j'ai appris la POO
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionModifié le 27 août 2022 à 18:12
Au niveau de la conception moi j'aurais fait une classe "accident" qui aurait ces propriétés :
- date
- genre du conducteur
- âge du conducteur
- un booléen qui indique si le conducteur est enregistré dans la province ou pas
Et des méthodes :
- une méthode pour calculer l'âge moyen qui prend en paramètre une liste de conducteurs
- une méthode pour calculer un pourcentage qui prend en paramètre un genre, un âge mini et un âge maxi
27 août 2022 à 18:10
Super, je ne suis pas au courant de cette procédure mais je vais regarder comment faire. Un gros merci pour ta réponse, très apprécié...
27 août 2022 à 18:16
Oufff je comprends pourquoi ça ne nous a pas été dit jusqu'à maintenant dans le cours.
27 août 2022 à 18:16
J'en suis seulement à 3 mois d'étude.
ça ne veut rien dire, en ce qui me concerne, on m'a appris les méthodes le premier jour et les classes le 2eme...
27 août 2022 à 18:59
Mise à part ajouter une classe, comment est-ce que je peux formuler avec cette ligne de commande là, est- ce que c'est comment, parce que je sais que ne peux pas avoir un int et un char dans la même commande...
else if (sexe == 'H' && sexe >= 1997 && sexe <= 2004)
cpt_hom_age++;
Modifié le 27 août 2022 à 19:29
Effectivement la variable sexe ne peut pas avoir 2 types différents
else if (sexe == 'H' && an_nais >= 1997 && an_nais <= 2004) cpt_hom_age++;
27 août 2022 à 20:10
Effectivement la variable sexe ne peut pas avoir 2 types différents
en fait, on pourrait, si on la définit en object et qu'ensuite avant de tester sa valeur, on teste son type réel.
Cela c'est beaucoup compliqué pour rien et surtout incohérent, le sexe et l'année de naissance sont 2 données différentes donc n'ont rien à faire dans la même variable.
27 août 2022 à 20:22
La définir en objet, est- ce que ça veut dire la convertir parce que c'est ce que j'ai de la misère avec. quand je démarre mon programme pas à pas, je vois bien qu'il passe par dessus.
27 août 2022 à 20:30
Ça veut dire que c'est beaucoup plus compliqué pour rien, car c'est incohérent, le sexe et l'année de naissance sont 2 données différentes et doivent donc être stockées sur des variables différentes et tant qu'à faire du bon type, à savoir char ou string pour le sexe et int pour l'année de naissance.
Mon aparté était à destination de Barnabé.
27 août 2022 à 20:55
Ça ne fonctionne pas avec ton code, en mode pas à pas il passe par dessus et il affiche toujours 0 dans mon compteur
27 août 2022 à 19:31
Je vais essayer, merci
27 août 2022 à 20:16
Désolé, j'étais parti sur mon programme.