Itération jusque infini avec boucle for() ou while()
Fermé
ayoubs
Messages postés
8
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
20 août 2013
-
Modifié par ayoubs le 18/08/2013 à 17:45
tj anh Messages postés 18 Date d'inscription dimanche 11 août 2013 Statut Membre Dernière intervention 24 août 2013 - 21 août 2013 à 18:15
tj anh Messages postés 18 Date d'inscription dimanche 11 août 2013 Statut Membre Dernière intervention 24 août 2013 - 21 août 2013 à 18:15
A voir également:
- Itération jusque infini avec boucle for() ou while()
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Signe infini clavier - Forum Windows 10
- Signe infini sur mac - Forum MacOS
- Utiliser ticket kadéos infini sur internet - Forum Consommation & Internet
5 réponses
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
Modifié par KX le 18/08/2013 à 18:05
Modifié par KX le 18/08/2013 à 18:05
C'est du C++ ça ?
Si tu veux que ça n'ait pas de limite, alors tu ne mets rien :
Remarque : un tableau ne pouvant pas avoir une taille infinie tu vas te retrouver avec une jolie erreur au moment où "n" dépassera la taille de ton tableau...La confiance n'exclut pas le contrôle
Si tu veux que ça n'ait pas de limite, alors tu ne mets rien :
for (m=1;;m++) for (n=1;;n++) S += A[m][n] = f(m,n);
Remarque : un tableau ne pouvant pas avoir une taille infinie tu vas te retrouver avec une jolie erreur au moment où "n" dépassera la taille de ton tableau...La confiance n'exclut pas le contrôle
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
19 août 2013 à 11:20
19 août 2013 à 11:20
J'ajouterai, attention au type de m et n. Les types en informatique ont une valeur maximale, qui, si tu la dépasses, tu te retrouve à la valeur minimale.
Ceci est à prendre en compte pour les grands nombres.
Ensuite, je suppose que S et f(m,n) sont des réels (sinon, pas trop de sens). Et que la suite converge. Il arrivera donc un moment où l'ajout d'un nouveau terme ne changera pas le résultat (troncature numérique qui fait que "a+b==a"). Il n'est donc pas forcément nécessaire d'aller très loin dans les itérations.
Ceci est à prendre en compte pour les grands nombres.
Ensuite, je suppose que S et f(m,n) sont des réels (sinon, pas trop de sens). Et que la suite converge. Il arrivera donc un moment où l'ajout d'un nouveau terme ne changera pas le résultat (troncature numérique qui fait que "a+b==a"). Il n'est donc pas forcément nécessaire d'aller très loin dans les itérations.
geoinfo
Messages postés
31
Date d'inscription
dimanche 11 août 2013
Statut
Membre
Dernière intervention
17 juin 2017
8
19 août 2013 à 01:29
19 août 2013 à 01:29
Veuillez nous une description complète de cette fonction, votre question est un peu vague
ayoubs
Messages postés
8
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
20 août 2013
20 août 2013 à 02:59
20 août 2013 à 02:59
Bonjour,
c'est une fonction simple, juste le problème de l'itération jusque l'infini, malheureusement et logiquement ce n'est pas possible je pense en c++... la solution que j'ai est de choisir la plus grande valeur possible ( à la place de l'infini ) et de voir si ça donne les résultats attendus..
en gros c'est double sigma ( m,n=1 jusq infini) d'une fonction f(m;n))
pour plus de détails c la solution de Rao et Sarma (1981) pour la recharge artificielle des nappes.
c'est une fonction simple, juste le problème de l'itération jusque l'infini, malheureusement et logiquement ce n'est pas possible je pense en c++... la solution que j'ai est de choisir la plus grande valeur possible ( à la place de l'infini ) et de voir si ça donne les résultats attendus..
en gros c'est double sigma ( m,n=1 jusq infini) d'une fonction f(m;n))
pour plus de détails c la solution de Rao et Sarma (1981) pour la recharge artificielle des nappes.
tj anh
Messages postés
18
Date d'inscription
dimanche 11 août 2013
Statut
Membre
Dernière intervention
24 août 2013
19 août 2013 à 05:04
19 août 2013 à 05:04
décrivez le mot " infini " ???? Précisez
ayoubs
Messages postés
8
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
20 août 2013
Modifié par ayoubs le 20/08/2013 à 03:04
Modifié par ayoubs le 20/08/2013 à 03:04
J'ai pas bien saisi ta question ^^
tj anh
Messages postés
18
Date d'inscription
dimanche 11 août 2013
Statut
Membre
Dernière intervention
24 août 2013
Modifié par tj anh le 20/08/2013 à 06:59
Modifié par tj anh le 20/08/2013 à 06:59
Bon,
votre question, c'est comment peut - on faire l'itération sans terminaison, sans achèvement ??? c'est ca ??
Si oui, Pour " for " ,
for( ; ; )
{
faire qqc
}
while ( true )
{
faire qqc
}
pendant l'itération, si vous voulez sortir, utiliser la fonc " break; "
bonne journée
votre question, c'est comment peut - on faire l'itération sans terminaison, sans achèvement ??? c'est ca ??
Si oui, Pour " for " ,
for( ; ; )
{
faire qqc
}
while ( true )
{
faire qqc
}
pendant l'itération, si vous voulez sortir, utiliser la fonc " break; "
bonne journée
ayoubs
Messages postés
8
Date d'inscription
mercredi 3 avril 2013
Statut
Membre
Dernière intervention
20 août 2013
20 août 2013 à 21:28
20 août 2013 à 21:28
Je crois que ce n'est pas possible et logique de calculer la somme d'une fonction jusqu'à l'infinie avec c++, ...
parce que en fin de compte je veux que mon programme m'envoie le résultat de la sommation, et pour avoir ce résultât, surement il doit y avoir une condition ou une barrière pour arrêter le calcul de la somme et renvoi le résultat, mais je n'ai pas de condition à insérer en vu de la problématique, malgré que ma fonction tend vers 0 quand le n (variable d'itération) tend vers infini..
parce que en fin de compte je veux que mon programme m'envoie le résultat de la sommation, et pour avoir ce résultât, surement il doit y avoir une condition ou une barrière pour arrêter le calcul de la somme et renvoi le résultat, mais je n'ai pas de condition à insérer en vu de la problématique, malgré que ma fonction tend vers 0 quand le n (variable d'itération) tend vers infini..
tj anh
Messages postés
18
Date d'inscription
dimanche 11 août 2013
Statut
Membre
Dernière intervention
24 août 2013
21 août 2013 à 09:06
21 août 2013 à 09:06
la condition pour terminer l'itération, c'est break, s'il y a une condition quelconque, la fonc " break " s'appelé, à ce temps - là, l'itération s'achevera
tj anh
Messages postés
18
Date d'inscription
dimanche 11 août 2013
Statut
Membre
Dernière intervention
24 août 2013
21 août 2013 à 09:07
21 août 2013 à 09:07
En outre, pouvez - vous afficher la question complètée de cet exercise ??
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
geoinfo
Messages postés
31
Date d'inscription
dimanche 11 août 2013
Statut
Membre
Dernière intervention
17 juin 2017
8
19 août 2013 à 10:12
19 août 2013 à 10:12
pour que votre fonction fonctionne jusqu'a l'infini, tu dois utiliser la boucle while ou bien do while, et non pas for, car cette derniere est utilisée lorsque le nombre d'iterations est connu
18 août 2013 à 19:32
dans la problématique que j'ai, le m et n tend vers l'infini...en fait c une double sommation ( sigma de m,n=1, jusq infini)... aussi la fonction tend vers 0 qd m et n tend vers infini .. c'est pour ca j'ai pensé à un tableau 2D, sachant que je ne suis pas d'origine informaticien...
voila le problème exactement:
R = A (multiplier par )sigma(m=1 --> inf) sigma(n=1--> inf) d'une fonction (m,n) + B
A et B sont des constantes.
18 août 2013 à 19:41
Si tu veux faire du calcul formel utilises les outils adaptés comme maxima pour programmer un peu, voire des outils en ligne. Exemple : sum(sum(f(m,n),n,1,infinite),m,1,infinite))
18 août 2013 à 19:56
Je vais voir si c'est possible de le faire avec ce logiciel Maxima, sinon je vais voir avec Matlab ou scilab ou autres ..
Bonne journée ^^