(basic) pb de compréhension d'un calcul
Résolu
chti_moon
Messages postés
63
Statut
Membre
-
chti_moon Messages postés 63 Statut Membre -
chti_moon Messages postés 63 Statut Membre -
Bonjour,
je suis actuellement en stage, et je cherche à comprendre un programme qu'on m'a demandé de refaire dans un autre langage (java)
Mais je bloque sur une ligne de calcul que je ne comprend pas :
R() est un tableau de double
Je ne comprend pas le "AND" et le ">". Est-ce que cela signifie qu'on fait le calcul si telle condition est remplie ??
Merci pr votre aide !
je suis actuellement en stage, et je cherche à comprendre un programme qu'on m'a demandé de refaire dans un autre langage (java)
Mais je bloque sur une ligne de calcul que je ne comprend pas :
R(14) = (1 + 103 / R(45) - 2300 / R(45) ^ 2) * -((R(45) >= 80) AND (R(45) <= 3410)) + 1.03 * -(R(45) > 3410)
R() est un tableau de double
Je ne comprend pas le "AND" et le ">". Est-ce que cela signifie qu'on fait le calcul si telle condition est remplie ??
Merci pr votre aide !
A voir également:
- (basic) pb de compréhension d'un calcul
- Microsoft 365 basic - Accueil - Microsoft Office
- Visual basic - Télécharger - Langages
- Calcul moyenne excel - Guide
- Calcul km marche à pied gratuit - Télécharger - Sport
- File renamer basic - Télécharger - Gestion de fichiers
10 réponses
Salut,
c'est du basic ?
Il faut savoir que l'évaluation d'une condition renvoie vrai ou faux, mais selon les langages, il est possible que le test 'vrai/faux' n'existe pas, on utilise donc une valeur numérique pour vérifier la condition, généralement -1 veut dire vrai et 0 veut dire faux.
Essaie d'afficher a=2, généralement tu verras le résultat -1 à l'écran, mais si tu essaies d'afficher 3=2, tu devrais obtenir 0...
Dans ton cas, R(14) devrait contenir -1 ou 0 selon que les conditions sont remplies ou non.
C'est plus clair ?
c'est du basic ?
Il faut savoir que l'évaluation d'une condition renvoie vrai ou faux, mais selon les langages, il est possible que le test 'vrai/faux' n'existe pas, on utilise donc une valeur numérique pour vérifier la condition, généralement -1 veut dire vrai et 0 veut dire faux.
Essaie d'afficher a=2, généralement tu verras le résultat -1 à l'écran, mais si tu essaies d'afficher 3=2, tu devrais obtenir 0...
Dans ton cas, R(14) devrait contenir -1 ou 0 selon que les conditions sont remplies ou non.
C'est plus clair ?
R14 je pance sa veut dire requete 14 tu doi surement selectionner (1 + 103 / R(45) - 2300 / R(45) ^ 2) * -((R(45) >= 80) et le and veut dire que tu doi selectionner un deuxieme truk je pence :AND (R(45) <= 3410)) + 1.03 * -(R(45) > 3410)
Oui merci c'est plus clair !
Et oui, c'est du basic, par contre je peux pas faire le test... je l'ai juste sur papier, c'est un vieux programme qu'il veule refaire fonctionner et j'ai rien pr faire du basic, donc est-ce que tu sais si, en basic, quand la condition est remplie on renvoie -1 et 0 sinon, ou autre chose ?
Donc en fait, mon R(14) devrais contenir soit 0, soit la valeur de (1 + 103 / R(45) - 2300 / R(45) ^ 2) si les 2 conditions sont vraies.
Est-ce que je me trompe ?
merci encore !:)
Et oui, c'est du basic, par contre je peux pas faire le test... je l'ai juste sur papier, c'est un vieux programme qu'il veule refaire fonctionner et j'ai rien pr faire du basic, donc est-ce que tu sais si, en basic, quand la condition est remplie on renvoie -1 et 0 sinon, ou autre chose ?
Donc en fait, mon R(14) devrais contenir soit 0, soit la valeur de (1 + 103 / R(45) - 2300 / R(45) ^ 2) si les 2 conditions sont vraies.
Est-ce que je me trompe ?
merci encore !:)
Pour tester du basic :
https://www.google.fr/search?hl=fr&q=basic+gratuit&btnG=Recherche+Google&meta=&gws_rd=ssl
Donc en fait, mon R(14) devrais contenir soit 0, soit la valeur de (1 + 103 / R(45) - 2300 / R(45) ^ 2) si les 2 conditions sont vraies.
Est-ce que je me trompe ?
OUI !
R(14) contiendra -1 si (1 + 103 / R(45) - 2300 / R(45) ^ 2) * -((R(45) >= 80) ET si (R(45) <= 3410)) + 1.03 * -(R(45) > 3410), sinon il contiendra 0. Regarde bien : on fait le test d'une formule par rapport à 80 et un test d'une autre formule (elle-même alambiquée !) par rapport à 3410.
https://www.google.fr/search?hl=fr&q=basic+gratuit&btnG=Recherche+Google&meta=&gws_rd=ssl
Donc en fait, mon R(14) devrais contenir soit 0, soit la valeur de (1 + 103 / R(45) - 2300 / R(45) ^ 2) si les 2 conditions sont vraies.
Est-ce que je me trompe ?
OUI !
R(14) contiendra -1 si (1 + 103 / R(45) - 2300 / R(45) ^ 2) * -((R(45) >= 80) ET si (R(45) <= 3410)) + 1.03 * -(R(45) > 3410), sinon il contiendra 0. Regarde bien : on fait le test d'une formule par rapport à 80 et un test d'une autre formule (elle-même alambiquée !) par rapport à 3410.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'aurais encore besoin d'un petit coup de pouce pr une autre formule :
Je comprend pas quelle sera la valeur de R(17).
D'après ce que j'ai compris, INSTR est une fonction qui retourne une position...
R(17) = VAL(LEFT$(STR$(dia + .02), INSTR(1, STR$(dia + .02), ".") + 2))
Je comprend pas quelle sera la valeur de R(17).
D'après ce que j'ai compris, INSTR est une fonction qui retourne une position...
Moi non plus...
En gros : STR transforme un nombre en chaine, INSTR cherche un car dans une chaine à partir d'une position.
Donc ici, il se pourrait que l'on cherche à récupérer dia avec 2 décimales (élimination des autres).
On ajoute .02 à dia, on le transforme en chaine et on cherche où est ".", quand on a trouvé, on ajoute 2 à cette position (pour prendre les décimales) et on coupe une chaine qu'on retransforme en numérique (avec val)
En gros : STR transforme un nombre en chaine, INSTR cherche un car dans une chaine à partir d'une position.
Donc ici, il se pourrait que l'on cherche à récupérer dia avec 2 décimales (élimination des autres).
On ajoute .02 à dia, on le transforme en chaine et on cherche où est ".", quand on a trouvé, on ajoute 2 à cette position (pour prendre les décimales) et on coupe une chaine qu'on retransforme en numérique (avec val)
Oui, en fait, c'est un grand truc pr pas faire grand chose au final... Mais j'ai compris comment ça marche, par contre, j'en vois pas l'intérêt !