Bonjour,
programmation en c++
l'exercice suivant m'est demandé ; à mon avis il devrait afficher 577891 mais il affiche 577890 pourquoi

quand la boucle for arrive à la valeur m =9 elle l'exécute et cela donne 9 puis s'arrête car m doit être inférieur à n et non pas inférieur ou égal
et ensuite on fait le if du bas qui doit exécuter p-m =1 et non pas 0
quelqu'un peut il encore m'aider
cordialement
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
 
# include <iostream> 
using namespace std; 
 
int main() 
 
{ int m; 
	int p(10); 
	int n(10); 
	bool test(false); 
 
 
	for ( m=n/2; m<n ; ++m) 
	{if(test and ((m+n)%2 ==0)) {cout << m+1 << " ";} 
 
	else {cout << m << " "; 
	test = not test;}} 
 
 
 if (m > p) { cout << m+p << " ";} 
 else { cout << p-m << " ";} 
 
 
 return 0 ; 
 }