éssai du jeu chiffres et lettres (chiffres)

Soyez le premier à donner votre avis sur cette source.

Vue 3 183 fois - Téléchargée 527 fois

Description

// favier franck 2014 version à corriger?
A l'origine l'importance de la variable (calfouete) pour le calcul à été dur à trouver pour moi , merci pour le respect de ce nom de variable.
private void button1_Click(object sender, EventArgs e)
        {
            // bouton valide

            var Case999 = numericUpDown1.Text;
            var Case1 = numericUpDown2.Text;
            var Case2 = numericUpDown3.Text;
            var Case3 = numericUpDown4.Text;
            var Case4 = numericUpDown5.Text;
            var Case5 = numericUpDown6.Text;
            var Case6 = numericUpDown7.Text;



            // la conversion en double:
            double case999 = Convert.ToDouble(Case999);
            double case1 = Convert.ToDouble(Case1); // case0
            double case2 = Convert.ToDouble(Case2); // case1
            double case3 = Convert.ToDouble(Case3); // case2
            double case4 = Convert.ToDouble(Case4); //case3
            double case5 = Convert.ToDouble(Case5); //case4
            double case6 = Convert.ToDouble(Case6); // case5
            double case7 = 0;

          
            
            int val1; 
            int val2; 
            int val3; 
            int val4; 
            int val5; 
            int val6;

           
          

            double[] chiffre = new double[] { case1, case2, case3, case4, case5, case6 ,case7};
           
            
            Random rnd = new Random();
            double compte = 0; double compteB = 0; double compteC = 0; double compteD = 0;
            double compte1 = 0; double compte2 = 0; double compte3 = 0;
            double compte4 = 0;



            int calfouete1; int calfouete2; int calfouete3; int calfouete4;
            string enum1= " non ";
            string enum2= " non ";
            string enum3= " non ";
            string enum4= " non ";
            double Total;
            int décompte =1;
             progressBar1.Minimum = 1;
             progressBar1.Maximum = 500000;
             progressBar1.Value = 1;
             progressBar1.Step = 1;
          do
          {
             
               compte = 0;  compteB = 0;  compteC = 0;  compteD = 0;
              compte1 = 0; compte2 = 0;  compte3 = 0;
            compte4 = 0;

                do
                {
                    val1 = rnd.Next(0, 7);
                    val2 = rnd.Next(0, 7);
                } while (val1 == val2);

                do
                {
                    val3 = rnd.Next(0, 7);
                    val4 = rnd.Next(0, 7);
                } while (val3 == val4 || val3 == val2 || val3 == val1 || val4 == val2 || val4 == val1);

                do
                {
                    val5 = rnd.Next(0, 7);
                    val6 = rnd.Next(0, 7);
                } while (val5 == val6 || val5 == val4 || val5 == val3 || val5 == val2 || val5 == val1 || val6 == val4 || val6 == val3 || val6 == val2 || val6 == val1);



                // recherche



                // ---var1 et var2-----------------------------------------      
                calfouete1 = rnd.Next(0, 4);

                if (calfouete1 == 0) // + PLUS
                {
                    if (chiffre[val1] > 0 && chiffre[val2] > 0)
                    {
                        compte1 = (chiffre[val1] + chiffre[val2]);
                        compte = compte1;
                       
                        enum1 = chiffre[val1] + " + " + chiffre[val2] + " = " + compte1;

                    }

                    if ((chiffre[val1] < 1 && chiffre[val2] > 0))
                    {
                        compte1 = (chiffre[val2]);
                        compte = compte1;
                        enum1 =  " ";
                    }                  

                    if (chiffre[val1] > 0 && chiffre[val2] < 1)
                    {
                        compte1 = (chiffre[val1]);
                        compte = compte1;
                        enum1 =  " ";

                    }


                }
                //                                   FIN PLUS

                if (calfouete1 == 1) // - MOINS 
                {

                    if (chiffre[val1] > 0 && chiffre[val2] > 0)
                    {
                        compte2 = (chiffre[val1] - chiffre[val2]);

                        compte = compte2;
                     
                        enum1 = chiffre[val1] + " - " + chiffre[val2] + " = " + compte2;
                    }

                    if ((chiffre[val1] < 1 && chiffre[val2] > 0))
                    {
                        compte2 = (chiffre[val2]);
                        compte = compte2;
                        enum1 = " ";
                    }

                    if (chiffre[val1] > 0 && chiffre[val2] < 1)
                    {
                        compte2 = (chiffre[val1]);
                        compte = compte2;
                        enum1 =  " ";

                    }
                }

                //                                          FIN MOINS



                if (calfouete1 == 2) //*     MULTIPLICATION
                {

                    if (chiffre[val1] > 0 && chiffre[val2] > 0)
                    {
                        compte3 = (chiffre[val1] * chiffre[val2]);
                        compte = compte3;
                   
                        enum1 = chiffre[val1] + " X " + chiffre[val2] + " = " + compte3;
                    }


                    if (chiffre[val1] > 0 && chiffre[val2] < 1)
                    {
                        compte3 = (chiffre[val1]);
                        compte = compte3;
                        enum1 =  " ";

                    }

                    if ((chiffre[val1] < 1 && chiffre[val2] > 0))
                    {
                        compte3 = (chiffre[val2]);
                        compte = compte3;
                        enum1 =  " ";
                    }
                }

                // FIN MULTIPLICATION 

                if (calfouete1 == 3) // : DIVISION
                {
                    if (chiffre[val1] > 0 && chiffre[val2] > 0)
                    {
                        compte4 = (chiffre[val1] / chiffre[val2]);

                        compte = compte4;
                        for (double a = 1; a < 10001; a++)
                        {
                            if (compte == a)
                            
                                enum1 = chiffre[val1] + " : " + chiffre[val2] + " = " + compte4;
                        }
                    }


                    if (chiffre[val1] > 0 && chiffre[val2] < 1)
                    {
                        compte4 = (chiffre[val1]);
                        compte = compte4;
                        enum1 = " ";

                    }

                    if ((chiffre[val1] < 1 && chiffre[val2] > 0))
                    {
                        compte4 = (chiffre[val2]);
                        compte = compte4;
                        enum1 = " ";
                    }


                    // FIN DIVISION



                }


                if (compte == case999)
                  
                { Total = case999;
                textBox1.Text = (" ");
                    textBox1.Text = ("    (1)     " + enum1); break; }
                   
                    //----------------------------------------------------------

                    // ----compte et var 3----------------------------------------      
                    calfouete2 = rnd.Next(0, 4);

                    if (calfouete2 == 0) // +
                    {
                        if (chiffre[val3] > 0)
                        {
                            compte1 = (compte + chiffre[val3]);
                            compteB = compte1;
                           
                            enum2 = compte + " + " + chiffre[val3] + " = " + compte1;
                        }
                    }

                    if (calfouete2 == 1) // -
                    {
                        if (chiffre[val3] > 0)
                        {
                            compte2 = (compte - chiffre[val3]);
                            compteB = compte2;
                            enum2 = compte + " - " + chiffre[val3] + " = " + compte2;
                        }
                    }

                    if (calfouete2 == 2) //*
                    {
                        if (chiffre[val3] > 0)
                        {
                            compte3 = (compte * chiffre[val3]);
                            compteB = compte3;
                            enum2 = compte + " X " + chiffre[val3] + " = " + compte3;
                        }
                    }

                    if (calfouete2 == 3) // :
                    {
                        if (chiffre[val3] > 0)
                        {
                            compte4 = (compte / chiffre[val3]);

                            compteB = compte4;
                            enum2 = compte + " : " + chiffre[val3] + " = " + compte4;
                        }
                    }


                    if (compte1 == case999 || compte2 == case999 || compte3 == case999 || compte4 == case999 )
                    { Total = case999;
                    textBox1.Text = (" ");
                        textBox1.Text = ("    (1)     " + enum1 + "    (2)     " + enum2); break; }

                    //----------------------------------------------------------


                    // ----compte et var 4----------------------------------------      
                    calfouete3 = rnd.Next(0, 4);

                    if (calfouete3 == 0) // +
                    {
                        if (chiffre[val4] > 0)
                        {
                            compte1 = (compteB + chiffre[val4]);
                            compteC = compte1;
                            enum3 = compteB + " + " + chiffre[val4] + " = " + compte1;
                        }
                    }

                    if (calfouete3 == 1) // -
                    {
                        if (chiffre[val4] > 0)
                        {
                            compte2 = (compteB - chiffre[val4]);
                            compteC = compte2;
                            enum3 = compteB + " - " + chiffre[val4] + " = " + compte2;
                        }
                    }

                    if (calfouete3 == 2) //*
                    {

                        if (chiffre[val4] > 0)
                        {
                            compte3 = (compteB * chiffre[val4]);
                            compteC = compte3;
                            enum3 = compteB + " X " + chiffre[val4] + " = " + compte3;
                        }
                    }

                    if (calfouete3 == 3) // :
                    {
                        if (chiffre[val4] > 0)
                        {
                            compte4 = (compteB / chiffre[val4]);

                            compteC = compte4;
                            enum3 = compteB + " : " + chiffre[val4] + " = " + compte4;
                        }

                    }

                    if (compte1 == case999 || compte2 == case999 || compte3 == case999 || compte4 == case999)
                    { Total = case999;
                    textBox1.Text = (" ");
                        textBox1.Text = ("    (1)     " + enum1 + "    (2)     " + enum2 + "     (3)    " + enum3); break; }
                    //----------------------------------------------------------

                    // ----compte et var 5----------------------------------------      
                    calfouete4 = rnd.Next(0, 4);

                    if (calfouete4 == 0) // +
                    {
                        if (chiffre[val5] > 0)
                        {
                            compte1 = (compteC + chiffre[val5]);
                            compteD = compte1;
                            enum4 = compteC + " + " + chiffre[val5] + " = " + compte1;

                        }
                    }

                    if (calfouete4 == 1) // -
                    {
                        if (chiffre[val5] > 0)
                        {
                            compte2 = (compteC - chiffre[val5]);
                            compteD = compte2;
                            enum4 = compteC + " - " + chiffre[val5] + " = " + compte2;
                        }
                    }

                    if (calfouete4 == 2) //*
                    {
                        if (chiffre[val5] > 0)
                        {
                            compte3 = (compteC * chiffre[val5]);
                            compteD = compte3;
                            enum4 = compteC + " X " + chiffre[val5] + " = " + compte3;
                        }
                    }

                    if (calfouete4 == 3) // :
                    {
                        if (chiffre[val5] > 0)
                        {
                            compte4 = (compteC / chiffre[val5]);
                            compteD = compte4;
                            enum4 = compteC + " : " + chiffre[val5] + " = " + compte4;
                        }

                    }
                    if (compte1 == case999 || compte2 == case999 || compte3 == case999 || compte4 == case999)
                    { Total = case999;
                    textBox1.Text = (" ");
                        textBox1.Text = ("    (1)     " + enum1 + "    (2)     " + enum2 + "     (3)    " + enum3+"   (4)   " + enum4); break; }







                    Total = (compteD);

                    décompte++;

                    //----------------------------------------------------------

                    progressBar1.PerformStep();
                       
            } while (Total != case999 && décompte < 500000);

          if (Total != case999)
          {
              textBox1.Text = ( "                  "+décompte+" éssais de calcul aléatoire sans succés ." );
          }




            for (double i = 1; i < 10001; i++)
            {
                if (compte == i )
                {

                    for (double j = 1; j < 10001; j++)
                    {
                        if (compteB == j)
                        {
                            for (double k = 1; k < 10001; k++)
                            {
                                if (compteC == k)
                                {
                                    for (double l = 1; l < 10001; l++)
                                    {
                                        if (compteD == l)
                                        {
                                            // la bonn réponse


                                            if (Total == case999)
                                            {

                                                textBox1.Text = (" ");
                                                textBox1.Text = ("    (1)     " + enum1 + "    (2)     " + enum2 + "     (3)    " + enum3 + "   (4)   " + enum4 +" ");
                                            }                                     

                                        }
                                      


                                    }
                                                                        
                                }
                               

                            }

                        }

                      
                    }

                }


              
            
            }

      
            /*
            double[] chiffre = new double[] { case1, case2, case3, case4, case5, case6 };
             Random rnd = new Random();
           val1 = rnd.Next(0, 9);
           if (Double.IsNaN(chiffre[val7] / chiffre[val8]))
              if (Double.IsInfinity(chiffre[val7] / chiffre[val8]))
           for (double i = 1; i < 1001; i++) // comparateur d'entier j'usqu'à 1000
           la reconvertion en string 
             */
        
        
        
        }

        private void button2_Click(object sender, EventArgs e)
        {

            Random rndbutton = new Random();

            numericUpDown1.Text = ""+rndbutton.Next(0, 999) ;
            numericUpDown2.Text = "" + rndbutton.Next(1, 101);
            numericUpDown3.Text = "" + rndbutton.Next(1, 101);
            numericUpDown4.Text = "" + rndbutton.Next(1, 101);
            numericUpDown5.Text = "" + rndbutton.Next(1, 101);
            numericUpDown6.Text = "" + rndbutton.Next(1, 101);
            numericUpDown7.Text = "" + rndbutton.Next(1, 101);
            textBox1.Text = ("          ");

            progressBar1.Minimum = 1;
            progressBar1.Maximum = 500000;
            progressBar1.Value = 1;
           
           


        }

// ****@**.**

Codes Sources

A voir également

Ajouter un commentaire Commentaires

La vache je me relis et m'aperçois que je tourne pas toujours en rond pour d'autres !
Sinon 5 mois après sa vas . (retour vers le futur)
projet calcul nombre en c# et autre après évenement et réflexion:

Méthode par tri sélectif de base aléatoire sur 500000 boucles .

L'addition ou bien la soustraction ou bien la multiplication ou bien la division de deux chiffres sur six .Puis additionner ou soustraire ou multiplier ou diviser un chiffre ou nombre un des quatre suivant, puis un des trois suivant puis un des deux suivant puis du dernier , sachant que le calcul doit s'arrêté au résultat , des correctifs sont à l'étude .


le projet est créer avec visual studio en c# : forms ,

certaine fonction ont été laissées prés-remplis , d'autre ne semble pas nécessaire ,

à l'installation aucune demande particulière n'est demander . le fichier est dans:

- ajouter ou supprimer des programmes. de windows


---------------------------------------------------------------------------------

feuille :révision de grammaire nombre relatif

brouillon et révision sur le français et les calculs

---------------------------------------------------------------------------------

image et vidéo simple sans sujet concret


-------------------------------------------------------------------------------------------------------

fin








note:

texte en correction , revoir les bases

