Avant de me lancer, comme je débute en C++, j'aimerais bien avoir des
suggestions pour traiter la chose suivante :
les données :
nb Tortues, définies par nom, famille, de 0 à 10 valeurs de longévité.
Je pense,Tortues sera un enregistrement :
( nom <chaine caractères> ,
famille <chaine caractères>,
longevite <Tableau de 1 à 10 Entiers>,
MoyenneLongevite <Reel> )
1 ébauche d'algo :
TantQue il y-a une Tortue à entrer
saisie(nom)
saisie(famille)
si pas_DejaEntree(nom,famille) -- on vérifie que les
-- caractéristiques n'ont pas -- déjà été fournies,
-- (même nom, même famille)
ajoute_Enregistrement(nom, famille)
SaisieLongevités(Tortue)-- 10 longévités
-- de 1 à 150 ans,
-- ou 200 si non renseigné
-- (prévoir les erreur d'entrée)
CalculMoyenne(Tortue) -- calcul de la moyenne
-- des longévités entrées
-- comprises entre 1 et 150
finsi
finTantQue
Affiche_Classe (Tortue,nom) -- classe et affiche les tortue
-- par nom
Affiche_Classe (Tortue,moyenne) -- classe et affiche les tortue
-- par moyenne de longevité
Affiche_Classe1 (Tortue,moyenne,60) -- classe et affiche les tortue
-- dont moyenne_longevite > 60
Affiche_Classe2(Tortue,longevite,5) -- classe et affiche
-- les 5 + grandes longevités
Affiche_Classe2(Tortue,moyenne,8) -- classe et affiche
-- les 8 + grandes moyennes de
-- longevités
Si vous avez des exemples/suggestions, les plus simples qui soient (je
suis une bille en programmation, alors faut que je puisse comprendre),
merci de m'en faire part :)
Vous pouvez envoyer directement à mon mail Sphincer(@free.fr)
Avant de me lancer, comme je débute en C++, j'aimerais bien avoir des suggestions pour traiter la chose suivante : [...] Si vous avez des exemples/suggestions, les plus simples qui soient (je suis une bille en programmation, alors faut que je puisse comprendre),
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Dimitri Papadopoulos
Bonjour,
Avant de me lancer, comme je débute en C++, j'aimerais bien avoir des
suggestions pour traiter la chose suivante :
[...]
Si vous avez des exemples/suggestions, les plus simples qui soient (je
suis une bille en programmation, alors faut que je puisse comprendre),
Je ne suis pas certain que C++ soit le langage le plus adapté pour
débuter. En fait je suis presque certain du contraire... Pourquoi ne pas
utilise Java, C#, Python ou Basic ?
Avant de me lancer, comme je débute en C++, j'aimerais bien avoir des suggestions pour traiter la chose suivante : [...] Si vous avez des exemples/suggestions, les plus simples qui soient (je suis une bille en programmation, alors faut que je puisse comprendre),
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Dimitri Papadopoulos
Michel Michaud
Dans le message d76o5v$jbp$,
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Dans le message d76o5v$jbp$1@ellebore.extra.cea.fr,
Je ne suis pas certain que C++ soit le langage le plus adapté pour
débuter. En fait je suis presque certain du contraire... Pourquoi
ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est
peut-être simplement un troll, mais j'ai une nouvelle réponse
depuis quelques temps et je veux la diffuser ici.
Que peut-on faire de spécial avec ces langages qu'on ne peut pas
faire avec C++ et qui est _important pour un débutant_ ?
(En sens inverse, il y a plein de choses simples qu'on peut faire
avec C++, très simplement et pas avec plusieurs de ces langages.
Il vous faut des exemples ?)
--
Michel Michaud mm@gdzid.com
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
sphincer
Bonjour,
Avant de me lancer, comme je débute en C++, j'aimerais bien avoir des suggestions pour traiter la chose suivante : [...] Si vous avez des exemples/suggestions, les plus simples qui soient (je suis une bille en programmation, alors faut que je puisse comprendre),
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Dimitri Papadopoulos
En basic je saurais faire, ou sous excess, mais cette petite appplication me permettrait justement de faire mes 1ères armes en C++ (je vais devoir m'y mettre, ainsi qu'au Java, pour le boulot) et de me familiariser avec ce langage dans lequel je suis une bille ... pour l'instant :)
Ce n'est pas une application toute faite que je demande, mais juste quelques orientations, sur les déclarations, par exemple (enregistrement comprenant des chaines de caractères, réel et tableau d'entiers).
Cet exemple me permettrait de me faire la main sur autre chose que des exercices simples (tour de Hanoie, affichage de chiffres premiers ...) et d'avancer plus vite.
J'en profite pour m'excuser du message envoyé plusieurs fois : le message restait bloqué sur une fenêtre d'attente. J'ai annulé pour relancer, persuadé que le message n'était pas passé :(
Merci néanmoins du conseil, Dimitri :)
Bonjour,
Avant de me lancer, comme je débute en C++, j'aimerais bien avoir des
suggestions pour traiter la chose suivante :
[...]
Si vous avez des exemples/suggestions, les plus simples qui soient (je
suis une bille en programmation, alors faut que je puisse comprendre),
Je ne suis pas certain que C++ soit le langage le plus adapté pour
débuter. En fait je suis presque certain du contraire... Pourquoi ne pas
utilise Java, C#, Python ou Basic ?
Dimitri Papadopoulos
En basic je saurais faire, ou sous excess,
mais cette petite appplication me permettrait justement de faire mes
1ères armes en C++ (je vais devoir m'y mettre, ainsi qu'au Java, pour le
boulot) et de me familiariser avec ce langage dans lequel je suis une
bille ... pour l'instant :)
Ce n'est pas une application toute faite que je demande, mais juste
quelques orientations, sur les déclarations, par exemple (enregistrement
comprenant des chaines de caractères, réel et tableau d'entiers).
Cet exemple me permettrait de me faire la main sur autre chose que des
exercices simples (tour de Hanoie, affichage de chiffres premiers ...)
et d'avancer plus vite.
J'en profite pour m'excuser du message envoyé plusieurs fois : le
message restait bloqué sur une fenêtre d'attente. J'ai annulé pour
relancer, persuadé que le message n'était pas passé :(
Avant de me lancer, comme je débute en C++, j'aimerais bien avoir des suggestions pour traiter la chose suivante : [...] Si vous avez des exemples/suggestions, les plus simples qui soient (je suis une bille en programmation, alors faut que je puisse comprendre),
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Dimitri Papadopoulos
En basic je saurais faire, ou sous excess, mais cette petite appplication me permettrait justement de faire mes 1ères armes en C++ (je vais devoir m'y mettre, ainsi qu'au Java, pour le boulot) et de me familiariser avec ce langage dans lequel je suis une bille ... pour l'instant :)
Ce n'est pas une application toute faite que je demande, mais juste quelques orientations, sur les déclarations, par exemple (enregistrement comprenant des chaines de caractères, réel et tableau d'entiers).
Cet exemple me permettrait de me faire la main sur autre chose que des exercices simples (tour de Hanoie, affichage de chiffres premiers ...) et d'avancer plus vite.
J'en profite pour m'excuser du message envoyé plusieurs fois : le message restait bloqué sur une fenêtre d'attente. J'ai annulé pour relancer, persuadé que le message n'était pas passé :(
Merci néanmoins du conseil, Dimitri :)
Matthieu Moy
"Michel Michaud" writes:
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
Mauvaise question. Penses plutôt à
« Que peut-on faire de dangereux ou quelles mauvaises habitudes peut prendre un débutant avec C++ et qu'on ne pourrait pas faire avec tous ces langages ? »
-- Matthieu
"Michel Michaud" <mm@gdzid.com> writes:
Que peut-on faire de spécial avec ces langages qu'on ne peut pas
faire avec C++ et qui est _important pour un débutant_ ?
Mauvaise question. Penses plutôt à
« Que peut-on faire de dangereux ou quelles mauvaises habitudes peut
prendre un débutant avec C++ et qu'on ne pourrait pas faire avec tous
ces langages ? »
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
Mauvaise question. Penses plutôt à
« Que peut-on faire de dangereux ou quelles mauvaises habitudes peut prendre un débutant avec C++ et qu'on ne pourrait pas faire avec tous ces langages ? »
-- Matthieu
Jean-Marc Bourguet
"Michel Michaud" writes:
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Tu as termine ton bouquin?
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
"Michel Michaud" <mm@gdzid.com> writes:
Je sais que ce genre de question peut lancer une guerre et est
peut-être simplement un troll, mais j'ai une nouvelle réponse
depuis quelques temps et je veux la diffuser ici.
Tu as termine ton bouquin?
A+
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Tu as termine ton bouquin?
A+
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
kanze
Michel Michaud wrote:
Dans le message d76o5v$jbp$, Dimitri PAPADOPOULOS-ORFANOS a
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
La question se pose en sens inverse, non ? Qu'est-ce qu'il faut apprendre de spécial (propre au langage) avant de pouvoir écrire des programmes simples et corrects ? Donc, par exemple, pour commencer en Java, il faut avoir aborder des classes et des fonctions statiques (ce qui est prèsqu'une contradiction) avant de pouvoir commencer -- en C++, les fonctions, mais aussi quelques petits détails sur les comportements indéfinis (ne pas modifier un objet deux fois dans la même expression), et la syntaxe des déclarations (pour reconnaître quand on a déclaré une fonction, et non une variable. (À part ce dernier, je ne dis pas qu'il ne faut pas les apprendre, quelque soit le langage du début. Mais c'est peut-être un peu exagéré d'exiger l'apprentissage des classes et des fonctions statiques avant de pouvoir écrire quoique ce soit.)
Il y a aussi la question de la façon qu'on y programme -- les Basic classiques sont absolument à éviter, par exemple, et je dirais qu'il faut, comme minimum, des fonctions récursives avec variables locales, et des structures de flux (if, while, etc.) et de données (struct ou record, le nom importe peu). Mais en dehors de Basic (mais je ne connais pas les Basic modernes), je crois que tous les langages cités ont ce qu'il faut à cet égard.
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
Et vice versa, mais en général pour d'autres raisons. J'écris une interface graphique en Java. En C++, il me faudrait déjà quelques heures pour trouver une bibliothèque graphique convenable et l'installer:-). Et encore, celles auxquelles j'ai jeté un coup oeil jusqu'ici me paraissent bien inférieur à Swing. Seulement, est-ce que ces choses là sont importantes pour un débuttant ?
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Michel Michaud wrote:
Dans le message d76o5v$jbp$1@ellebore.extra.cea.fr, Dimitri
PAPADOPOULOS-ORFANOS <papadopo@shfj.REMOVE.cea.NOSPAM.fr> a
Je ne suis pas certain que C++ soit le langage le plus
adapté pour débuter. En fait je suis presque certain du
contraire... Pourquoi ne pas utilise Java, C#, Python ou
Basic ?
Je sais que ce genre de question peut lancer une guerre et est
peut-être simplement un troll, mais j'ai une nouvelle réponse
depuis quelques temps et je veux la diffuser ici.
Que peut-on faire de spécial avec ces langages qu'on ne peut
pas faire avec C++ et qui est _important pour un débutant_ ?
La question se pose en sens inverse, non ? Qu'est-ce qu'il faut
apprendre de spécial (propre au langage) avant de pouvoir écrire
des programmes simples et corrects ? Donc, par exemple, pour
commencer en Java, il faut avoir aborder des classes et des
fonctions statiques (ce qui est prèsqu'une contradiction) avant
de pouvoir commencer -- en C++, les fonctions, mais aussi
quelques petits détails sur les comportements indéfinis (ne pas
modifier un objet deux fois dans la même expression), et la
syntaxe des déclarations (pour reconnaître quand on a déclaré
une fonction, et non une variable. (À part ce dernier, je ne dis
pas qu'il ne faut pas les apprendre, quelque soit le langage du
début. Mais c'est peut-être un peu exagéré d'exiger
l'apprentissage des classes et des fonctions statiques avant de
pouvoir écrire quoique ce soit.)
Il y a aussi la question de la façon qu'on y programme -- les
Basic classiques sont absolument à éviter, par exemple, et je
dirais qu'il faut, comme minimum, des fonctions récursives avec
variables locales, et des structures de flux (if, while, etc.)
et de données (struct ou record, le nom importe peu). Mais en
dehors de Basic (mais je ne connais pas les Basic modernes), je
crois que tous les langages cités ont ce qu'il faut à cet égard.
(En sens inverse, il y a plein de choses simples qu'on peut
faire avec C++, très simplement et pas avec plusieurs de ces
langages. Il vous faut des exemples ?)
Et vice versa, mais en général pour d'autres raisons. J'écris
une interface graphique en Java. En C++, il me faudrait déjà
quelques heures pour trouver une bibliothèque graphique
convenable et l'installer:-). Et encore, celles auxquelles j'ai
jeté un coup oeil jusqu'ici me paraissent bien inférieur à
Swing. Seulement, est-ce que ces choses là sont importantes
pour un débuttant ?
--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Dans le message d76o5v$jbp$, Dimitri PAPADOPOULOS-ORFANOS a
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
La question se pose en sens inverse, non ? Qu'est-ce qu'il faut apprendre de spécial (propre au langage) avant de pouvoir écrire des programmes simples et corrects ? Donc, par exemple, pour commencer en Java, il faut avoir aborder des classes et des fonctions statiques (ce qui est prèsqu'une contradiction) avant de pouvoir commencer -- en C++, les fonctions, mais aussi quelques petits détails sur les comportements indéfinis (ne pas modifier un objet deux fois dans la même expression), et la syntaxe des déclarations (pour reconnaître quand on a déclaré une fonction, et non une variable. (À part ce dernier, je ne dis pas qu'il ne faut pas les apprendre, quelque soit le langage du début. Mais c'est peut-être un peu exagéré d'exiger l'apprentissage des classes et des fonctions statiques avant de pouvoir écrire quoique ce soit.)
Il y a aussi la question de la façon qu'on y programme -- les Basic classiques sont absolument à éviter, par exemple, et je dirais qu'il faut, comme minimum, des fonctions récursives avec variables locales, et des structures de flux (if, while, etc.) et de données (struct ou record, le nom importe peu). Mais en dehors de Basic (mais je ne connais pas les Basic modernes), je crois que tous les langages cités ont ce qu'il faut à cet égard.
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
Et vice versa, mais en général pour d'autres raisons. J'écris une interface graphique en Java. En C++, il me faudrait déjà quelques heures pour trouver une bibliothèque graphique convenable et l'installer:-). Et encore, celles auxquelles j'ai jeté un coup oeil jusqu'ici me paraissent bien inférieur à Swing. Seulement, est-ce que ces choses là sont importantes pour un débuttant ?
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Richard Delorme
Dans le message d76o5v$jbp$,
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Par curiosité, quelle est cette réponse ?
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
Du graphisme, par exemple. Mais le problème ne se pose pas dans ce que permettent de faire ces langages, mais plus dans la simplicité des langages.
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
S'ils peuvent améliorer ma culture, je veux bien.
-- Richard
Dans le message d76o5v$jbp$1@ellebore.extra.cea.fr,
Je ne suis pas certain que C++ soit le langage le plus adapté pour
débuter. En fait je suis presque certain du contraire... Pourquoi
ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est
peut-être simplement un troll, mais j'ai une nouvelle réponse
depuis quelques temps et je veux la diffuser ici.
Par curiosité, quelle est cette réponse ?
Que peut-on faire de spécial avec ces langages qu'on ne peut pas
faire avec C++ et qui est _important pour un débutant_ ?
Du graphisme, par exemple. Mais le problème ne se pose pas dans ce que
permettent de faire ces langages, mais plus dans la simplicité des langages.
(En sens inverse, il y a plein de choses simples qu'on peut faire
avec C++, très simplement et pas avec plusieurs de ces langages.
Il vous faut des exemples ?)
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Par curiosité, quelle est cette réponse ?
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
Du graphisme, par exemple. Mais le problème ne se pose pas dans ce que permettent de faire ces langages, mais plus dans la simplicité des langages.
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
S'ils peuvent améliorer ma culture, je veux bien.
-- Richard
Michel Michaud
Dans le message ,
"Michel Michaud" writes:
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Tu as termine ton bouquin?
Oui et non. Je sais ce que je dois compléter et modifier avant la version finale, mais je suis trop occupé en ce moment pour le faire. Ça ira dans quelques semaines... J'ai hâte de passer à autre chose (comme mon livre sur les algorithmes et les structures de données, lui aussi en attente d'un effort pour le finir !). En ce moment, je fais du C# :-)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Dans le message pxbpsvczqom.fsf@news.bourguet.org,
"Michel Michaud" <mm@gdzid.com> writes:
Je sais que ce genre de question peut lancer une guerre et est
peut-être simplement un troll, mais j'ai une nouvelle réponse
depuis quelques temps et je veux la diffuser ici.
Tu as termine ton bouquin?
Oui et non. Je sais ce que je dois compléter et modifier avant
la version finale, mais je suis trop occupé en ce moment pour
le faire. Ça ira dans quelques semaines... J'ai hâte de passer
à autre chose (comme mon livre sur les algorithmes et les
structures de données, lui aussi en attente d'un effort pour le
finir !). En ce moment, je fais du C# :-)
--
Michel Michaud mm@gdzid.com
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Tu as termine ton bouquin?
Oui et non. Je sais ce que je dois compléter et modifier avant la version finale, mais je suis trop occupé en ce moment pour le faire. Ça ira dans quelques semaines... J'ai hâte de passer à autre chose (comme mon livre sur les algorithmes et les structures de données, lui aussi en attente d'un effort pour le finir !). En ce moment, je fais du C# :-)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Michel Michaud
Dans le message ,
Michel Michaud wrote:
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
La question se pose en sens inverse, non ? Qu'est-ce qu'il faut
Pourquoi faudrait-il poser la question en sens inverse. Si quelqu'un dit que C++ n'est pas bon pour un débutant, je demande des explications... Poser une autre question n'estpas une réponse et indique simplement que l'affirmation de base était peut-être gratuite.
apprendre de spécial (propre au langage) avant de pouvoir écrire des programmes simples et corrects ? Donc, par exemple, pour commencer en Java, il faut avoir aborder des classes et des fonctions statiques (ce qui est prèsqu'une contradiction) avant de pouvoir commencer --
Oui en ce sens-là, ce sont des avantages de C++ comme je le laissais entrevoir dans mon message. J'avais dit
« (En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?) »
Mais je ne veux pas dévier la question : on dit que C++ n'est pas bon pour un débutant. Je veux bien, mais qu'on me dise ce qui rend Java ou autres meilleurs pour ce rôle...
en C++, les fonctions, mais aussi quelques petits détails sur les comportements indéfinis (ne pas modifier un objet deux fois dans la même expression), et la
Ce sont des détails qui ne touchent pas les débutants... Je parle de comportements indéfinis à mes élèves de temps en temps, mais ce n'est pas pour les empêcher de faire ce qu'ils auraient naturellement l'intention de faire. Plutôt pour leur confirmer qu'ils ont raison de vouloir éviter certaines choses qui ne leur semblent pas très sûres.
syntaxe des déclarations (pour reconnaître quand on a déclaré une fonction, et non une variable.
Encore une fois, c'est un cas qui ne touche vraiment pas les débutants... Un débutant ne sait pas ce qu'est une fonction : il ne veut ni en faire, ni savoir comment en déclarer une, ni comment choisir ce qui devrait en être une et ce qui serait les paramètres. L'idée de faire son programme en un gros bloc lui plaît assez en fait ! Et le copier-coller semble leur meilleur ami.
Je suis heureux de pouvoir faire 150 pages de mon livre d'introduction à la programmation (environ le tiers) avant d'introduire la notion de modularité dans le code. Il y a beaucoup à faire avant d'y arriver, si on veut pouvoir se concentrer sur ce point à partir de ce moment. Si faire des boucles ou un série de conditions complexes est encore un problème, je ne veux pas faire des fonctions... pas encore !
(À part ce dernier, je ne dis pas qu'il ne faut pas les apprendre, quelque soit le langage du début. Mais c'est peut-être un peu exagéré d'exiger l'apprentissage des classes et des fonctions statiques avant de pouvoir écrire quoique ce soit.)
On te répondra qu'ils (les débutants) peuvent faire ça sans comprendre ce que c'est. Je trouve que le problème est de nier par la suite l'existence ou l'utilité de la notion de fonctions (ou variables) globales, surtout dans des langages qui abusent des classes pour y mettre des fonctions statiques... On ne peut dire qu'il faut faire des classes, expliquer la POO et l'intérêt des classes et en même temps faire des classes qui n'en sont pas selon les principes qu'on vient d'expliquer.
[...]
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
Et vice versa, mais en général pour d'autres raisons. J'écris une interface graphique en Java. En C++, il me faudrait déjà quelques heures pour trouver une bibliothèque graphique convenable et l'installer:-).
Je t'assure que même si faire du graphisme est un sujet qu'un débutant aimerait bien toucher rapidement, il se rend compte tout aussi rapidement qu'il a bien des choses à apprendre avant de pouvoir le faire réellement. Alors la « simplicité » ou la disponibilité d'un bibliothèque graphique (ou GUI ou autres semblables) n'est pas non plus une priorité pour un débutant sérieux. J'ai connu des programmeurs d'expérience tout à fait incapables (i.e. complètement bloqués) devant des problèmes de logique tout à fait élémentaires (sans problème technique particulier), mais très bons pour aligner des boutons ou des contrôles dans un éditeur graphique de boîtes de dialogue. Ce n'est pas ce genre de programmeurs que je veux former...
Et encore, celles auxquelles j'ai jeté un coup oeil jusqu'ici me paraissent bien inférieur à Swing. Seulement, est-ce que ces choses là sont importantes pour un débuttant ?
Non. Tu as tout compris :-)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Dans le message 1117206712.189835.44300@g14g2000cwa.googlegroups.com,
Michel Michaud wrote:
Que peut-on faire de spécial avec ces langages qu'on ne peut
pas faire avec C++ et qui est _important pour un débutant_ ?
La question se pose en sens inverse, non ? Qu'est-ce qu'il faut
Pourquoi faudrait-il poser la question en sens inverse. Si
quelqu'un dit que C++ n'est pas bon pour un débutant, je demande
des explications... Poser une autre question n'estpas une réponse
et indique simplement que l'affirmation de base était peut-être
gratuite.
apprendre de spécial (propre au langage) avant de pouvoir écrire
des programmes simples et corrects ? Donc, par exemple, pour
commencer en Java, il faut avoir aborder des classes et des
fonctions statiques (ce qui est prèsqu'une contradiction) avant
de pouvoir commencer --
Oui en ce sens-là, ce sont des avantages de C++ comme je le laissais
entrevoir dans mon message. J'avais dit
« (En sens inverse, il y a plein de choses simples qu'on peut faire
avec C++, très simplement et pas avec plusieurs de ces langages.
Il vous faut des exemples ?) »
Mais je ne veux pas dévier la question : on dit que C++ n'est pas
bon pour un débutant. Je veux bien, mais qu'on me dise ce qui rend
Java ou autres meilleurs pour ce rôle...
en C++, les fonctions, mais aussi
quelques petits détails sur les comportements indéfinis (ne pas
modifier un objet deux fois dans la même expression), et la
Ce sont des détails qui ne touchent pas les débutants... Je
parle de comportements indéfinis à mes élèves de temps en temps,
mais ce n'est pas pour les empêcher de faire ce qu'ils auraient
naturellement l'intention de faire. Plutôt pour leur confirmer
qu'ils ont raison de vouloir éviter certaines choses qui ne leur
semblent pas très sûres.
syntaxe des déclarations (pour reconnaître quand on a déclaré
une fonction, et non une variable.
Encore une fois, c'est un cas qui ne touche vraiment pas les
débutants... Un débutant ne sait pas ce qu'est une fonction : il
ne veut ni en faire, ni savoir comment en déclarer une, ni comment
choisir ce qui devrait en être une et ce qui serait les paramètres.
L'idée de faire son programme en un gros bloc lui plaît assez en
fait ! Et le copier-coller semble leur meilleur ami.
Je suis heureux de pouvoir faire 150 pages de mon livre d'introduction à la
programmation (environ le tiers) avant
d'introduire la notion de modularité dans le code. Il y a beaucoup
à faire avant d'y arriver, si on veut pouvoir se concentrer sur
ce point à partir de ce moment. Si faire des boucles ou un série
de conditions complexes est encore un problème, je ne veux pas
faire des fonctions... pas encore !
(À part ce dernier, je ne dis
pas qu'il ne faut pas les apprendre, quelque soit le langage du
début. Mais c'est peut-être un peu exagéré d'exiger
l'apprentissage des classes et des fonctions statiques avant de
pouvoir écrire quoique ce soit.)
On te répondra qu'ils (les débutants) peuvent faire ça sans
comprendre ce que c'est. Je trouve que le problème est de nier
par la suite l'existence ou l'utilité de la notion de fonctions
(ou variables) globales, surtout dans des langages qui abusent
des classes pour y mettre des fonctions statiques... On ne peut
dire qu'il faut faire des classes, expliquer la POO et l'intérêt
des classes et en même temps faire des classes qui n'en sont pas
selon les principes qu'on vient d'expliquer.
[...]
(En sens inverse, il y a plein de choses simples qu'on peut
faire avec C++, très simplement et pas avec plusieurs de ces
langages. Il vous faut des exemples ?)
Et vice versa, mais en général pour d'autres raisons. J'écris
une interface graphique en Java. En C++, il me faudrait déjà
quelques heures pour trouver une bibliothèque graphique
convenable et l'installer:-).
Je t'assure que même si faire du graphisme est un sujet qu'un
débutant aimerait bien toucher rapidement, il se rend compte
tout aussi rapidement qu'il a bien des choses à apprendre avant
de pouvoir le faire réellement. Alors la « simplicité » ou la
disponibilité d'un bibliothèque graphique (ou GUI ou autres
semblables) n'est pas non plus une priorité pour un débutant
sérieux. J'ai connu des programmeurs d'expérience tout à fait
incapables (i.e. complètement bloqués) devant des problèmes de
logique tout à fait élémentaires (sans problème technique
particulier), mais très bons pour aligner des boutons ou des
contrôles dans un éditeur graphique de boîtes de dialogue. Ce
n'est pas ce genre de programmeurs que je veux former...
Et encore, celles auxquelles j'ai
jeté un coup oeil jusqu'ici me paraissent bien inférieur à
Swing. Seulement, est-ce que ces choses là sont importantes
pour un débuttant ?
Non. Tu as tout compris :-)
--
Michel Michaud mm@gdzid.com
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
La question se pose en sens inverse, non ? Qu'est-ce qu'il faut
Pourquoi faudrait-il poser la question en sens inverse. Si quelqu'un dit que C++ n'est pas bon pour un débutant, je demande des explications... Poser une autre question n'estpas une réponse et indique simplement que l'affirmation de base était peut-être gratuite.
apprendre de spécial (propre au langage) avant de pouvoir écrire des programmes simples et corrects ? Donc, par exemple, pour commencer en Java, il faut avoir aborder des classes et des fonctions statiques (ce qui est prèsqu'une contradiction) avant de pouvoir commencer --
Oui en ce sens-là, ce sont des avantages de C++ comme je le laissais entrevoir dans mon message. J'avais dit
« (En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?) »
Mais je ne veux pas dévier la question : on dit que C++ n'est pas bon pour un débutant. Je veux bien, mais qu'on me dise ce qui rend Java ou autres meilleurs pour ce rôle...
en C++, les fonctions, mais aussi quelques petits détails sur les comportements indéfinis (ne pas modifier un objet deux fois dans la même expression), et la
Ce sont des détails qui ne touchent pas les débutants... Je parle de comportements indéfinis à mes élèves de temps en temps, mais ce n'est pas pour les empêcher de faire ce qu'ils auraient naturellement l'intention de faire. Plutôt pour leur confirmer qu'ils ont raison de vouloir éviter certaines choses qui ne leur semblent pas très sûres.
syntaxe des déclarations (pour reconnaître quand on a déclaré une fonction, et non une variable.
Encore une fois, c'est un cas qui ne touche vraiment pas les débutants... Un débutant ne sait pas ce qu'est une fonction : il ne veut ni en faire, ni savoir comment en déclarer une, ni comment choisir ce qui devrait en être une et ce qui serait les paramètres. L'idée de faire son programme en un gros bloc lui plaît assez en fait ! Et le copier-coller semble leur meilleur ami.
Je suis heureux de pouvoir faire 150 pages de mon livre d'introduction à la programmation (environ le tiers) avant d'introduire la notion de modularité dans le code. Il y a beaucoup à faire avant d'y arriver, si on veut pouvoir se concentrer sur ce point à partir de ce moment. Si faire des boucles ou un série de conditions complexes est encore un problème, je ne veux pas faire des fonctions... pas encore !
(À part ce dernier, je ne dis pas qu'il ne faut pas les apprendre, quelque soit le langage du début. Mais c'est peut-être un peu exagéré d'exiger l'apprentissage des classes et des fonctions statiques avant de pouvoir écrire quoique ce soit.)
On te répondra qu'ils (les débutants) peuvent faire ça sans comprendre ce que c'est. Je trouve que le problème est de nier par la suite l'existence ou l'utilité de la notion de fonctions (ou variables) globales, surtout dans des langages qui abusent des classes pour y mettre des fonctions statiques... On ne peut dire qu'il faut faire des classes, expliquer la POO et l'intérêt des classes et en même temps faire des classes qui n'en sont pas selon les principes qu'on vient d'expliquer.
[...]
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
Et vice versa, mais en général pour d'autres raisons. J'écris une interface graphique en Java. En C++, il me faudrait déjà quelques heures pour trouver une bibliothèque graphique convenable et l'installer:-).
Je t'assure que même si faire du graphisme est un sujet qu'un débutant aimerait bien toucher rapidement, il se rend compte tout aussi rapidement qu'il a bien des choses à apprendre avant de pouvoir le faire réellement. Alors la « simplicité » ou la disponibilité d'un bibliothèque graphique (ou GUI ou autres semblables) n'est pas non plus une priorité pour un débutant sérieux. J'ai connu des programmeurs d'expérience tout à fait incapables (i.e. complètement bloqués) devant des problèmes de logique tout à fait élémentaires (sans problème technique particulier), mais très bons pour aligner des boutons ou des contrôles dans un éditeur graphique de boîtes de dialogue. Ce n'est pas ce genre de programmeurs que je veux former...
Et encore, celles auxquelles j'ai jeté un coup oeil jusqu'ici me paraissent bien inférieur à Swing. Seulement, est-ce que ces choses là sont importantes pour un débuttant ?
Non. Tu as tout compris :-)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Michel Michaud
Dans le message 429759f4$0$302$,
Dans le message d76o5v$jbp$, Dimitri PAPADOPOULOS-ORFANOS
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Par curiosité, quelle est cette réponse ?
Elle suivait :
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
Du graphisme, par exemple. Mais le problème ne se pose pas dans ce que permettent de faire ces langages, mais plus dans la simplicité des langages.
Un débutant ne fait pas de graphisme.
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
S'ils peuvent améliorer ma culture, je veux bien.
double nb; cin >> nb;
Ça me semble déjà beaucoup :-)
(ceci dit, je ne connais pas assez Python pour savoir si c'est simple ou non dans ce langage, mais encore une fois, je ne dis pas que les autres langages sont mauvais, je demande simplement ce qu'ils ont de plus que C++, pour les vrais débutants...)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Dans le message 429759f4$0$302$7a628cd7@news.club-internet.fr,
Dans le message d76o5v$jbp$1@ellebore.extra.cea.fr,
Dimitri PAPADOPOULOS-ORFANOS <papadopo@shfj.REMOVE.cea.NOSPAM.fr>
Je ne suis pas certain que C++ soit le langage le plus adapté
pour débuter. En fait je suis presque certain du contraire...
Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est
peut-être simplement un troll, mais j'ai une nouvelle réponse
depuis quelques temps et je veux la diffuser ici.
Par curiosité, quelle est cette réponse ?
Elle suivait :
Que peut-on faire de spécial avec ces langages qu'on ne peut pas
faire avec C++ et qui est _important pour un débutant_ ?
Du graphisme, par exemple. Mais le problème ne se pose pas dans ce
que permettent de faire ces langages, mais plus dans la simplicité
des langages.
Un débutant ne fait pas de graphisme.
(En sens inverse, il y a plein de choses simples qu'on peut faire
avec C++, très simplement et pas avec plusieurs de ces langages.
Il vous faut des exemples ?)
S'ils peuvent améliorer ma culture, je veux bien.
double nb;
cin >> nb;
Ça me semble déjà beaucoup :-)
(ceci dit, je ne connais pas assez Python pour savoir si c'est
simple ou non dans ce langage, mais encore une fois, je ne dis
pas que les autres langages sont mauvais, je demande simplement
ce qu'ils ont de plus que C++, pour les vrais débutants...)
--
Michel Michaud mm@gdzid.com
http://www.gdzid.com
FAQ de fr.comp.lang.c++ :
http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/
Dans le message d76o5v$jbp$, Dimitri PAPADOPOULOS-ORFANOS
Je ne suis pas certain que C++ soit le langage le plus adapté pour débuter. En fait je suis presque certain du contraire... Pourquoi ne pas utilise Java, C#, Python ou Basic ?
Je sais que ce genre de question peut lancer une guerre et est peut-être simplement un troll, mais j'ai une nouvelle réponse depuis quelques temps et je veux la diffuser ici.
Par curiosité, quelle est cette réponse ?
Elle suivait :
Que peut-on faire de spécial avec ces langages qu'on ne peut pas faire avec C++ et qui est _important pour un débutant_ ?
Du graphisme, par exemple. Mais le problème ne se pose pas dans ce que permettent de faire ces langages, mais plus dans la simplicité des langages.
Un débutant ne fait pas de graphisme.
(En sens inverse, il y a plein de choses simples qu'on peut faire avec C++, très simplement et pas avec plusieurs de ces langages. Il vous faut des exemples ?)
S'ils peuvent améliorer ma culture, je veux bien.
double nb; cin >> nb;
Ça me semble déjà beaucoup :-)
(ceci dit, je ne connais pas assez Python pour savoir si c'est simple ou non dans ce langage, mais encore une fois, je ne dis pas que les autres langages sont mauvais, je demande simplement ce qu'ils ont de plus que C++, pour les vrais débutants...)
-- Michel Michaud http://www.gdzid.com FAQ de fr.comp.lang.c++ : http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ/