Visual studio - C#

A voir également:Visual studioVisual studio gratuit - Télécharger - C/C++ Visual studio express - Télécharger - Visual Basic Telecharger crystal report visual studio 2010 - Télécharger - Présentation Visual studio impossible de démarrer le programme ✓ - Forum - C++ Compiler avec visual studio code ✓ - Forum - C++

Bonjour,
je veux afficher les nombres pairs dans un label et je n'y arrive pas alors que le code est bon.


private void elempairs_Click(object sender, EventArgs e)

{
label2.Text = " ";
int i;
for (i = 0; i < montab.Length; i++)
{
if (montab[i]%2 == 0)
{
label2.Text = label2.Text + " " + montab[i].ToString();
}

}
}

Forum

A voir également:Visual studioVisual studio gratuit - Télécharger - C/C++ Visual studio express - Télécharger - Visual Basic Telecharger crystal report visual studio 2010 - Télécharger - Présentation Visual studio impossible de démarrer le programme ✓ - Forum - C++ Compiler avec visual studio code ✓ - Forum - C++

Web: www.shapebootstrap.net

4 réponses

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour

d'abord quelques conseils pour poster ici:

  • choisir un titre en rapport avec la question, "Visual Studio" suggère un problème avec l'IDE, or il s'agit d'un problème de code.
  • utiliser la coloration syntaxique, voir ici un petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code (si ça n'est pas suffisamment clair, merci de le dire, on l'améliorera)
  • Décrire précisément ce qui se passe, "ça ne marche pas" ou "je n'y arrive pas" n'aide pas un interlocuteur qui n'est n'est pas dans ta tête, et n'a pas accès à ton ordinateur.


Pour ton problème, à priori oui, le code semble bon.
As tu mis un point d'arrêt au début de la méthode et exécuté en pas à pas, tout en vérifiant le contenu des variables pour voir se qui se passe?
Si oui, décrit se qui se passe, si non, fais le et reviens décrire si cela ne t'a pas apporté la solution.

Reply

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

J'ai pas tester je suis sur telephone mais :

 private void elempairs_Click(object sender, EventArgs e)  { label2.Text = " "; int i; for (i = 0; i < montab.Length; i++) { //Je prend le chiffre et je le divise par 2 double testifpair = montab[i] / 2; //Je l'arrondi a l'entier inférieur int entierinferieur = Math.Floor(testifpair); //si la division - l'entier inferieur == 0 alors chiffre pair  //Exemple : //i = 6 // 6/2 =3 //entier inferieur de 3 = 3 //3-3 = 0 c'est donc un chiffre pair  //i = 5 //5/2 =2.5 //entier inferieur de 2.5 = 2 //2.5-2 = 0.5 -> chiffre impair if ((testifpair - entierinferieur) == 0) { label2.Text = label2.Text + " " + montab[i].ToString(); }  } }  

Reply
réponses:
  • auteur

  • auteur

  • auteur

  • auteur

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

J'ai pu régler le problème, merci beaucoup.

Mais suite a cette modification je n'arrive plus a réorganiser mon tableau de telle que tous les nombres paires soient regroupes au début du tableau et soient suivis par les nombres impaires.


private void reorgtab_Click(object sender, EventArgs e)
{
int i;
int pair1, impair1;
pair1 = -1;
impair1 = 10;
for (i = 0; i < montab.Length; i++)
{
if (montab[i] % 2 == 0)
{
pair1 = pair1 + 1;
tableautri[pair1] = montab[i];
}
else
{
impair1 = impair1 - 1;
tableautri[impair1] = montab[i];
}

}
for (i = 0; i < montab.Length; i++)
{
label2.Text = label2.Text + " " + tableautri[i].ToString();

}

}
}
}</code>

Reply

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour
je voies que tu as essayé d'utiliser la coloration syntaxique (il y a la balise fermante), mais que cela n'a pas fonctionné (il manque la balise ouvrante).
Sache que tu peux prévisualiser ton message avec le bouton éponyme (le message apparait au dessus) pour constater si le rendu est correct.
Si tu as oublié de prévisualiser, tu peux aussi modifier un de tes messages quelques minutes après l'avoir posté en cliquant sur le crayon en haut à droit du message.

Pour ton problème en particulier

impair1 = 10; // si montab ne contient pas 10 éléments ça va merdouiller


pair1 = pair1 + 1; 
tu peux le remplacer par
pair1++; 


Voir même, supprimer cette ligne et modifier la suivante
tableautri[++pair1] = montab[i]; 

Tu noteras que cette fois j'ai mis le ++ avant la variable, cela veut dire que l'on fait l'incrémentation avant que la valeur soit prise pour l'index. si on écrit
tableautri[pair1++] = montab[i]; 
la valeur d'index est prise avant l'incrémentation

Tu peux corriger la seconde partie du tri avec --.

Que se passe-t-il quand tu exécutes en pas à pas?
Quand j'étais petit, la mer Morte n'était que malade.
George Burns

Reply

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed