Pages : 1
#1 Le 06/04/2008, à 16:15
- Max33400
code qui marchait marche plus :'(
Bonjour,
Je suis étudiant en école d'ingénieur, et j'ai installé ubuntu pour pouvoir bosser mes projets à la maison...
Le Pb c'est que ce que j'ai codé et qui marchais en école fait tout planter ici ( la mémoire s'engorge jusqu'à plus soif .. )
Pourtant c'est exactement le fichier qui d'origine et qui allait bien avant.
Pourquoi ce pb svp ?
je vous transmet pas le code parce que sinonça va rebuter tout le monde de me répondre.
P.S. ma config est meilleure que celle de l'ordi de l'école.
Merci
#2 Le 06/04/2008, à 16:22
- leck
Re : code qui marchait marche plus :'(
peu être un problème de lib
Hors ligne
#3 Le 06/04/2008, à 16:23
- tontonjoe
Re : code qui marchait marche plus :'(
bah si, mets le code, mais dans des balises de code, comme ça ça prendra pas toute la page
Vivons heureux, roulons couchés.
Hors ligne
#4 Le 07/04/2008, à 08:59
- Max33400
Re : code qui marchait marche plus :'(
alors, j'explique, ya mon prof qui me demande d'analyser un peu comment marche un modele de sportif.
Donc ça fait appel à sportif.h et entrainement.h et sportif.a, enfin bon c pas là que se situe le pb, tous les commentaires à la fin c'est juste les commandes qu'il avait donné ds le main original.
Le pb c que la mémoire et le swap se remplissent jusqu'à tout figer, alors que pas sur les pc où je l'ai bossé
Merci
// __________________________________________________
//
// Projet Jeux Olympiques 2008
// Fichier : main.cpp
// Auteur : Pierre-Alexandre Favier
// Date : 18/03/08
//
// __________________________________________________
#include <iostream>
using namespace std ;
// inclusion du fichier d'en-tete de la bibliotheque
#include "sportif.h"
#include "entrainement.h"
int main(int, char**)
{
// ATTENTION : OBLIGATOIRE
srand((unsigned int) time(NULL));
//
// (initialisation du tirage aleatoire)
// declaration d'un athlete
Sportif * athlete ;
// creation de l'athlete
athlete = new Sportif() ;
// creation de l'entrainement, ici rien de la journee !!!
// Entrainement * entrainement = Entrainement::creerEntrainement(0,0,0,0,0,0) ;
//---------------------------------------------------------------------------------------------
Entrainement* tabEntr[8008];
int i=0;
int echantillon=10;
//int compteur=0;
for(int a=0;a<=10;a++)
{for(int b=0;b<=10-a;b++)
{for(int c=0;c<=10-a-b;c++)
{for(int d=0;d<=10-a-b-c;d++)
{for(int e=0;e<=10-a-b-c-d;e++)
{for(int f=0;f<=10-a-b-c-d-e;f++){
//cout<<a<<b<<c<<d<<e<<f<<endl;
//compteur++;
tabEntr[i]=Entrainement::creerEntrainement(a,b,c,d,e,f);
i++;
}}}}}}
float tabSpor[8008]/*[4]*/;
for(int i=0;i<8008;i++)
{athlete->entrainer(tabEntr[i]);
float moy_100=0,moy_200=0,moy_400=0,moy_resultat=0,tot_100=0,tot_200=0,tot_400=0,tot_resultat=0;
// declaration des tableaux de resultata
float * course_100 ;
float * course_200 ;
float * course_400 ;
for (int j=0;j<echantillon;j++)
{
float resultat = athlete->courir(course_100, course_200, course_400) ;
tot_100 += course_100[99];
tot_200 += course_200[199];
tot_400 +=course_400[399];
tot_resultat =tot_resultat+resultat;
}
moy_100 = tot_100/echantillon;
moy_200 = tot_200/echantillon;
moy_400 = tot_400/echantillon;
moy_resultat = tot_resultat/echantillon;
// tabSpor[i][1]=moy_100 ;
// tabSpor[i][2]=moy_200 ;
// tabSpor[i][3]=moy_400 ;
tabSpor[i]/*[4]*/=moy_resultat ;
delete course_100 ; // destruction de 3 tableaux...
delete course_200 ; // ...alloues par...
delete course_400 ; // ... la methode courir
}
delete athlete;
float wr=0;
int numero=0;
for(int i=0;i<8008;i++)
{if(tabSpor[i]/*[4]*/>wr)
{wr=tabSpor[i]/*[4]*/;numero=i;}
else{;}
}
cout<<"Le meilleur temps obstensible est de "<<wr<<endl;
cout<< "step :"<<tabEntr[numero]->getStep()<<endl;
cout<< "natation :"<<tabEntr[numero]->getNatation()<<endl;
cout<< "course :"<<tabEntr[numero]->getCourse()<<endl;
cout<< "muscu :"<<tabEntr[numero]->getMuscu()<<endl;
cout<< "prepa :"<<tabEntr[numero]->getPrepa()<<endl;
cout<< "massage :"<<tabEntr[numero]->getMassage()<<endl;
//----------------------------------------------------------------------------------------------
/* // declaration des tableaux de resultata
float * course_100 ;
float * course_200 ;
float * course_400 ;
// ATTENTION : ces tableaux sont alloues par la methode courir*/
/* // entrainement
athlete->entrainer(entrainement) ;
float resultat =
athlete->courir(course_100, course_200, course_400) ;*/
/* // affichage des resultats
cerr << "Résultat : "<< endl ;
cerr << "Course de 100s :\t" << course_100[99] << endl ;
cerr << "Course de 200s :\t" << course_200[199] << endl ;
cerr << "Course de 400s :\t" << course_400[399] << endl ;
cerr << endl << "Score total :\t" << resultat << endl ;
*/
// affichage des details de la course de 100 s
// for (int i = 1 ; i < 100 ; i++ )
// cout << course_100[i] << endl ;
// ATTENTION : OBLIGATOIRE
/*delete course_100 ; // destruction de 3 tableaux...
delete course_200 ; // ...alloues par...
delete course_400 ; // ... la methode courir*/
// delete entrainement ; // destruction de l'entrainement
//delete athlete ; // destruction de l'athlete
return 0 ;
}
//--- Fin de fichier ---
Hors ligne
#5 Le 07/04/2008, à 09:07
- Max33400
Re : code qui marchait marche plus :'(
petit correctif, ça marche avec un échantillon de 10, mais je voudrais un échantillon de 100 pour en faire la moyenne ( parce qu'il y a une part d'aléatoire dont je veux me débarrasser.)
p.s. moi aussi j'aimerai lock on sous linux lol
Hors ligne
Pages : 1