Boucle en java
Résolu/Fermé
Utilisateur anonyme
-
11 avril 2006 à 16:10
younes1719 Messages postés 3 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 1 janvier 2009 - 1 janv. 2009 à 21:52
younes1719 Messages postés 3 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 1 janvier 2009 - 1 janv. 2009 à 21:52
A voir également:
- Boucle en java
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Jeux java itel football - Télécharger - Jeux vidéo
- Waptrick java ✓ - Forum Mobile
- Jeux java itel 5360 ✓ - Forum Mobile
11 réponses
maily
Messages postés
7556
Date d'inscription
lundi 26 juin 2000
Statut
Contributeur
Dernière intervention
23 juin 2023
453
11 avril 2006 à 16:32
11 avril 2006 à 16:32
Tout d'abord bonjour!
Peux tu expliquer ton problème plus clairement?
Je n'ai pas bien compris... Un exemple aiderait beaucoup!
As tu déjà du code d'écrit? Pourrais tu le mettre pour qu'on le corrige?
Peux tu expliquer ton problème plus clairement?
Je n'ai pas bien compris... Un exemple aiderait beaucoup!
As tu déjà du code d'écrit? Pourrais tu le mettre pour qu'on le corrige?
Utilisateur anonyme
11 avril 2006 à 17:16
11 avril 2006 à 17:16
bon , j'ai deux zonnes ou on peut saisir deux adresses IP:
exemple:192.168.0.1 -----> 193.55.20.11
je vais extraire toutes les adresses IP de cette plage d'adresse.Comme j'ai deja dit j'ai en tout 8 variables de type int:
x1=192
x2=168
x3=0
x4=1
x5=193
x6=55
x7=20
x8=11
Comment les avoirs ces adresses ?,
pour comprendre le code je fais un system.out.println ( ) de chaque adresse.
Merci encore
exemple:192.168.0.1 -----> 193.55.20.11
je vais extraire toutes les adresses IP de cette plage d'adresse.Comme j'ai deja dit j'ai en tout 8 variables de type int:
x1=192
x2=168
x3=0
x4=1
x5=193
x6=55
x7=20
x8=11
Comment les avoirs ces adresses ?,
pour comprendre le code je fais un system.out.println ( ) de chaque adresse.
Merci encore
maily
Messages postés
7556
Date d'inscription
lundi 26 juin 2000
Statut
Contributeur
Dernière intervention
23 juin 2023
453
11 avril 2006 à 17:23
11 avril 2006 à 17:23
Il faut faire 4 boucles qui parcourent chaque plage d'entier jusqu'à 255 et afficher les adresses au fur et à mesure...
As tu déjà commencé ton algorithme??
As tu déjà commencé ton algorithme??
Utilisateur anonyme
11 avril 2006 à 17:33
11 avril 2006 à 17:33
oui me j'arive pas a continuer ,je sais pas ,je suis planté la !!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
maily
Messages postés
7556
Date d'inscription
lundi 26 juin 2000
Statut
Contributeur
Dernière intervention
23 juin 2023
453
11 avril 2006 à 17:34
11 avril 2006 à 17:34
mets moi ce que tu as fait déjà, je pourrais t'aider à débloquer le problème...
Utilisateur anonyme
11 avril 2006 à 17:51
11 avril 2006 à 17:51
voia ce que j'ai fait jusqu'a maintenant ; ca traite les deux dernier champs seulement , c pas complet :
if(x1==x5 && x2==x6 && x3==x7 && x4==x8)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+x4);
}
else
if(x1==x5 && x2==x6 && x3==x7)
{
for(int i4=x4;i4<=x8;i4++)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+i4);
}
}
else
if(x1==x5 && x2==x6)
{
if(x7==(x3+1))
{
for(int i4=x4;i4<=254;i4++)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+i4);
}
for(int i3=1;i3<=x8;i3++)
{
System.out.println(""+x1+"."+x2+"."+x7+"."+i3);
}
}
else
{
for(int i4=x4;i4<=254;i4++)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+i4);
}
////////////////
for(int i4=x3+1;i4<x7;i4++)
{
for(int i5=1;i5<=254;i5++)
{
System.out.println(""+x1+"."+x2+"."+i4+"."+i5);
}
}
////////////////
for(int i3=1;i3<=x8;i3++)
{
System.out.println(""+x1+"."+x2+"."+x7+"."+i3);
}
}
}
else
if(x1==x5)
{
}
if(x1==x5 && x2==x6 && x3==x7 && x4==x8)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+x4);
}
else
if(x1==x5 && x2==x6 && x3==x7)
{
for(int i4=x4;i4<=x8;i4++)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+i4);
}
}
else
if(x1==x5 && x2==x6)
{
if(x7==(x3+1))
{
for(int i4=x4;i4<=254;i4++)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+i4);
}
for(int i3=1;i3<=x8;i3++)
{
System.out.println(""+x1+"."+x2+"."+x7+"."+i3);
}
}
else
{
for(int i4=x4;i4<=254;i4++)
{
System.out.println(""+x1+"."+x2+"."+x3+"."+i4);
}
////////////////
for(int i4=x3+1;i4<x7;i4++)
{
for(int i5=1;i5<=254;i5++)
{
System.out.println(""+x1+"."+x2+"."+i4+"."+i5);
}
}
////////////////
for(int i3=1;i3<=x8;i3++)
{
System.out.println(""+x1+"."+x2+"."+x7+"."+i3);
}
}
}
else
if(x1==x5)
{
}
maily
Messages postés
7556
Date d'inscription
lundi 26 juin 2000
Statut
Contributeur
Dernière intervention
23 juin 2023
453
11 avril 2006 à 18:00
11 avril 2006 à 18:00
Personnellement, pour cette partie:
je ferais ça:
if(x1==x5 && x2==x6) { if(x7==(x3+1)) { for(int i4=x4;i4<=254;i4++) { System.out.println(""+x1+"."+x2+"."+x3+"."+i4); } for(int i3=1;i3<=x8;i3++) { System.out.println(""+x1+"."+x2+"."+x7+"."+i3); } } else { for(int i4=x4;i4<=254;i4++) { System.out.println(""+x1+"."+x2+"."+x3+"."+i4); } //////////////// for(int i4=x3+1;i4<x7;i4++) { for(int i5=1;i5<=254;i5++) { System.out.println(""+x1+"."+x2+"."+i4+"."+i5); } } //////////////// for(int i3=1;i3<=x8;i3++) { System.out.println(""+x1+"."+x2+"."+x7+"."+i3); } } }
je ferais ça:
if(x1==x5 && x2==x6) { int inter = x4; for(int i3=x3;i3<=x8;i3++){ for(int i4=inter;i4<=254;i4++){ if(i3 == x7 && i4 == x8){ break; } System.out.println(""+x1+"."+x2+"."+i3+"."+i4); } inter = 0; } }
Utilisateur anonyme
11 avril 2006 à 18:29
11 avril 2006 à 18:29
vous avez mis cette condition
(x1==x5 && x2==x6)
donc vous n'avez pas traité tous les cas .Ca je l'ai deja fait.Mon cide marchait deja .
Mais si on veut tester sur toutes les variables .Comment faire?
Encore Merci.
(x1==x5 && x2==x6)
donc vous n'avez pas traité tous les cas .Ca je l'ai deja fait.Mon cide marchait deja .
Mais si on veut tester sur toutes les variables .Comment faire?
Encore Merci.
maily
Messages postés
7556
Date d'inscription
lundi 26 juin 2000
Statut
Contributeur
Dernière intervention
23 juin 2023
453
12 avril 2006 à 09:58
12 avril 2006 à 09:58
En fait, je remplaçais juste une partie de ton code...
J'ai pas tout remis exprès, pour que ça reste lisible!
ma façon de faire pour ce cas là devrait t'aider à faire la suite...
J'ai pas tout remis exprès, pour que ça reste lisible!
ma façon de faire pour ce cas là devrait t'aider à faire la suite...
A tu deja entendu parler des masques de sous réseau ??? un truc du genre 255.255.255.0 ???
toi tu veut parcourir une ip avec un masque type 0.0.0.0 soir presque la quasi totalité des ip existantes dans le monde ! tu sera confronté a un problème de temps et d'exécution, et en plus je peut garantir le non fonctionnement de ce script malgré un acharnement total parce que le masque de sous réseau le plus bas reste 255.0.0.0 pour les réseaux locaux classiques, il faut forcément qu'un pc puisse broacaster sur une ip, et si il n'existe pas de masque de sous réseau, les pc perdent la boule, c'est ton cas pour passer d'une ip a une autre, je m'explique, si deja tu veut que tes postes communiquent : il faut au moins configurer tes pc comme suit :
PC 1 => 192.168.0.1 - 0.0.0.0
PC 2 => 193.50.20.11 - 0.0.0.0
ceci cause une incompatibilité du au masque de sous réseau de 0.0.0.0
voici donc une configuration minimale :
PC 1 => 192.168.0.1 - 255.0.0.0
PC 2 => 192.50.20.11 - 255.0.0.0
dans ce cas, les postes pourront se pinger et communiquer entre eux.
"uniquement dans le cas d'un réseau de type LAN, le MAN et WAN, c'est encore différent"
(perso de mon coté je ne vois pas pourquoi tu utilise des ip ainsi. un simple masque de sous réseau en 255.255.0.0 aurait suffit... a moins que tu ai plus que 65000 et quelques postes sur ton réseau car 255*255 = 255² possibilités de pC en réseau ^^)
toi tu veut parcourir une ip avec un masque type 0.0.0.0 soir presque la quasi totalité des ip existantes dans le monde ! tu sera confronté a un problème de temps et d'exécution, et en plus je peut garantir le non fonctionnement de ce script malgré un acharnement total parce que le masque de sous réseau le plus bas reste 255.0.0.0 pour les réseaux locaux classiques, il faut forcément qu'un pc puisse broacaster sur une ip, et si il n'existe pas de masque de sous réseau, les pc perdent la boule, c'est ton cas pour passer d'une ip a une autre, je m'explique, si deja tu veut que tes postes communiquent : il faut au moins configurer tes pc comme suit :
PC 1 => 192.168.0.1 - 0.0.0.0
PC 2 => 193.50.20.11 - 0.0.0.0
ceci cause une incompatibilité du au masque de sous réseau de 0.0.0.0
voici donc une configuration minimale :
PC 1 => 192.168.0.1 - 255.0.0.0
PC 2 => 192.50.20.11 - 255.0.0.0
dans ce cas, les postes pourront se pinger et communiquer entre eux.
"uniquement dans le cas d'un réseau de type LAN, le MAN et WAN, c'est encore différent"
(perso de mon coté je ne vois pas pourquoi tu utilise des ip ainsi. un simple masque de sous réseau en 255.255.0.0 aurait suffit... a moins que tu ai plus que 65000 et quelques postes sur ton réseau car 255*255 = 255² possibilités de pC en réseau ^^)
younes1719
Messages postés
3
Date d'inscription
dimanche 16 novembre 2008
Statut
Membre
Dernière intervention
1 janvier 2009
1 janv. 2009 à 21:52
1 janv. 2009 à 21:52
slt a tous je veux une aide svp sur la boucle do-while merci de me reponde bonne annee