IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Exercice


Sujet :

avec Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2013
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Exercice
    bonjour , j'ai un programme entrainement a realiser; mais ma boucle de recherce de tableau ne se lance pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    import java.util.Scanner;
    public class Ordre {
    	public static void main (String[]args){
    		Scanner sc=new Scanner(System.in);
    		char a='O';
    		int heure;
    		int min;
    		int i=0;
    		int j=0;
    		int tab1[]={0,10,20,30,40,50};
    		int tab2[]={00,06,12,18,24,30,36,42,48,54};
     
     
    		do{// Saisie d'une heure avec la contrainte 0<heure<24
    		System.out.println("Veuillez entrer une heure :");
    		heure=sc.nextInt();
    		if((heure <0) || (heure>24)){
    			System.out.println("Heure saisie incorect");
     
    			}
    		}while((heure <0) || (heure>24));
     
    		do{ // Saisie de minutes avec la contrainte 0<minutes<60
    			System.out.println("Veuillez entrer des minutes :");
    			min=sc.nextInt();
    			if((min <0) || (min>60)){
    				System.out.println("Heure saisie incorect");
     
    				}
    			}while((min <0) || (min>60));
     
     
    		if (heure>=5 && heure<8){ //De 5h00 inclus à 8h.
     
     
    			if(min>=tab1[0] && min<tab1[1]){// Quand 0<minutes<10
    				System.out.println("Prochain depart a "+heure+"h"+(tab1[1]));
    			}
     
     
    			for(i=0;min!=tab1[i] && i<5;i++);
    			if (min==tab1[i]){
    						System.out.println("Départ imminent");
     
    			}
     
     
    			for(i=0;!(tab1[i]<min) && !(min<tab1[i++]) && i<=5;i++);
    			if(min>=tab1[i] && min<tab1[i++]){// Quand 0<minutes<10
    				System.out.println("Prochain depart a "+heure+"h"+(tab1[i++]));	
    			}
     
    		}
    	}	
    }

  2. #2
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Salut,

    Les variables heure et min ne sont jamais initialisées, ton programme ne peux donc pas compiler c'est normal. Tu dois lui donner une valeur avant de rentrer dans ta boucle.

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2012
    Messages
    3 020
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 3 020
    Points : 16 092
    Points
    16 092
    Par défaut
    C'est quoi la question? Parce que bien que ça ne fasse pas du tout ce qui est demandé dans l'énoncé que tu as donné dans un autre sujet - d'ailleurs, pourquoi avoir créé un nouveau sujet? - ça marche tout à fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Veuillez entrer une heure :
    6
    Veuillez entrer des minutes :
    2
    Prochain depart a 6h10

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2012
    Messages
    3 020
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Septembre 2012
    Messages : 3 020
    Points : 16 092
    Points
    16 092
    Par défaut
    Citation Envoyé par Nico02 Voir le message
    Salut,

    Les variables heure et min ne sont jamais initialisées, ton programme ne peux donc pas compiler c'est normal. Tu dois lui donner une valeur avant de rentrer dans ta boucle.
    Si, ça compile, et ça s’exécute très bien.

    Et les variables sont initialisées par les entrées clavier (enfin sauf si on mets des valeurs erronées, mais je crois pas que notre ami en soit déjà à gérer proprement ses erreurs...)

  5. #5
    Membre éclairé Avatar de Ceddoc
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2009
    Messages : 493
    Points : 698
    Points
    698
    Par défaut
    Pourquoi cette ligne?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (heure>=5 && heure<8){ //De 5h00 inclus à 8h.
    Ce sera 6 et il manquera la gestion des autres tranches horaires.

  6. #6
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Effectivement, j'avais pas vu heure=sc.nextInt();

  7. #7
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    salut,
    sur la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (heure>=5 && heure<8){ //De 5h00 inclus à 8h.
    je pense qu'on arrivera pas à 8 comme prétendu (5, 6, 7) à cause de .
    Bon, de toutes les façons, n'ayant pas précisé la quelle de tes boucles ne tourne pas, en cherchant dans ton code j'ai trouvé la ligne 41 avec une boucle for qui s'exécute sans instructions dedans à cause du ";" à la fin de la ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for(i=0;min!=tab1[i] && i<5;i++);
    .
    A mon avis, tu t'attendrais à ce que le if qui vient juste après soit inclus dans la boucle n'est-ce pas?
    Même problème pour la ligne 48 avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for(i=0;!(tab1[i]<min) && !(min<tab1[i++]) && i<=5;i++);
    .
    Essaie d'enlever les ";" à la fin de chaque ligne citée peut être tes boucles tourneraient .
    UNE AUTRE REMARQUE
    Le tableau "tab2" est déclaré mais pas utilisé dans ton code. Peut être tu l'as omis involontairement ou bien tu l'as remplacé abusivement par "tab1" quelque part!!!
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  8. #8
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par Ceddoc Voir le message
    Pourquoi cette ligne?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (heure>=5 && heure<8){ //De 5h00 inclus à 8h.
    Ce sera 6 et il manquera la gestion des autres tranches horaires.
    Non, je pense par contre que l'intervalle ira de 5 à 7. [5,8[
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  9. #9
    Membre éclairé Avatar de Ceddoc
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2009
    Messages : 493
    Points : 698
    Points
    698
    Par défaut
    Citation Envoyé par MasterMbg Voir le message
    [5,8[
    Je parlais de 6h car dans son autre sujet il re-précise que c'est à partir de 6h mais en effet il ne prendra pas les bus a partir de 8h.

Discussions similaires

  1. [VB6] Exercice de Combinatoire
    Par fichtre! dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 19/01/2005, 14h27
  2. Un cours de C/C++ avec exercices corrigés
    Par merrheim dans le forum C++
    Réponses: 65
    Dernier message: 18/01/2005, 22h30
  3. Demande de corrections d'exercices Turbo Pascal
    Par Helpine dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 16/01/2005, 10h38
  4. Pages d'exercices à faire pour l'autoformation ?
    Par [thebadskull] dans le forum Evolutions du club
    Réponses: 13
    Dernier message: 15/06/2004, 20h26
  5. Pouvez vous m'aider a resoudres ces 3 exercices
    Par algorithmique dans le forum Algorithmes et structures de données
    Réponses: 11
    Dernier message: 09/08/2002, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo