begin process at 2012 05 29 11:37:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Maths

 > 

dtruire les élément d'un tableaux.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

dtruire les élément d'un tableaux.

mardi 25 juillet 2006 à 17:52:20 | dtruire les élément d'un tableaux.

ffnajia

Membre Club
Bonjour ;
j'ai un problème!!
dans une boucle je cherche à déterminer les éléments d'un tableau, je passe à vérifier si ils sont tous nul, je les accépte, mais si je trouve des éléments négatif, il faut éliminer ces éléments crée par des itérations.
alors comment faire pour les détruire???
merci d'avance.

Merci à tous
Najia

mardi 25 juillet 2006 à 18:18:55 | Re : dtruire les élément d'un tableaux.

buno

Administrateur CodeS-SourceS
On ne "détruit" pas la case d'un tableau, on la "vide".
Ce que tu veux faire, c'est décaler les cases d'après pour éviter la case vide? Soit tu le codes, soit tu utilises des listes chainées ou des vecteurs

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage
mardi 25 juillet 2006 à 22:20:12 | Re : dtruire les élément d'un tableaux.

SAKingdom

Membre Club
BruNews a publié un snippet ici qui supprimme les retour chariots en décalant la chaine. Suffit de modifier le code à tes besoins.

C++ (@++)
___________________________________________
Les plus grands esprits trouvent toujours une solution

[ Lien ]
mardi 25 juillet 2006 à 23:01:50 | Re : dtruire les élément d'un tableaux.

steve_clamage

En C++, std::remove_if est trés pratique pour ca.
mercredi 26 juillet 2006 à 10:09:12 | Re : dtruire les élément d'un tableaux.

ffnajia

Membre Club

Bonjour ;
Merci beaucoup pour vos réponses, mais malheureusement je trouve ça trés compliquer!!
voila mon programme: mon problème est dans la partie en bleu, je veux qu'il vide à chaque fois le tableau capi??

#include<iostream>
#include<cmath>

using namespace std;

double puis(double x, double y){
       double z;
       z=exp(y*log(x));
       return  z;
       }

double fonct(double x,double n, int i){
       double y;
       if(i==0) y=3*puis(x,n);
       if(i==1) y=1;
       if(i>1) y=0;
       return y;
       }
double uti(double x, int i){
       double y;
       if(i==0) y=log(x);
       if(i==1) y=1./x;
       return y;
       }
double grad(double delta, double x, double z, int n, int j, double h){
       double y;
       y=-((h*exp((n-delta)*j*h))/x)-z*h;
       return y;
       }

int main(){
   
 double delta,h,lambda,capifinal,utilite,ro,epsi,capi0,cd,cg;
    double consom,cap,cap1,alpha,gama,taux,d,p;
    int nb,n,m,ok,iter,compter,number,Maxiter,Maxcompter;
       
    FILE* Ecriture = fopen("donnees_E","w");
    fprintf(Ecriture,"%lf %lf %lf %lf %lf %lf %lf %lf %d %d %d %d",.005,.05,100000.,.8,20.,0.,0.1,0.1,100,8,50,80);
 fclose(Ecriture);
  
    FILE* Lecture = fopen("donnees_E","r");
    fscanf(Lecture,"%lf %lf %lf %lf %lf %lf %lf %lf %d %d %d %d",&alpha,&gama,&capi0,&delta,&lambda,&capifinal,&ro,&epsi,&nb,&n,&Maxiter,&Maxcompter);
    fclose(Lecture);
   
    double* capi = new double [nb];
    double* R=new double [nb];
    double* S=new double [nb];
    double* I=new double [nb];
  
   
    double* mu = new double [nb];
       
    double** conso = new double* [Maxiter+1];
 
     for(int j=0;j<Maxiter;j++) {conso[j]=new double [nb];}
  
    h=1./nb;
    cg=0.; cd=40*capi0;
    capi[0]=capi0;
 

    compter=0;
    cap1=capi[0];
    taux=.05; d=10.; p=10.;
    S[0]=1000.; I[0]=1.; R[0]=0.;
    
    while(compter<Maxcompter  and cap1-capifinal>epsi){
       
         consom=cg+((cd-cg)/2.);             

         for(int i=0;i<nb-1;i++){
    //    if    int i=0;    
            capi[i+1]=capi[i]+h*(fonct(capi[i],.3,0)*fonct(S[i]+R[i],.7,0)-consom-d*I[i]-p*taux*S[i]);
            S[i+1]=S[i]*(1-h*(alpha*I[i]+taux));
            I[i+1]=I[i]*(1+h*(alpha*S[i]-gama));
            R[i+1]=R[i]+h*(gama*I[i]+taux*S[i]);
           
      //      if(capi[i+1]>0.){i+=1;}
          
     //       else break;
          printf("%d %lf %lf %lf \n ",i,capi[i],capi[i+1],capi[nb-1]);  
          
            }

         if(capi[nb-1]>capifinal)cg=consom,cap1=capi[nb-1];
         else cd=consom, cap1=capi[0];
         printf("%lf\n",consom);
        
        

       
        
      //  printf("%lf\n",S[0]);
        
      //   printf("%lf\n",capi[0]);     
        
         compter++;
        
         printf("\n%d\n",compter);
         }
 getchar();
 
    return 0;
}