réflexion du procédé

'texte approximatif , le livre perdu conté , le sachassionisme par A. Depontcharpoint'

" Nul n'est l' obligé sans raison de vouloir comprendre cette base personnelle de réflexion ,elle peut être reconsidérée par chaque autrement , ou décidé inapproprié par l'utilisateur de l' archive (calcul nombre) qui a été finalisé sur cette base. Je dois me permettre de rappeler que certaine autre base de réflexion ne m'ont pas permis ouvertement de sollicité ma déconvenue ,par certain inconfort financier et physique (voir le livre " le corps et l'esprit du corps ." aux éditions Plusunetune) à leurs sujet. Pour ma part il s'agit la d'une réflexion que la frustration induit à une cause mutuel profonde sur l'immorale le pouvoir d'ordonner et leurs serviteurs obligés ."
j'ai améliore un peu ce script.

je me sens quand mème obligé pour certain d'offrir mais base , après html est php , je me suis acheter un livre sur javascript je vous offres un parti de mon résultat ,pas par amour de l'autre j'uste que je sais que certain partageur d'info mérite que je le fasse !


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252">
<TITLE>index compteur</TITLE>
<META NAME="Robots" CONTENT="noindex,nofollow">
<META NAME="GENERATOR" CONTENT="OpenOffice.org 3.4.1 (Win32)">
<META NAME="CREATED" CONTENT="lundi6mai2013 ***@***">
<META NAME="CHANGED" CONTENT="20130506;8234304">
<STYLE TYPE="text/css">
<!--
P { color: #000000 }


.bouton {
display:block;
background:url(jugeno/103.jpg) no-repeat;
text-align:center;
vertical-align:middle;
border-top-width: outset;
border-right-width: outset;
border-bottom-width: outset;
border-left-width: outset;
border-top-style: outset;
border-right-style: outset;
border-bottom-style: outset;
border-left-style: outset;
border-top-color: #00f1ff;
border-right-color: #00f1ff;
border-bottom-color: #00f1ff;
border-left-color: #00f1ff;
}

.lcd2 {
text-align:center;
vertical-align:middle;
border-top-width: outset;
border-right-width: outset;
border-bottom-width: outset;
border-left-width: outset;
border-top-style: outset;
border-right-style: outset;
border-bottom-style: outset;
border-left-style: outset;
border-top-color: #00f1ff;
border-right-color: #00f1ff;
border-bottom-color: #00f1ff;
border-left-color: #00f1ff;
}

-->
</STYLE>


</HEAD>


<BODY LANG="fr-FR" TEXT="#000000" BACKGROUND="103.jpg" DIR="LTR">

<form name="fr1">
<div id='retour2'>

      <input id="foc" class="lcd2" name="rep" type="texte" size="35">
         1°) VALEUR HORAIRE<input id="foc1" class="lcd2" name="rep1" type="texte" value="3600" size="10">
         2°) Résultat (valeur seconde)<input id="foc2" class="lcd2" name="rep2" type="texte" value="0" size="20">
</div>

<div id='retour1'>
<input id="focstrot" class="lcd2" name="rep3" type="texte" size="30" STYLE="position: absolute; top: 1.1cm; left: 1cm; width: 15cm; height: 1cm" >
<INPUT TYPE=BUTTON class="bouton" NAME="0" VALUE="Nouveau" STYLE="position: absolute; top: 1.1cm; left: 21cm; width: 5cm; height: 1cm; font-family: 'Arial', sans-serif; font-size: 12pt" ONCLICK="fonction0()">
<INPUT TYPE=BUTTON class="bouton" NAME="stop" VALUE="stop" STYLE="position: absolute; top: 1.1cm; left: 16cm; width: 5cm; height: 1cm; font-family: 'Arial', sans-serif; font-size: 12pt" ONCLICK="fonction1()">

</div>
</form>

<P><BR><BR>
</P>
<P><BR><BR>
</P>
<P><BR><BR>
</P>
<P><BR><BR>

<SCRIPT LANGUAGE="JAVASCRIPT">
//<!--



// script compteur horaire créer par franck favier ***@*** le 14 mai 2013-----------------------------------------------------

var snum=-1;
var daterfin=" ";
var dater=" ";
var compt=0;
var comptephoto=0;
var photoimga=0;
var photoimgb=1;
var photoimgc=2;


