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

problème en c

raiku
raiku
Niveau 8
22 février 2005 à 19:43:44

voici le programme:

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

main()
{
int annee;
printf("Entrez une année");
scanf("%d",&);
if ( annee%4==0 && %100==0 ||annee%400==0)
{
printf("l´année est bissextile");
}
else
{
printf("l´année n´est pas bissextile");
}
return 0;
}

et la il me dit : parse error before ´%´ token

si quelqu´un peut me dire ou elle se trouve sa serait gentil merci.

dnob700
dnob700
Niveau 10
22 février 2005 à 20:08:54

if ( annee%4==0 && annee%100==0 ||annee%400==0)

et non pas

if ( annee%4==0 && %100==0 ||annee%400==0)

bordel, ça vous arrive jamais de relire votre code avant de le poster quand il y a une erreur de ce genre ?

raiku
raiku
Niveau 8
22 février 2005 à 20:25:40

dsl en plus je l´ai relu , enfin bon merci beaucoup.

dnob700
dnob700
Niveau 10
22 février 2005 à 20:31:12

de rien,

c´est pas grave si ça t´as échappé, mais je venais de voir exactement le même genre de truc sur cdj :

le type fait #include < <iostream>
et il se demande pourquoi ça ne marche pas.

enfin voila, faut relire 7 fois son code sur son écran avant de poster.

surtout ce qui est important, c´est de chercher à comprendre l´erreur que t´affiche ton compilo, parceque si tu relis ton code, je peut comprendre que ça t´échappe cette erreur ( tu as écrit ce code, donc tu le connait et tu le relis vite, ça arrive à tout le monde). Mais l´erreur te dit : " il y a un problème dans ton texte avant le symbole %" en plus, il te donne certainement la ligne.

ya 3 signe % sur la ligne, donc si tu te concentre sur celle là, ça ne peut pas t´échapper comme erreur.

c´était le conseil du jour.

raiku
raiku
Niveau 8
22 février 2005 à 20:50:00

merci beaucoup, allez pour la journée si tu repasse , existe t´il une commande qui permet de relancer le programme depuit le debut , parce que je connait goto et je met une étiquette au début, mais si je m´abitu à utiliser goto mes programmes deviendrons de vrais pattes italiennes.

MrGoTo
MrGoTo
Niveau 8
22 février 2005 à 21:40:48

Quoi de vrai pates italiennes !
Tu peux faire un do {} while ( ).

gollumkawder
gollumkawder
Niveau 10
22 février 2005 à 21:54:27

dnob700 :d) le probleme est de donner trop d´aide a des personnes, alors forcément il arrive des gens qui ne savent même pas reperer une faute de frappe dans un programme de 5 lignes ( 400 lignes ça se comprend), moi je dis faut aider au minimum sans pour autant rien faire

gollumkawder
gollumkawder
Niveau 10
22 février 2005 à 21:55:05

pire ! des types qui veulent utiliser la SDL alors qu´ils connaissent pas le C++ et ne savent pas se servir de Dev-C++ !

raiku
raiku
Niveau 8
22 février 2005 à 23:48:44

bon ben je continu dsl vous allez encore dire lit ton code il est pas logique. ( c´est d´ailleur ce que j´essaie de comprendre, la logique du C).
Bref j´essaie de savoir comment fonctionne les if et les elses alors en fait j´ai 2 problème j´essaie de refère le meme programme qu´au dessus mais de manière différente et bien évidamment ça marche pas:

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

main()
{
int annee;
printf("Entrez une année\n");
scanf("%d",annee);
if ( annee%4==0 && annee%100==0)
{
printf("Cette année est bissextile");
}
else if(annee%400==0)
{
printf("Cette année est bissextile");
}
else
{
printf("Cette année n´est pas bissextile");
}

return 0;
}
Là j´ai essayé d´utiliser le else if et je suppose qu´il est mal utilisé. Il compile le proggramme mais il plante.

j´en ai un autre pour le chemin, celui là ne veut meme pas se compiler.

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

main()
{
int annee;
print("entrez une année\n");
scanf("%d",annee);
if ( annee%4==0)
{
if(annee%100==0)
{printf("Cette année est bissextile");}
else
{printf("Cette année n´est pas bissextile");}
}
else
{
if(annee%400==0)
{printf("Cette année est bissextile");}
else
{printf("Cette année n´est pas bissextile");}
}

return 0;
}
bon ben je vais déjà vous remercier d´avance et si vous avez d´autres conseils surtout n´hézitez pas.
Remerci.

dnob700
dnob700
Niveau 10
23 février 2005 à 00:42:56

je ne comprend pas pourquoi le premier plante, il devrait marcher, d´ailleurs chez moi il marche très bien.

sauf que tu as fait une erreur de logique, dans le premier if, tu devrait mettre annee%100!=0 ( et non pas ==)

pour le deuxième, il ne se compile pas, c´est normal, t´as qu´a regarder le message d´erreur de ton compilo ( bis).

par contre l´algo que tu utilise c´est du grand n´importe quoi, et pour que celui là t´afficher effectivement les annnées bisextile ou non, il y a pas mal de truc a changer.

gollumkawder
gollumkawder
Niveau 10
23 février 2005 à 12:53:56

Quand un programme ne fonctionne pas donne nous le source ( ça tu l´as fait) et les erreurs du compilateur ( comme ça on peux directement te dire ce qu´il va pas)

raiku
raiku
Niveau 8
23 février 2005 à 13:15:01

voici ce qu´il me met dans le premier cas:[Warning]no newline at end of file

dans le 2eme cas il me met ceci:
[Warning]no newline at end of file
[Linker error] undefined reference to `print´
heu je poste quand meme le message mais c bon j´ai trouvé , alors la je suis vraiment dsl , enfin le 1er cas ne marche toujours pas.

raiku
raiku
Niveau 8
23 février 2005 à 13:18:13

je comprend pas les 2 cas ne fonctionne pas je viens d´essayez de les compilez et sa ne fonctionne pas , je programme avec dev-c++, y´a t´il quelque chose à configurer, parce que je l´ai juste installé et mis en fr mais c tout j´ai pas activé les norme AINSI ect...

dnob700
dnob700
Niveau 10
23 février 2005 à 13:54:36

bon, print n´existe pas, hein, c´était printf, ça tu l´as trouvé.

pour le cas 2, ce qui m´ennuie, c´est qu´au erreur d´algo près, l marche bien chez moi ( c´est à dire il se lance et il me donne une réponse.

raiku
raiku
Niveau 8
23 février 2005 à 22:01:52

oaui c bon j´ai tout trouvé c t un blem avec le & dans le scanf mais j´ai mis du temps, j´y avais pas pensé du tout. ( je n´ai pas chercher tout l´apres midi lol meme si je poste le message à cette heure ci j´ai fais d´autres chose quand meme lol).
Juste une précisionsvp.
Faire
if(...)
{...}
if(...)
{...}
ça revient à la meme chose que ça?:
if(...)
{...}
else if(...)
{...}

Si oui quel est la différence alors?

dnob700
dnob700
Niveau 10
23 février 2005 à 23:53:31

ça n´a absolument rien a voir.

car dans le premier cas, tout les if seront testé les uns aprèsles autres, alors que dans le deuxième cas il ne seront testé que tant qu´il seront faux et si l´un d´eux est vrai alors les autres ne sont pas exécuté.

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