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++

JeanYvesYves
JeanYvesYves
Niveau 10
05 août 2004 à 18:02:54

ben disons que C crado.
Il est bcp plus propre de programmer en couches.

de meme quand tu programmes dans un seul fichier :
si tu as une fonction A et une fonction B
en général, il y en a une qui est au dessus de l´autre : genre :

void B()
{
/ / ne connait pas A
}

void A()
{
B();
}

mais il est rarissime d´avoir :
void B()
{
A();
}

void A()
{
B();
}

déja parce que ça peut boucler si tu ne fais pas attention, ce n´est pas bien lisible...
de plus, tel quel, le compilo te dira que dans B, il ne connait pas A. Tu peux le forcer a passer en " prototypant" A avant ( astuce sale aussi)

Je veux bien te dire comment faire pour ta fonction, mais C hyper sale, donc a mon avis, il serait mieux réorganiser tes données !
Si tu veux je te file un coup de main, si tu me décris - brievement - le tout.

J_PoWeL
J_PoWeL
Niveau 3
05 août 2004 à 18:10:10

bon en fait le prog que je veut creer me permet d´ executer mes musique en fonction de
l artiste-->de son album-->et des titre
par exemple
j ai 4 artiste
artiste1 -- ses albumm -- ses chanson
artiste2 " "
artiste3 " "
artiste4 " "

si je choisi artiste 1 ca me donnes ses album ensuite je choisi l album ca me donne les chanson de l album pour les executer tout ca j ai reussi a fair mais j aurais voulu pour revenir au choix de l album quand je suis dans la selection des chanson

J_PoWeL
J_PoWeL
Niveau 3
05 août 2004 à 18:36:08

donc j ai creer un . h pour chaque artiste et pour chaque album

Ptival
Ptival
Niveau 10
05 août 2004 à 19:07:13

C´est là qu´interviennent les classes non ?

Une classe Artiste, une sous-classe Album, une sous-sous-classe Titre...

J_PoWeL
J_PoWeL
Niveau 3
05 août 2004 à 19:21:17

les classe seront enorme je pense
c est pour ca que je les ai mit dans different fichier

Pitiboy
Pitiboy
Niveau 1
05 août 2004 à 21:12:16

Hello j´ai fait un programme de gestion des extraits de compte en c++ ( ligne de commande). Je cherche une alternative au cin qui attend obligatoirement la saisie d´un caractere avant de tapper sur entrée. Je souhaiterais pouvoir valider une non-saisie. Merci d´avance :)

Koyo-K
Koyo-K
Niveau 9
05 août 2004 à 23:47:04

pitiboy > " non saisie" ? Tu mets rien car pas de cin = pas de saisie ( OK je sais que je réponds pas à ta question mais je vois pas où tu veux en venir)

Comment on fait pour faire des calculs en binaire signe ? Par exemple 1111 1101 = -3 mais je comprends pas le principe ( il me semblait qu´on mettait 1 qu´au bit de poids le plus fort pour indiques un binaire signe)

lalelale
lalelale
Niveau 5
06 août 2004 à 18:18:24

Pour repondre a pitval, je crois que la façon la plus adequate est bien l´utilisation de classe. Si j´ai bien compris, le concept de polymorphisme sert à faire ce genre de chose ( utilisé des class de classes en gros).

lalelale
lalelale
Niveau 5
06 août 2004 à 18:20:27

Oh, j´ai oublié deposer ma question. Je vois dans bcp de sitesque lespointeurs sont tres importants. Mais dans aucunils ne disent pourquoi ils le sont. Donc, si vous pouviez m´eclaircir...

Sinon, je vais louer la bible du programmeur dans environ 1 semaine et 1/2, c pas cool ca?

overkill666
overkill666
Niveau 8
06 août 2004 à 19:07:32

Bonjour tout le monde. Suite à ce que tu m´as dit quelques pages auparavant j´ai refait la partie de mon code qui était mauvaise . Cependant j´ai essayé plein de fois et c´est toujours mauvais. Le problème c´est que je sais pas ce que renvoit la routine time donc pour la condition du if ça me pose des problèmes. Enfin voilà le code dont je vous parle ( j´espère que vous comprenez de quoi je parles plus haut).

  1. include < stdio.h>
  2. include < stdlib.h>
  3. include < time.h>

int main()
{
time_t time(time_t *ptr);
if(time_t time(time_t *ptr) == -1)
{
fprintf(stderr" Echec de la fonction time.\n");
exit ( 1);
}

else
{
printf(" Temps passe depuis le 1er janvier 1970 en secondes : %d\n", *ptr);
}

system("PAUSE");
return 0;
}

overkill666
overkill666
Niveau 8
06 août 2004 à 19:09:41

Euh la il y a une ligne modifiée ( lignes 7 et 8) avant j´avais mis ça :

if(time_t time(time_t *ptr) == -1)
{
. ...

De toute façon elle est mauvaise cette ligne.

Ptival
Ptival
Niveau 10
06 août 2004 à 19:38:31

Ca y est j´ai compris les classes ! !!

J´ai refait l´ennemi et le Vaisseau en classes, et j´ai ajouté un ptit écran de départ :

http://seborga1.free.fr/PtivalGame.rar

( Par contre j´ai enlevé le script de JoyPad/Stick pour le refaire)

Maintenant je vais tenter de faire plus d´ennemis grâce au constructeur, et pareil pour les Tirs du Vaisseau...

JeanYvesYves
JeanYvesYves
Niveau 10
06 août 2004 à 20:55:35

bien :ok:

lalelale > les pointeurs sont quand meme important. Meme si le C++ fait en sorte d´en utiliser le moins possible, je pense qu´il est important de les connaitre quand meme.

Koyo-K > coder -3 sous la forme 1111 1101 permet de pouvoir utiliser l´addtionneur pour faire les soustractions.

pour avoir le nombre positif associé : la regle est :
~N +1

dans ce cas : ~N ( tu inverses tous les bits)
fait 0000 0010
+1 tu as bien : 0000 0011

et tu remarqueras que c´est la meme formule ( et pas -1) pour revenir a -3

JeanYvesYves
JeanYvesYves
Niveau 10
06 août 2004 à 21:01:04

pour développer + : les processeur ne SAVENT PAS faire les soustractions.
donc en utilisant ce codage : faire 7-5 revient a faire :

7+ ( -5)

7 = 0000 0111
5 = 0000 0101

donc -5 = ~5+1 = 1111 1011

0000 0111
1111 1011
----------
1 0000 0010

ça fait bien 2 ( sous 8 bits) et ça charge le Carry qui spécifie qu´on a fait une soustraction et qu´on est resté dans le domaine +
( bref, C pour ta culture, c´est transparent pour le programmeur, a moins que tu descendes dans le codage...)
sur ce bon week end

Nesca
Nesca
Niveau 5
06 août 2004 à 21:10:30

Au lieu de faire des sujets de 46 pages, et si vous passiez sur le chat ?

http://www.cdj-chat.fr.st/

Koyo-K
Koyo-K
Niveau 9
06 août 2004 à 21:16:21

Ahhhhhhh ouais c´est le CA1 !
Encore merci.

overkill666
overkill666
Niveau 8
07 août 2004 à 14:30:42

Euh quelqu´un pourrait répondre à la question que j´ai posée dans la page d´avant ( je sais je suis chiant mais j´aimerai avoir la réponse avant de continuer dans la programmation).

libjcc
libjcc
Niveau 4
07 août 2004 à 21:12:51

voila

je me fait un pitit jeu et pr ca g besoin de nrb o hazard

g suivi le tuto de jeanyvesyves ( tres bien fait )

et donc je tape ca

int hazard(int d) / / trouve un nombre o harazrd
entre 1 et d

{
int e;
srand(time(NULL));
e=(rand()%d)+1;
cout < < e;
return e;
}

le probleme c´est que le prog melange le sac ( ui bon d´accord c pas tres bo) que une foi par seconde et comme j´ai besoin de bcp de nrb o harazrd en une fois g pas envie d´attendre chake foi une seconde

i a t il un autre moyen d´optenir les nbr o hazard ou de le melanger tt les miliseconde

aidez moi pliz

dnob700
dnob700
Niveau 10
07 août 2004 à 21:23:33

comme sur le chan, mais pour la postérité :

tu sors le : srand(time(NULL)); de la fonction hazard et tu le mets une fois au début de la fonction main

et ensuite ça va marcher comme tu veux.

overkill666
overkill666
Niveau 8
07 août 2004 à 21:50:26

Encore une question, comment faire pour affiche ce qui est renvoyé par les fonctions définies dans time.h ( par exemple la fonction ctime). Et so vous pouviez répondre à la question qui est posée plus haut ( par moi bien sur) ce serait parfait. Merci d´avance :ok:

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