bonne journée.

Merci à tous
Najia

mercredi 26 juillet 2006 à 20:16:16 | Re : dtruire les élément d'un tableaux.

steve_clamage

Tu peux remplacer
double* capi = new double [nb];

par
std::vector<double> capi(nb);

ensuite tu parcours capi avec un itérateur
for(std::vector<double>::iterator i = capi.begin(); i != capi.end(); ++i)

et dans la boucle pour supprimer un élément c'est (de mémoire)
i = capi.erase(capi.begin() + i);
jeudi 27 juillet 2006 à 10:30:06 | Re : dtruire les élément d'un tableaux.

ffnajia

Membre Club
bonjour ;
quand je fais ça, il me dit dans un message d'erreur que vector is not a member of std!!!!


Merci 
Najia

jeudi 27 juillet 2006 à 16:14:47 | Re : dtruire les élément d'un tableaux.

lolo38550

Salut!

Il faut penser à inclure la classe vector qui appaartient à la librairie standard (STL):
#include <vector>

plus d'info: http://www.sm.u-bordeaux2.fr/~parisy/C++/stl.php

vendredi 28 juillet 2006 à 12:42:04 | Re : dtruire les élément d'un tableaux.

ffnajia

Membre Club

Bonjour ;

Je vous remercie beaucoup de tout, à ce moment je suis entrain de voir les cours sur le lien que tu m'a passer. c'est trés bien.

Merci à tous
Najia



Cette discussion est classée dans : élément, tableaux, éléments, dtruire


Répondre à ce message

Sujets en rapport avec ce message

Thread [ par PriMe2302 ] Bonjour, J'ai un tableau d'éléments et une fonction que je dois appliquer à chaque élément. J'ai créé des Threads (disons 5) pour pouvoir traiter plu Les Menus [ par Watermelon ] Comment griser un élément d'un menu sur VC++?J'ai bien essayé avec EnableMenuItem de la class CMenu, mais rien ne se passe (pourtant je pointe sur le un ti pb sur les tableaux [ par Julius Caesar ] On range dans un tableau 8 entiers générés aléatoirement par l'ordi. coment faire pour être sur que chaque nombre généré soit uniquen c'est à dire qu' Division de deux tableaux d'entiers [ par BenHur ] Bonjour, j'ai deux tableaux d'entiers dont chaque indice contient un nombre de 0 à 9. Je dois faire des opérations mathématiques sur chacun de ces ind TABLEAUX SANS ESPACES [ par golum ] char tab[10];../../*je cherche un test pour savoir si un tableau libéré de ses espaces est vide ...*/if(trim(tab)!='') les tableaux et #define [ par cabarrus ] a quoi servent les tableaux [arrays] et l'instruction #define..rhumsek Donner des valeurs au éléments d'un tableaux dans le constructeur d'une classe [ par ProGamer ] Dans la définition de ma classe, j'ai un tableau d'entiers. Dans le constructeur de la classe, j'ai besoin de donner des valeurs aux éléments du table Comment faire des tableaux de chaines de caractères ? [ par ProGamer ] Je veux faire des tableaux de chaines de caractères I want to make arrays of strings, mais en utilisant seulement le type de base, char.J'ai essayé ce Comment faire des tableaux de chaines de caractères ? [ par ProGamer ] Je veux faire des tableaux de chaines de caractères I want to make arrays of strings, mais en utilisant seulement le type de base, char.J'ai essayé ce Pointeurs sur des tableaux de plusieurs dimensions [ par ProGamer ] J'ai besoin de faire des pointeurs sur ce genre de tableaux. Voici comment je m'y prends (et surtout, voici comment ça ne marche pas...):unsigned char


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,045 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales