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

Probleme de programme

Paulop
Paulop
Niveau 12
16 juin 2003 à 19:50:01

J´ai essayé de faire un programme qui dicte les tables de multiplication, malheureusement celui ci ne dicte rien du tout, voila le code :

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

  1. include < stdio.h>

int main(int argc, char *argv[])
{
int a,b;

printf("quelle table de multiplication desirez vous ? \n");
scanf("%d",&);

for(a=0 ; b<= 10 ; a++);
printf("%d x %d = %d\n",b,a,b*a);

system("PAUSE");
return 0;
}

-----------------
Qu´est ce que j´ai mal fait ? : )

Altonfrere
Altonfrere
Niveau 10
16 juin 2003 à 19:52:08

euh . ..
ca : for(a=0 ; b<= 10 ; a++); ! !!

d´abord c´est pas b < = 10 mais a < = 10 ! !!! et puis il faut pas de ; à la fin de la ligne sinon ca termine la boucle for !

Paulop
Paulop
Niveau 12
16 juin 2003 à 19:59:50

donc si j´ai compris

for(a=0 ; a<= 10 ; a++)

en fait si on met le " ;" ça arrete la boucle ce qui fait que la " a++" incrémente le " a<=10" de 1 et donc donne 11 ?

Mais le truc c´est que j´ai pas trop bien compris le sens de " incrementer", ça voudrai dire koi en français ? : )

Altonfrere
Altonfrere
Niveau 10
16 juin 2003 à 20:03:03

incrémenter ca veut dire augmenter une valeur ( c´est pas la vraie définition d´un dictionnaire mais c´est la mienne lol).

Concrètement incrémenter a de 1 c´est équivalent à :

a = a+1;

ou encore

a+=1;

ou encore :

a++;

Mettre le ; à la fin ca voudrait dire que ta boucle for s´exécutera jusqu´à ce qu´elle se termine ( donc oui a = 11 à la fin de la boucle) mais apparement tu voulais exécuter une instruction dans cette boucle ( printf("%d x %d = %d\n",b,a,b*a); ) or avec le point virgule après le for, ca marchera pas.

Ce que tu as écrit reviendrait à écrire ca :

for(a = 0 ; a < = 10; a++)
{
}
printf("%d x %d = %d\n",b,a,b*a);

Paulop
Paulop
Niveau 12
16 juin 2003 à 20:05:15

si on veut incrementer de plusieurs chiffres faut écrire a+=2 ou a+=3.... ?

JeanYvesYves
JeanYvesYves
Niveau 10
16 juin 2003 à 20:05:17

Rien a rajouter : )

Paulop
Paulop
Niveau 12
16 juin 2003 à 20:07:47

Bah je me réponds : oui c´est cela car les calculs s´effectue tout les 2 chiffres ( ou 3) au lieu de tout les chiffres : )

fantometteninja
fantometteninja
Niveau 6
16 juin 2003 à 20:09:50

alors:

le for execute la nain struction immediatement suivante a celui-ci.
donc, soit tu ne mets qu´une nain truction, soit tu utilise les accolades pour faire comme si il y avait une seule instruction.
donc, si tu ecris for(blabla; blabla; blabla);
il n´y a aucune nain sutruction avant le ; , donc le for ne fera rien(mis a part sa boucle)

quand tu nain cremente " a" de la valeur " b", tu rajoute a " a" la valeur " b" => a = a+b
ainsi, l´operateur ++ nain cremente de 1
a++; < => a+=1; < => a = a+1;

fantometteninja
fantometteninja
Niveau 6
16 juin 2003 à 20:10:33

arf, a la bourre... desole

Paulop
Paulop
Niveau 12
18 juin 2003 à 14:57:27
  1. include < stdio.h>
  1. define MAX 100

int main(int argc, char *argv[])
{
int n, d, n_coup=0, nc;

printf("choisissez le nombre d´essais");
scanf("%d",nc);

/* initialisation du générateur de nombres aléatoires */
srand(time(0));

n = rand() % MAX; /* le nombre à deviner */

while ( n_coup<=nc)
{
n_coup++;

printf("Deviner le nombre ( entre 0 et 100) " );
scanf("%d",&);

if ( d > n)
printf("trop grand\n");
else if ( d < n)
printf("trop petit\n");
else /* d==n */
{
printf("bravo ! . .. n = %d\nVous avez trouve en %d coups\n",n,n_coup);
break; /* sortir de la boucle while */
}
}
if ( n_coup=nc)
printf("Pfff, vous etes nul vous n avez pas trouve en %d coups ! !\n",n_coup);

system("PAUSE");
return 0;
}

Essayez de compiler, cet idiot ne s´arrete pas au bout du nombre de coups donnés ! : )

Altonfrere
Altonfrere
Niveau 10
18 juin 2003 à 15:00:09

Bin euh déjà rien qu´à première vue :

if ( n_coup=nc)

c´est pas un seul = mais 2 qu´il te faut : )

Paulop
Paulop
Niveau 12
18 juin 2003 à 15:02:35

ouais mais ça fonctionne toujours pas : /

Altonfrere
Altonfrere
Niveau 10
18 juin 2003 à 15:05:07

arf j´avais commencé à lire par la fin : )

scanf("%d",nc);

=> scanf("%d",&);

Paulop
Paulop
Niveau 12
18 juin 2003 à 15:08:06

ah voila, j´ai egalement replacé la phrase disant que le joueur est nul, je l´ai mis dans la boucle while.

Et sinon le " &" ça sert a koi ? parce que on le met que de temps en temps ^^

zaor
zaor
Niveau 5
18 juin 2003 à 15:10:08

FO le mettre dans tout les scanf . .. c´est tout =) on passe l´adresse de la variable a saisir, pour que tu puisse la modifier =)
Donc dans tout les scanf tu met des & devant tes variable, sauf si c´est une chaine de caractère que tu veu saisir...là pas besoin vu que c´est une adresse ta chaine...enfin voila =)

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