var jours=["dimanche" ,"lundi" ,"mardi","mercredi","jeudi" ,"vendredri" , "samedi"];

var mois=["Janvier" ,"Février" ,"Mars","Avril","Mai" ,"Juin" , "Juillet" ,"Août" ,"Septembre","Octobre","Novembre" ,"Décembre" ];


var Base_seconde = 0;

var MatheCalculeparseconde=0;
function fonction0(){

compt=0;
document.forms.fr1.rep1.value=0;
document.forms.fr1.rep2.value=0;

MatheCalculeparseconde=0;
document.forms.fr1.stop.value="STOP";
}

function fonction1(){

dater_Totalxy=(dater_Totaly - dater_Totalx)*Base_seconde ; // totaldater

document.forms.fr1.stop.value= "Suivant";
document.forms.fr1.rep3.value="heure de début :"+dater+" heure de fin :"+daterfin+" --> "+dater_Totalxy ;
}


function Afficheheures() {

var dtjour=new Date();
var minute=dtjour.getMinutes() ;

var seconde=dtjour.getSeconds() ;

if ( minute < 10 )
{ minute="0"+minute ;}

if ( seconde < 10 )
{ seconde="0"+seconde ;}


var chrono=1000;


var RecupValeur=document.forms.fr1.rep1.value ;

if ( isNaN(RecupValeur) != false) { RecupValeur=0 ;


}


if( RecupValeur !=0)

{
if (compt < 1)
{
compt++;

dater= dtjour.getHours()+":" + minute + ":"+ seconde ;


datersecondex=dtjour.getSeconds();
daterminutex= dtjour.getMinutes() *60;
daterheurex= dtjour.getHours();

if ( daterheurex<1) { daterheurex=24 ;}
daterheurex=daterheurex*60*60;


dater_Totalx= daterheurex+daterminutex+datersecondex;

}

if (compt != 0)
{

daterfin= dtjour.getHours()+":" + minute + ":"+ seconde ;

datersecondey=dtjour.getSeconds();
daterminutey= dtjour.getMinutes() *60;
daterheurey= dtjour.getHours();

if ( daterheurey<1) { daterheurey=24 ;}
daterheurey=daterheurey*60*60;

dater_Totaly= daterheurey+daterminutey+datersecondey;

}

}


var MatheCalcule=((RecupValeur/60)/60);

Base_seconde =MatheCalcule;

document.forms.fr1.rep.value=jours[dtjour.getDay()] +" "+ dtjour.getDate() +" "+ mois[dtjour.getMonth()] +" "+ dtjour.getFullYear() +" "+ dtjour.getHours()+":" + minute + ":"+ seconde ; // recup form fr1


MatheCalculeparseconde= MatheCalculeparseconde + MatheCalcule;

document.forms.fr1.rep2.value=MatheCalculeparseconde;


var timer=setTimeout("Afficheheures()", chrono);
}

Afficheheures();
// copyrigth appellationdoriginecontrolébrevetisoazaenfonddedépottoutdroitd'auteur"lundi6mai2013 ***@***"
</SCRIPT>
</P>
</BODY>
</HTML>




j'ai essayé plusieurs méthode : case était certainement la plus logique, mais je reste moins coincé avec mais if ( par habitude certainement je prend ce que je maîtrise le mieux ) mais case est certainement mieux.


Directement je convertis à ma porté des nom de variable proche de ce que je veux qu'elle soit la aussi ça paraît pas toujours bien censé , bien sur .

var Case999 = numericUpDown1.Text;
....
double case999 = Convert.ToDouble(Case999)
.....
if (Total == case999 && fin == -1)


ma fâcheuse habitude d'utilisé var avec javascript , et mais difficulté à convertir.
Ce programme est le premier essai en c# ,
j'ai rajouter des lignes à ce code , et il est vrai ça marches,mais des bug apparaissent,
Mon code à changer j'effectue 5 opération maxi pour une recherche de nombre
de 0 à 999 . Je me demande parfois comment il peuvent fonctionner , sans miracle.
Messages postés
16739
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
26 janvier 2022
583
Ok, quand tu auras tout mis, nous pourrons tester et te proposer des axes d'amélioration.
En ne faisant que survoler rapidement en voici déjà quelques uns.
var Case999 = numericUpDown1.Text;
            var Case1 = numericUpDown2.Text;
...

            // la conversion en double:
            double case999 = Convert.ToDouble(Case999);
...


C# est un langage fortement typé, du coup le type var (trop souple) n'existait au début.
Il s'est avéré nécessaire avec l'arrivée de Linq ou les requêtes peuvent retourner un type dynamique.
Var ne doit être utilisé que dans ce cas là.

var Case1 = numericUpDown2.Text;

devient
string Case1 = numericUpDown2.Text;
, puisque la propriété Text des contrôle est de type string.

Mais allons encore plus loin, je n'ai pas retrouvé les variables avec majuscules plus loin dans le code (je l'ai survolé alors elles y sont peut-être).
Dans ce cas,
double case999 = Convert.ToDouble(numericUpDown2.Text);
est plus approprié.

                   if (calfouete3 == 0) // +
                    {
...
                    }

                    if (calfouete3 == 1) // -
                    {
....
                    }

                    if (calfouete3 == 2) //*
                    {
...
                    }

                    if (calfouete3 == 3) // :
                    {
...

                    }


Il est plus approprié l'instruction switch qu'un cascade de if.
switch(calfouete3)
{
case 0:
     .....
     break;

case 1:
     .....
     break;

case 2:
     .....
     break;

case 3:
     .....
     break;
}
Afficher les 10 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.