bonjour à tous, je suis toute debutante en c++ et c
je voudrais créer un vecteur de 512 elements que j'ai nommé carralleven et un autre de 360 nommé permuteven.
mon vecteur carralleven est composé des valeurs -2 sur les 46 premières positions et les 46 dernières postions puis est composé des blocs de 14 élements dont le 5éme et 9émes sont des -1, et les sutres ont des valeurs qui vont de 0 à 360.
le vecteur permuteven devrai contenir comme élements les indices du vecteurs carralleven qui ont comme élements les valeurs de 0à 360.
j'ai creé ce programme qui devrait fonctionnait mais j'ai des erreures de segmentations et des valeurs erronés,surtout au debut du premier blocs et pour ii =3 pour vectoreven[511-ii],j'ai essayè de considerer comme valeur int w = 511-ii, mais ça ne me resout pas les choses.
j'épère que quelque'un sur ce forum reussira à me donner un coup de pouce.
merci.

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream>
#include <iomanip>
#include <stdio.h>
 
using namespace std;
   int main () {
  int vectoreven[512], permuteven[360];
  int ii=0;
  int portante ;
  int blocs ; 
  int datii;
  int m =-1 ;
int k;
 	for(int ii=0 ;ii<46;ii++)
        {
		vectoreven[ii]=-2;
                vectoreven[511-ii]=-2;    
        }
 
	//int m =-1;
 
	for (int blocs =1;blocs<31 ;blocs++){
		for(int portante =1;portante<14;portante++){
		datii =(blocs-1)*30+portante+45;
			if(portante ==5 || portante ==9)
			{vectoreven[datii]=-1;}
	  		else 
	  	 	 {m=m+1;	
	     		vectoreven[datii]=m;
	    		}
             if (datii > 5 || datii< 5 || datii <9 ||datii > 9){
                        m  = m +1;
			permuteven[m]=k;}
 
		}
	}	
 
    cout << setw(7) 
	 << ii 
 
 
	 << setw(13)
	 << vectoreven[ii] << endl;
 
 
  cout << "element"<< setw (13) << "value"<< endl;
  for ( int ii = 0; ii < 512; ii++)
    cout << setw(7)<< ii <<setw (13)<< vectoreven[ii] << endl;
 
 
cout<< setw(7)
     <<m
     <<setw(13)
     <<permuteven[m]<<endl;
 
cout << "element"<< setw (13) << "value"<< endl;
  for ( int m = 0;  m< 360; m++)
    cout << setw(7)<< m <<setw (13)<< permuteven[m] << endl;
  // char c;
  //cin>> c;
  return 0;
}