CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

J´aide les personne en C/C++

extasy89
extasy89
Niveau 6
23 mars 2005 à 17:05:05

slt a tous,

g une toute petite question en ce qui concerne la commande ifstream ( qui permet la lecture de données inscrites dans un fichier texte).
voila: g mis ceci,

ifstream fichier("décembre.txt");
char txt [1024];
fichier>>txt;
cout<<("************ DECEMBRE ************")<<endl;
cout < <"donnees:"<<endl<<endl;
cout<<txt<<endl<<endl;
int i;
for(i=0;i<50;i++)
{
fichier>>txt;
cout<<txt<<endl<<endl;
}

mais le probleme est que mon fichier " décembre.txt" ne contient que trois lignes d´infos, et donc le programme réinsrit la derniere ligne jusqu´à ce qu´il affiche 50 lignes.

ma question est:
comment faire pour que le programme n´affiche qu le nombre exact de lignes qu´il y a dans le fichier sans pour autant que je doive à chaque fois changer le nombre de la boucle " for"(ici c´est 50)

merci d´avance

jejej
jejej
Niveau 9
23 mars 2005 à 17:08:17

1 c´est 1 :)
le chiffre
comme 1=1 , bah la boucle boucle en permanence

je te montre un programme d´exemple :

int main()
{

/ / entree dans la boucle infinie
while(1)
{

/ / le choix
int choix;
cout<<"entrez le chiffre";
cin>> choix;

/ / on teste la valeur du resultat
if(choix==1)
{
/ / si la valeur est 1
cout<<"vous avez ecrit un";
}

/ / pareil pour 2,3,4

/ / 5 pour quitter ?
if( choix == 5)
{
break;
}

/ / parenthese de fin de la boucle while

}

return 0;

/ / fin du programme
}

extasy89
extasy89
Niveau 6
23 mars 2005 à 17:14:29

slt a tous,
g un probleme avec la commande ifstream, je vous explique. g mis ces lignes de codes:

ifstream fichier("décembre.txt");
char txt [1024];
fichier>>txt;
cout<<("************ DECEMBRE ************")<<endl;
cout < <"donnees:"<<endl<<endl;
cout<<txt<<endl<<endl;
int i;
for(i=0;i<50;i++)
{
fichier>>txt;
cout<<txt<<endl<<endl;
}

et tout s´affiche bien, sauf que le fichier " décembre" ne comporte que cinq ligne de textes et que donc le programme affiche plein de fois la dernière ligne jusq´à ce qu´il ai afficher 50 lignes de données ( car le nombre de fois que la boucle s´effectue est égal à 50.

ma question est la suivante:
comment faire pour que le programme n´affiche que le nombre de ligne de texte contenues dans le fichier " décembre" sans pour autant que je doive à chaque fois ouvrir le code source c++ pour modifier la boucle " for" en fonction du nombre de ligne de données

merci d´avance

basclln
basclln
Niveau 9
23 mars 2005 à 17:16:04

le break casse la boucle ?
Parce que comment retourne t-on au menu quand onse trouve dans le sous titre n°1 par exemple ?
Par " Break" ? Ou Break sert juste à casser pour s´échapper du programme ? Merci :)

pouky10
pouky10
Niveau 6
23 mars 2005 à 18:12:48

Je me demande comment fait-on sa propre librairie, faut-il insérer de l´assembleur dans le code c++ ou es-ce entièrement en c++. Pourriez-vous me dire un peu comment c´est fait ou un tuto pour en faire?

basclln
basclln
Niveau 9
23 mars 2005 à 18:26:18

Désolé je ne sais pas.

sonic66
sonic66
Niveau 10
23 mars 2005 à 18:28:54

je ne comprends pas!
je bloque avec ce -> et ca menerve!
ca veut dire quoi?
( vous me l´avez expliqué mais la..........jai du mal)
vous pouvez me le dire dela maniere la plus simple possible merci d´avance
c la que jai vu -> ( apres je devrai comprendre le reste ^^)
/ *
SDL_Surface* LoadBMP(char* fichier) / / 2eme forme
{
SDL_Surface* f = SDL_LoadBMP(fichier); // charge l´image dans f en RAM
SDL_Surface* surface=SDL_CreateRGBSurface(SDL_HWSURFACE, 1024, 768, 32, 0, 0, 0, 0); / / cree une image en VRAM
SDL_Rect R=Rect(0,0,f->w,f->h);
SDL_BlitSurface(f,NULL,firstscreen,&); // copie l´image f de la RAM vers firstscreen en VRAM
SDL_FreeSurface(f); / / supprime la surface f : inutile maintenant --> libere la mémoire
return surface;
}

  • /

/ *
SDL_Surface* LoadBMP(char* fichier,int vram=1) / / 3e forme
{
SDL_Surface* f = SDL_LoadBMP(fichier); // charge l´image dans f en RAM
SDL_Surface* r=NULL;
if ( vram)
r=SDL_CreateRGBSurface(SDL_HWSURFACE, f->w, f->h, 32, 0, 0, 0, 0);// cree une image en VRAM
if ( r==NULL) vram=0; // Si plus de place en VRAM, alors r= NULL.
if ( !vram)
r=SDL_CreateRGBSurface(SDL_SWSURFACE, f->w, f->h, 32, 0, 0, 0, 0); / / cree une image en VRAM
SDL_Rect R=Rect(0,0,f->w,f->h);
SDL_BlitSurface(f,NULL,r,&); // copie l´image f de la RAM vers firstscreen en VRAM
SDL_FreeSurface(f); / / supprime la surface f : inutile maintenant --> libere la mémoire
return r;
}

basclln
basclln
Niveau 9
23 mars 2005 à 18:34:36

super, encore un problème !
Cette fois, j´ai mes fourchettes de conditions

/ / entrée du choix
cout < < " Votre choix est :";
cin > > choix;
cout < < endl;

/ / Pour quitter choix n°5

if ( choix == 5)
{
cout < < " Merci d´avoir utilise Babas Travail et Energies Version educative 2.0" < < endl;

system ( "Pause");
return 0;
}

/ / Erreur choix

if ( choix > 5 && choix < 1);
{
cout < < " Vous vous etes trompes. Merci d´entrer une valeur entre 1 et 5";

}

/ / L´energie cinétique choix n°1

if ( choix == 1 ) ;
{
. ....

}

---------------------------------------

Je ne comprends pas, si je tape n´importe quel chiffre, j´obtiens tous les messages.
Par exemple, si je tapes " 7" dansla variable " choix", c´est comme toutes mes fourchettes de condition

if ( choix == 5);
if ( choix > 5 && choix < 1);
if ( choix == 1 ) ;

affichent ce qui leur est alloué..
Si je tape 7, l´ordinateur pense donc que variable choix = 7 = 5 = > 5 = < 1 ce qui est parfaitement illogique....

En fait, il l´affiche dans l´ordre, comme si cela ne dépendait d´aucune fourchette de condition....

Vous pensez que cela vient de quoi ?

Sinon, j´ai toujorus un problème de boucle....

Merci d´avance de votre aide....
( Faut dire que depuis la fin dela matinée,je suis sur l´ordi,alors je commence à saturer... ai-je rater un truc ? ??)

:merci: @+ tard

pandamark
pandamark
Niveau 6
23 mars 2005 à 19:02:04

sonic66 > > Le signe -> veut dire qu´un pointeur pointe sur quel que chose exemple.

SDL_Screen *Something;

Something->w;//Le pointeut de clsse prends l´adresse du membre w.

extasy89 > > le membre tellp donne la longueur, donc tu dois faire:

ifstream fichier("décembre.txt");
char txt [1024];
int longueur;
fichier>>txt;
cout<<("************ DECEMBRE ************")<<endl;
cout<<"donnees:"<<endl<<endl;
cout<<txt<<endl<<endl;
int i;
longueur=fichier.tellp();
for(i=0;i<longueur;i++)
{
fichier>>txt;
cout<<txt<<endl<<endl;
}

sonic66
sonic66
Niveau 10
23 mars 2005 à 19:05:51

a ok!
si ca prend ladreese dun int=3 par exemple , ca reviendra au meme que decrire 3!
j´ai compris! :ok: :ok: !!!!!

sonic66
sonic66
Niveau 10
23 mars 2005 à 19:07:48

a ok!
si ca prend ladreese dun int=3 par exemple , ca reviendra au meme que decrire 3!
j´ai compris! :ok: :ok: !!!!!

pandamark
pandamark
Niveau 6
23 mars 2005 à 19:15:55

sonic66 > > Regarde se code.

  1. include < iostream>
  2. include < cstdlib>

int main()
{
int i=3;
int *f=&
*f=4;
cout < <i<<endl;
system("PAUSE");
}

Tu pense qu´il afficheras combien?

basclln
basclln
Niveau 9
23 mars 2005 à 19:34:20

super, encore un problème !
Cette fois, j´ai mes fourchettes de conditions

/ / entrée du choix
cout < < " Votre choix est :";
cin > > choix;
cout < < endl;

/ / Pour quitter choix n°5

if ( choix == 5)
{
cout < < " Merci d´avoir utilise Babas Travail et Energies Version educative 2.0" < < endl;

system ( " Pause");
return 0;
}

/ / Erreur choix

if ( choix > 5 && choix < 1);
{
cout < < " Vous vous etes trompes. Merci d´entrer une valeur entre 1 et 5";

}

/ / L´energie cinétique choix n°1

if ( choix == 1 ) ;
{
. . ...

}

---------------------------------------

Je ne comprends pas, si je tape n´importe quel chiffre, j´obtiens tous les messages.
Par exemple, si je tapes " 7" dansla variable " choix", c´est comme toutes mes fourchettes de condition

if ( choix == 5);
if ( choix > 5 && choix < 1);
if ( choix == 1 ) ;

affichent ce qui leur est alloué..
Si je tape 7, l´ordinateur pense donc que variable choix = 7 = 5 = > 5 = < 1 ce qui est parfaitement illogique....

En fait, il l´affiche dans l´ordre, comme si cela ne dépendait d´aucune fourchette de condition....

Vous pensez que cela vient de quoi ?

Sinon, j´ai toujorus un problème de boucle....

Merci d´avance de votre aide....
( Faut dire que depuis la fin dela matinée,je suis sur l´ordi,alors je commence à saturer... ai-je rater un truc ? ? ?) Sinon, mes boucles posent toujorus problème :´(

@+ tard

sonic66
sonic66
Niveau 10
23 mars 2005 à 19:34:39

3
( je ne suis pas sur)

sonic66
sonic66
Niveau 10
23 mars 2005 à 19:35:19

car f est seulement a l´adresse de i , je ne pense donc pas qu´il pourrai changer les donnés de i

pandamark
pandamark
Niveau 6
23 mars 2005 à 19:36:48

sonic66 > > Tombé dans le piege 4 :lol:

sonic66
sonic66
Niveau 10
23 mars 2005 à 19:37:48

alors?
j´ai reussi le test? ^^

sonic66
sonic66
Niveau 10
23 mars 2005 à 19:39:27
  • f=4;

ho le co*!
ca veut pas dire f egal 4 mais ce qui a a l´adresse de i egal 4 ! chuis trop bete :snif:
allez! refais ce probleme et je te trouve la reponse :ok: !

sonic66
sonic66
Niveau 10
23 mars 2005 à 19:40:12

tu ma eu!

basclln
basclln
Niveau 9
23 mars 2005 à 19:42:55

personne ne sait ? :snif: Si ça se trouve, la réponse est évidente, mais bon, je crois ne plus avoir très bien les idées en place, lol
merci d´avance...

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment