Conditions if/else

Fermé
carla1612 Messages postés 11 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 4 janvier 2017 - 7 déc. 2016 à 18:30
Sankazz Messages postés 7 Date d'inscription jeudi 8 décembre 2016 Statut Membre Dernière intervention 9 décembre 2016 - 8 déc. 2016 à 21:22
Bonjour,

Je débute en programmation (java) dans mon exercice je dois créer un rectangle, puis je dois rajouter un point (x;y) et vérifier si ce point se trouve à l'intérieur du rectangle.
Je sais que je dois utiliser plusieurs "if" mais je ne sais pas comment m'y prendre !
Merci pour votre aide.

3 réponses

Chris 94 Messages postés 50978 Date d'inscription mardi 8 janvier 2008 Statut Modérateur Dernière intervention 17 février 2023 7 341
7 déc. 2016 à 18:31
0
carla1612 Messages postés 11 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 4 janvier 2017
7 déc. 2016 à 18:38
Bonjour Chris,

Je ne cherche évidemment pas une réponse mais plutôt une aide pour comprendre comment démarrer d'autant plus que le codage est le pire ennemi du "recopiage".
Peut être ai je mal formulé ma question.

Je sais que pour vérifier si un certain point se trouve dans mon rectangle je dois utiliser la formue if mais étant donné que j'ai 4 variables (a,b,x,y) je ne sais pas laquelle comparer avec laquelle.

Merci
0
Chris 94 Messages postés 50978 Date d'inscription mardi 8 janvier 2008 Statut Modérateur Dernière intervention 17 février 2023 7 341 > carla1612 Messages postés 11 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 4 janvier 2017
7 déc. 2016 à 18:42
C'est plus un problème de math que de codage... Les coordonnées x,y sont-elles comprises ou pas entre les coordonnées des points qui déterminent le rectangle ?
0
carla1612 Messages postés 11 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 4 janvier 2017
Modifié par Chris 94 le 7/12/2016 à 18:56
public class Rectangle {

private  int  x, y;
  private   int  height, width;

public Rectangle(int a, int b, int c, int d){
   x=a;
   y=b;
   height=c;
   width=d;
  }




voila les caractéristiques de mon rectangle.
Je suis sensée définir un autre point avec des coordonnées et prouver qu'il est (ou pas) à l'intérieur de ce rectangle.
0
Chris 94 Messages postés 50978 Date d'inscription mardi 8 janvier 2008 Statut Modérateur Dernière intervention 17 février 2023 7 341
7 déc. 2016 à 18:59
C'est un début... Je t'ai rappelé les conditions à appliquer. C'est à toi de les "traduire" en java.

NB : avec le bouton
 <> 
en haut des fenêtres de saisie tu peux affecter un style correspondant au langage. Je l'ai fait pour toi ci-dessus.
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
7 déc. 2016 à 19:09
Bonjour,

public Rectangle(int a, int b, int c, int d){
   x=a;
   y=b;
   height=c;
   width=d;
}

Pour moi les valeurs qui caractérisent ton objet sont insuffisantes pour déterminer la forme d'un rectangle quelconque.

Imaginons que je fasse
new Rectangle(0, 0, 1, 2);
quelles seront les coordonnées des 4 sommets de ton rectangle ? Pourquoi ?
0
Sankazz Messages postés 7 Date d'inscription jeudi 8 décembre 2016 Statut Membre Dernière intervention 9 décembre 2016 2
8 déc. 2016 à 02:08
On s'en fout de ça, il n'a pas besoin de definir les coordonées des 4 sommets. Il programme donc c'est sur écran ! Et voilà comment on dessine un rectangle sur écrant.

A et B sont les coordonées du point de depart du rectangle.
C la hauteur du rectangle.
D la largeur du rectangle.

Point1 (a;b) , point2((a+d); b)
Point3 ((a+d);(b+c) , point4(a;(b+c)

Suffit juste de rajouter la largeur au point x de depart.
Et la hauteur au point y de depart pour dessiner le rectangle.
0
Chris 94 Messages postés 50978 Date d'inscription mardi 8 janvier 2008 Statut Modérateur Dernière intervention 17 février 2023 7 341 > Sankazz Messages postés 7 Date d'inscription jeudi 8 décembre 2016 Statut Membre Dernière intervention 9 décembre 2016
8 déc. 2016 à 02:25
Euh ? Merci mais... comment tu nous fais tout ça en java ?
0
Sankazz Messages postés 7 Date d'inscription jeudi 8 décembre 2016 Statut Membre Dernière intervention 9 décembre 2016 2 > Chris 94 Messages postés 50978 Date d'inscription mardi 8 janvier 2008 Statut Modérateur Dernière intervention 17 février 2023
8 déc. 2016 à 02:55
Class graphics mec tout simplement
0
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 3 019
8 déc. 2016 à 07:09
D'une part dessiner le rectangle n'a a priori aucun intérêt pour carla1612 qui veut juste savoir si le point est dedans ou non.

D'autre part Graphics dessine uniquement des rectangles dont les côtés sont parallèles aux axes, ce qui est un cas très particulier.
Pour un rectangle quelconque il manque une information sur l'orientation du rectangle.

De plus Graphics fait un choix, celui de considérer que le point dont on donne les coordonnées est celui en haut à gauche. Ce choix est tout à fait arbitraire et il est tout à fait possible que carla1612 ait fait un autre choix.
De même Graphics fait le choix de dire que width est la taille du rectangle parallèlement à l'axe des x, et que height est sa taille parallèlement à l'axe des y. Là encore c'est un choix tout à fait arbitraire, et au passage anti-mathématiques, puisque normalement la longueur est censé être le plus grand des deux côtés du rectangle.

Bref, parce qu'il y a tout ces choix possibles, 4 entiers ne permettent pas de savoir à quoi ressemblera le rectangle. Il est possible d'en déduire une infinité de rectangles différents.

"Imaginons que je fasse new Rectangle(0, 0, 1, 2);"
Voici un rectangle dont le x de départ et le y de départ sont (0,0) la hauteur est de 1, la largeur est de 2...


On est très loin du rectangle que dessinerait Graphics... et il y a une infinité de variantes possibles de ce même rectangle.
0
Sankazz Messages postés 7 Date d'inscription jeudi 8 décembre 2016 Statut Membre Dernière intervention 9 décembre 2016 2 > KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024
8 déc. 2016 à 21:22
Vu sous cet angle...
0