Partage
  • Partager sur Facebook
  • Partager sur Twitter

Mon Alarme

Des améliorations?

    14 janvier 2006 à 19:24:02

    Bon j'avais rien à faire et je voulais me pratiquer en attendant le prochain chapitre donc j'ai fais ce petit chronomètre/alarme qui sonne après un nombre donné d'heures, minutes et secondes. Voici le code:

    #include <stdio.h>
    #include <stdlib.h>
    #include <windows.h>

    int
    main(int argc, char *argv[])
    {
            long secChrono, minChrono, hrChrono, secUser, minUser, hrUser;

            secChrono = 1;
            printf("Entrez le nombre d'heures, minutes et secondes au format H M S:\n");
            scanf("%ld %ld %ld", &hrUser, &minUser, &secUser);
            printf("\n\n");
            hrChrono = 0;
            minChrono = 0;
            secChrono = 1;

            while (hrChrono != hrUser) {
                    do {
                            do {
                                    printf("\r%ld heures %ld minutes %ld secondes  ", hrChrono, minChrono, secChrono);
                                    secChrono++;
                                    Sleep(1000);
                            }
                            while (secChrono != 60);
                            minChrono++;
                            secChrono = 0;
                    }
                    while (minChrono != 60);
                    hrChrono++;
                    minChrono = 0;
            }

            while (minChrono != minUser) {
                    do {
                            printf("\r%ld heures %ld minutes %ld secondes  ",
                                   hrChrono, minChrono, secChrono);
                            secChrono++;
                            Sleep(1000);
                    }
                    while (secChrono != 60);
                    minChrono++;
                    secChrono = 0;
            }

            while (secChrono <= secUser) {
                    printf("\r%ld heures %ld minutes %ld secondes  ", hrChrono,
                           minChrono, secChrono);
                    secChrono++;
                    Sleep(1000);
            }


            printf("\a");
            printf("\n\n");
            system("PAUSE");
            return 0;
    }


    Bon je sais que le chrono part de 0 et monte vers le chiffre limite au lieu du contraire mais je vais en faire une autre version qui le fait de la bonne façon. Des commentaires, améliorations ou critiques?
    • Partager sur Facebook
    • Partager sur Twitter
      14 janvier 2006 à 19:45:30

      Tu peut, pour l'améliorer, essayer de bidouiller une sonnerie qui ressemble effectivement à quelque chose, de manière à pouvoir réveiller quelqu'un, ou encore demander un horaire directement, plutôt qu'une durée... (Il te faudra utiliser la bibliothèque <time.h>
      • Partager sur Facebook
      • Partager sur Twitter
        14 janvier 2006 à 20:00:16

        personnellement je trouve l'idée plutôt intéressante :p
        <!--nico--> je suis d'accord avec toi mais je sais pas comment MrVincent peut faire pour transformer la sonnerie en une vraie alarme :euh:
        • Partager sur Facebook
        • Partager sur Twitter
          14 janvier 2006 à 20:06:40

          Avec des petits sleep entre les \a :p Mais ça sera pas très très beau :lol:
          • Partager sur Facebook
          • Partager sur Twitter
            14 janvier 2006 à 21:53:12

            Voici la version qui part du haut et qui descend jusqu'à 0 - 0 - 0. Plus long à faire mais ça vaut la peine de se pratiquer!

            #include <stdio.h>
            #include <stdlib.h>
            #include <windows.h>

            int
            main(int argc, char *argv[])
            {
                    long secUser, minUser, hrUser, sec, hr, min;

                    printf("Entrez le nombre d'heures, minutes et secondes au format H M S:\n");
                    scanf("%ld %ld %ld", &hrUser, &minUser, &secUser);
                    printf("\n\n");

                    while (secUser > 0) {
                            printf("\r%ld heures %ld minutes %ld secondes   ", hrUser,
                                   minUser, secUser);
                            secUser--;
                            Sleep(1000);
                    }

                    while (minUser > 0) {
                            secUser = 60;
                            minUser--;
                            while (secUser > -1) {
                                    printf("\r%ld heures %ld minutes %ld secondes   ",
                                           hrUser, minUser, secUser);
                                    secUser--;
                                    Sleep(1000);
                            }


                    }

                    while (hrUser > 0) {
                            hrUser--;
                            minUser = 60;
                            while (minUser > 0) {
                                    secUser = 60;
                                    minUser--;
                                    while (secUser > -1) {
                                            printf("\r%ld heures %ld minutes %ld secondes   ", hrUser, minUser, secUser);
                                            secUser--;
                                            Sleep(1000);
                                    }


                            }

                    }

                    printf("\n\nFini! \n\n");
                    Sleep(250);
                    printf("\a");
                    Sleep(250);
                    printf("\a");
                    Sleep(250);
                    printf("\a");

                    system("PAUSE");
                    return 0;
            }


            Assez amusant le "Bee-Bee-Bee-Beep!" à la fin. Ça peut faire peur à ceux qui ne s'y attendent pas.
            • Partager sur Facebook
            • Partager sur Twitter
              15 janvier 2006 à 11:17:04

              Erf bravo quand meme pour ton prog ...;)
              • Partager sur Facebook
              • Partager sur Twitter
                15 janvier 2006 à 11:30:51

                tu peux aussi mettre tes \a dans une boucle pour faire sonner un peu plus longtemps :)
                • Partager sur Facebook
                • Partager sur Twitter
                  16 janvier 2006 à 2:23:40

                  Merci pour les bons commentaires. J'ai toujours eu des problèmes en programmation, mes programmes ne fonctionnait jamais en PHP et je me ramassais sur mIRC. Un jour j'étais presque découragé parce qu'un site disait: "Si tu trouves que la programmation c'est trop dur, t'es pas fait pour programmer et tu devrais arrêter". Là avec le C je me débrouille jusqu'à date mais le problème c'est que je manque de défis donc j'ai décidé de faire ce chrono. Il sert pas à grand chose par contre.

                  Merci encore
                  • Partager sur Facebook
                  • Partager sur Twitter
                    16 janvier 2006 à 4:22:42

                    Citation : MrVincent

                    Assez amusant le "Bee-Bee-Bee-Beep!" à la fin. Ça peut faire peur à ceux qui ne s'y attendent pas.



                    J'entend rien, c'est normal? est-ce lié au \a :honte: ?

                    mon son est ouvert (lol)
                    • Partager sur Facebook
                    • Partager sur Twitter
                      16 janvier 2006 à 4:41:07

                      Tu peux changer la fréquence du son que la carte mère fait pour faire de la musique si je ne me trompe pas.

                      Fait un menu pour choisir la musique qui réveille :p
                      • Partager sur Facebook
                      • Partager sur Twitter
                        16 janvier 2006 à 7:26:44

                        Citation : Djeepy46234

                        Tu peux changer la fréquence du son que la carte mère fait pour faire de la musique si je ne me trompe pas.

                        Fait un menu pour choisir la musique qui réveille :p


                        Dans ce cas vaut mieux prendre un elibrairie, genre fmod qui te joue de la musique en quelques fonction :)
                        • Partager sur Facebook
                        • Partager sur Twitter
                          16 janvier 2006 à 13:05:53

                          Djeepy46234: Une musique de cellulaire comme?
                          • Partager sur Facebook
                          • Partager sur Twitter
                            21 janvier 2006 à 3:46:29

                            Citation : MrVincent

                            Djeepy46234: Une musique de cellulaire comme?


                            Bah ça sonne cellulaire mais sur ton PC et ça vient de ta carte mère. Je ne me rappel plus comment par contre.
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Mon Alarme

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown