Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2888 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Suivante
Auteur Sujet :

Apprendre à programmer

n°780334
Nic_Ver
Posté le 28-06-2004 à 12:27:01  profilanswer
 

Reprise du message précédent :
Bonjour Taz,
vous avez ecris:
le problème étant principalement l'ordre d'évaluation indéterminé entre la rvalue et la lvalue
Si l'ordre d'évaluation etait indéterminé on ne pourrait jamais résoudre l'exercise.
 

mood
Publicité
Posté le 28-06-2004 à 12:27:01  profilanswer
 

n°780362
leneuf22
Posté le 28-06-2004 à 12:49:21  profilanswer
 

Justement, il est indéterminé : le résultat pourra varier d'un compilateur à l'autre, car rien ne garantit que les opérandes seront évaluées dans un sens déterminé.
 
Un copier-coller de http://www.netadmintools.com/html/1gcc.man.html
 

Citation :

-Wsequence-point
Warn about code that may have undefined semantics because of violations of sequence point rules in the C standard.  
 
The C standard defines the order in which expressions in a C program are evaluated in terms of sequence points, which represent a partial ordering between the execution of parts of the program: those executed before the sequence point, and those executed after it. These occur after the evaluation of a full expression (one which is not part of a larger expression), after the evaluation of the first operand of a "&&", "||", "? :" or "," (comma) operator, before a function is called (but after the evaluation of its arguments and the expression denoting the called function), and in certain other places. Other than as expressed by the sequence point rules, the order of evaluation of subexpressions of an expression is not specified. All these rules describe only a partial order rather than a total order, since, for example, if two functions are called within one expression with no sequence point between them, the order in which the functions are called is not specified. However, the standards committee have ruled that function calls do not overlap.  
 
It is not specified when between sequence points modifications to the values of objects take effect. Programs whose behavior depends on this have undefined behavior; the C standard specifies that ``Between the previous and next sequence point an object shall have its stored value modified at most once by the evaluation of an expression. Furthermore, the prior value shall be read only to determine the value to be stored.''. If a program breaks these rules, the results on any particular implementation are entirely unpredictable.  
 
Examples of code with undefined behavior are "a = a++;", "a[n] = b[n++]" and "a[i++] = i;". Some more complicated cases are not diagnosed by this option, and it may give an occasional false positive result, but in general it has been found fairly effective at detecting this sort of problem in programs.  
 
The present implementation of this option only works for C programs. A future implementation may also work for C++ programs.  
 
The C standard is worded confusingly, therefore there is some debate over the precise meaning of the sequence point rules in subtle cases. Links to discussions of the problem, including proposed formal definitions, may be found on our readings page, at <http://gcc.gnu.org/readings.html>.


 
Le rationale, 2.1.2.3
http://www.lysator.liu.se/c/rat/title.html
 

Citation :

Because C expressions can contain side effects, issues of sequencing are important in expression evaluation.  (See §3.3.)  Most operators impose no sequencing requirements, but a few operators impose sequence points upon the evaluation: comma, logical-AND, logical-OR, and conditional.


Message édité par leneuf22 le 28-06-2004 à 13:06:00
n°781217
Nic_Ver
Posté le 29-06-2004 à 10:53:01  profilanswer
 

Vous avez ecris: le résultat pourra varier d'un compilateur à l'autre, car rien ne garantit que les opérandes seront évaluées dans un sens déterminé.  
En fait j'ai proposé ce test simplement pour  pouvoir verifier vite si les élèves ont compris le precedence et l'ordre d'évaluation des operateurs.  
Merci de votre attention à mon exemple et vous avez raison que le résultat pourra varier d'un compilateur à l'autre, mais dans cet exemple j'ai essaié d'eliminer des "side effects" par ne pas utiliser ++ et -- en post-fix position. C'est pourquoi meme si les opérandes seront évaluées dans un sens déterminé le resultet doit rester plus au moins stable.    
 

n°781254
Taz
bisounours-codeur
Posté le 29-06-2004 à 11:23:33  profilanswer
 

... je crois que tu n'a pas compris.
 
deplus tu enseignes la précédences des opérateurs, mais l'ordre d'évaluation r/l-value est indéfini
 
donc a += a++
 
est complètement indéfini, quelqu'un le lira de gauche à droite, une autre personne commencera par évalué a++.
 
c'est un mauvais exercice, remplace le

n°786090
Nic_Ver
Posté le 04-07-2004 à 13:00:57  profilanswer
 

D’abord je dois dire que je ne suis pas un francophone et je vous demande bien  de m’excuser pour mes tournures qui sont parfois  terribles à votre oreille.  J’espère tout de même que vous pourrez comprendre le vrai sens de mes phrases.  
Pourquoi j’ai mit à votre attention le problème d’apprentissage de programmation aux enfants. A vrai dire j’étais très enthousiaste lorsque j’ai enseigné le C++ au garçon ordinaire de 8 ans et il a passé l’examen à l’institut supérieur Cardinal Mercier. J’ai donné l’interview à Bel RTL et je pensais qu’à partir de ce moment-la j’aurais beaucoup des enfants en tant que mes élèves. Mais malheureusement l’apprentissage aux enfants de la programmation n’intéresse pas beaucoup des parents.  
Bien que les avantages de connaissance de la programmation ne soient pas discutables quand il s’agit des étudiants d’université par exemple, je n’ai pas encore arrivé à persuader les gens qu’il faut commencer avec ce genre de l’apprentissage à plus tôt possible. En fait la programmation est une science très difficile qui demande beaucoup de temps pour la maîtriser. Pour devenir un vrai spécialiste dans  ce domaine il faut avoir des années de l’expérience. D’autres parts la capacité de l’enfant  à n’import quel genre d’apprentissage est prévu par le créateur du monde. J’ai créé un outil qui permet de faire accessible la programmation aux petits enfants mais je ne sais pas quel genre d’outil il faut créer pour faire expliquer à leur parents que c’est important.  
 Il faut avouer que des enfants ils même ne sont pas encore vraiment motivés à apprendre quoi que ce soit. Il faut les motiver et c’est pourquoi j’ai demandé l’aide en ce projet. Le processus de l’apprentissage de la programmation aux enfants est très particulière et il demande du talent pédagogique. C’est un travail très intéressent qui donne beaucoup de plaisir au professeur aussi. De plus au cours de ce travail la connaissance du C++  du professeur même s’augmente véritablement!  Pour plus d’information a ce sujet vous pouvez  parler à mes amis, assistants et collèges belges qui sont déjà participés à mon projet.  
    A mon avis ce problème de la nécessité de l’apprentissage de la programmation aux enfants doit au moins être discutable parmi les gens.
   Dans la groupe des nos élèves ordinaires il y a aussi des enfants doués. Ces dernières  sont  très motivés et on n’a pas besoin de les persuader que le C++ est nécessaire pour eux. Il travaillent de façon sérieux , je veux dire comme des adultes, et je suis sûr que pour eux mes leçons donneront un très bon résultat à l’avenir.    
Peut être  vous ne pouvez pas participer à notre projet en tant que  professeur mais si vous connaissez les enfants doués je vous demande bien de leur donner  l’adresse de notre école à Bruxelles où ils auront la possibilité unique ( et gratuit en plus) de devenir un spécialiste d’ordinateur.  

n°787449
el muchach​o
Comfortably Numb
Posté le 05-07-2004 à 23:27:21  profilanswer
 

Si je comprends bien, vous êtes enseignant dans une école de surdoués, c'est ça ?
 
Ce que Taz et d'autres personnes ici ont du mal à comprendre, c'est ce qui motive votre choix d'enseigner le C comme premier langage de programmation à des enfants, parce que la syntaxe du langage me semble être une barrière à la motivation, étant donné qu'avant de pouvoir faire quelque chose d'utile/amusant en C, il faut quand même avoir contourné un certain nombre d'obstacles et introduire des abstractions totales comme la notion de classe, ce qui n'est pas le cas des langages cités comme Python/Logo.
Enfin bon, j'avoue être un peu sceptique.


Message édité par el muchacho le 05-07-2004 à 23:33:35
n°787593
Joel F
Real men use unique_ptr
Posté le 06-07-2004 à 08:30:28  profilanswer
 

1/ quel est l'interet pour un gosse de 8 ans d'apprendre le C++ ?
2/ les normes ? vous en faites quoi ?
3/ spa du spam ca ?

n°787595
Taz
bisounours-codeur
Posté le 06-07-2004 à 08:34:29  profilanswer
 

1) trouver plus nul que soi. Prendre plaisir à saper les bases. Dégouter la prochaine génération.

n°787667
Joel F
Real men use unique_ptr
Posté le 06-07-2004 à 09:48:17  profilanswer
 

Taz a écrit :

1) trouver plus nul que soi. Prendre plaisir à saper les bases. Dégouter la prochaine génération.


 
 :sol: ok ^^

n°787673
antp
Super Administrateur
Champion des excuses bidons
Posté le 06-07-2004 à 09:51:34  profilanswer
 

Joel F a écrit :


3/ spa du spam ca ?


 
faut pas pousser non plus, il a pas juste posté l'url du site puis disparu :o

mood
Publicité
Posté le 06-07-2004 à 09:51:34  profilanswer
 

n°787674
dark_pheni​x2
Posté le 06-07-2004 à 09:52:19  profilanswer
 

:)


---------------
vive les cracks ! http://www.cracks.am/
n°787711
Joel F
Real men use unique_ptr
Posté le 06-07-2004 à 10:12:44  profilanswer
 

antp a écrit :

faut pas pousser non plus, il a pas juste posté l'url du site puis disparu :o


 
de mon temps on en aurait TT plsu d'un pour moins (moins) que ca :o

n°793484
NoPanic
Posté le 12-07-2004 à 12:46:32  profilanswer
 

Bonjour,
je ne compprend pas un tel déchainement. Qu'y a t il de mal a vouloir donner des moyens a des enfants pour qu'ils puissent, un jour peut-être, maîtriser un outil ?  Et si cela était possible que des petiots apprennent un tel langage en suant moins que vous, voir en s'amusant, le voudriez- vous ?

n°793984
Taz
bisounours-codeur
Posté le 12-07-2004 à 20:40:04  profilanswer
 

et des équa diffs aussi

n°794003
gilou
Modérateur
Modzilla
Posté le 12-07-2004 à 21:27:29  profilanswer
 

Et puis le test indiqué pourrait être écrit en bon français avec une syntaxe correcte or int ou integer ne signifie pas "Le nombre entier"  mais "Nombre entier" (question 2) et il y a aussi des erreurs de syntaxe aux 2 premieres réponses de la question 6.
A+,


Message édité par gilou le 12-07-2004 à 21:28:05

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°794017
gilou
Modérateur
Modzilla
Posté le 12-07-2004 à 21:50:29  profilanswer
 

NoPanic a écrit :

Bonjour,
je ne compprend pas un tel déchainement. Qu'y a t il de mal a vouloir donner des moyens a des enfants pour qu'ils puissent, un jour peut-être, maîtriser un outil ?  Et si cela était possible que des petiots apprennent un tel langage en suant moins que vous, voir en s'amusant, le voudriez- vous ?

Ben il y a logo qui est tres bien pour ça, concu par un specialiste.
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°794604
NoPanic
Posté le 13-07-2004 à 12:50:36  profilanswer
 

Hello,
Il est clair que cette personne a besoin d'un soutien au niveau de la syntaxe en Français, ce que j'ai l'intention de lui offrir.
Tout cela ne disqualifie pas, a mes yeux, sa bonne volonté.
Je suis incapable de juger sa compétence en programmation étant moi-même un nul total dans le domaine (ca me feras peut-être l'occasion d'apprendre quelque chose).
Il me semble, en tout cas, qu'avant d'être un spécialiste on passe par le stade débutant et que ce qui est proposé sur la toile pour apprendre le C++ s'adresse a ceux qui ont déja de solides notions en informatique.
alors quoi ? c++: chasse gardée pour les hautes sphères et les grosses têtes  ou OK aux tentatives de vulgarisation (même maladroite pour les génération futures ?

n°794651
masklinn
í dag viðrar vel til loftárása
Posté le 13-07-2004 à 13:23:43  profilanswer
 

NoPanic a écrit :


c++: chasse gardée pour les hautes sphères et les grosses têtes  ou OK aux tentatives de vulgarisation (même maladroite pour les génération futures ?


J'aurais plutot dit "Réservé aux personnes ayant déjà une certaine expérience de l'informatique/de la programmation", parce que la logique et la syntaxe du C++ ne sont pas idéaux pour s'y mettre, surtout à un jeune age.
 
Il existe des langages faits spécialements pour l'apprentissage (logo, ?turbo pascal?) et des langages de haut niveau beaucoup plus clairs, simples et aisés à apprendre (Python, ...), ce qui permet d'inculquer aux élèves une forme de logique, de leur faire approcher la programmation sans les en dégouter définitivement a coup de syntaxes barbares et de processus d'exécution rebutants (compilation + exécution Vs exécution directe pour les langages haut niveau modernes)


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°795177
NoPanic
Posté le 13-07-2004 à 19:15:36  profilanswer
 

ok,
Si je comprends bien vous déconseillez de commencer par c++ du fait de sa complexité  (en passant je remercie tous ceux qui ont donné des références d'autres langages plus spécifiquement adapté aux enfants). La question que je me pose est: cette complexité est-elle due a la façon de l'enseigner ou inhérente au langage lui-même ?  De même qu'il y 20-25 ans l'ordinateur était réservé a une élite et nul n'imaginait qu'il pu être utilisé par tout-un-chacun et que donc la façon de "l'apprendre" était assez hermétique, de même je crois que la façon d'enseigner le c++ actuellement reflète un certain élitisme mais que d'ici une décenie la programmation sera aussi banale que l'acces a internet aujourd'hui.

n°795184
NoPanic
Posté le 13-07-2004 à 19:23:34  profilanswer
 

d'autre part,
comme il semble y avoir ici des personnes aussi qualifiées en français qu'en progammation, je me permet de poser la question suivante:
Comment lit-on ou énonce-t-on correctement l'instruction  
    a=3;
"a affectation trois " ou "trois affecte a" ou "a est affecté par 3" ou encore "???"
merçi d'avance.

n°795261
Joel F
Real men use unique_ptr
Posté le 13-07-2004 à 21:38:42  profilanswer
 

euh "a egal 3" ...

n°795326
NoPanic
Posté le 13-07-2004 à 23:27:41  profilanswer
 

je voulais dire en c++...
je crois que " a égal 3" s'écrit  
a==3

n°795362
gilou
Modérateur
Modzilla
Posté le 14-07-2004 à 01:20:06  profilanswer
 

NoPanic a écrit :

d'autre part,
comme il semble y avoir ici des personnes aussi qualifiées en français qu'en progammation, je me permet de poser la question suivante:
Comment lit-on ou énonce-t-on correctement l'instruction  
    a=3;
"a affectation trois " ou "trois affecte a" ou "a est affecté par 3" ou encore "???"
merçi d'avance.


"On affecte a la variable a la valeur 3".
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°795435
NoPanic
Posté le 14-07-2004 à 10:05:16  profilanswer
 

Merçi Gilou :jap:  
 
d'autres suggestions ?

n°795451
didier1809
${citation_perso}
Posté le 14-07-2004 à 10:25:44  profilanswer
 

NoPanic a écrit :

Merçi Gilou :jap:  
 
d'autres suggestions ?


 
"on met 3 dans A" [:joce]
 


---------------
.
n°795726
red factio​n
Posté le 14-07-2004 à 15:28:32  profilanswer
 

didier1809 a écrit :

"on met 3 dans A" [:joce]


dans la boite a variable [:aloy]

n°795852
didier1809
${citation_perso}
Posté le 14-07-2004 à 20:20:37  profilanswer
 

red faction a écrit :

dans la boite a variable [:aloy]


 
j'ai une prof qui nous a apprit avec des boites aussi [:ddr555]


---------------
.
n°795856
NoPanic
Posté le 14-07-2004 à 20:46:52  profilanswer
 

ah? dans quel cadre?  quand? Y a t-il un contact possible?
Je suis vraiment curieux d'en savoir plus.

n°795878
didier1809
${citation_perso}
Posté le 14-07-2004 à 22:24:28  profilanswer
 

NoPanic a écrit :

ah? dans quel cadre?  quand? Y a t-il un contact possible?
Je suis vraiment curieux d'en savoir plus.


 
heu, elle nous a juste sortit une 10aine de fois :
 
une variable c'est une boite avec un nom, et on peut y stocker une valeur  [:xp1700]  
 
elle ne c'est pas amusée avec de vraies boites ;)


---------------
.
n°795991
NoPanic
Posté le 15-07-2004 à 08:48:07  profilanswer
 

Ok, merçi

n°796068
antp
Super Administrateur
Champion des excuses bidons
Posté le 15-07-2004 à 10:04:08  profilanswer
 


 
jamais de cédille devant un e/i/y :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°796845
NoPanic
Posté le 15-07-2004 à 19:10:18  profilanswer
 

D'accord, merci donc

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
[Bouquins] Je veux apprendre à programmer !Cherche très bon livre pour apprendre à programmer en C
Apprendre a programmer ...apprendre a programmer en php
apprendre a programmer[sondage] quel est le meilleur langage pour apprendre à programmer ?
Qui veut apprendre à programmer des millions de lignes ?Ou apprendre à programmer
APPRENDRE A PROGRAMMERJ aimerais apprendre a programmer... Help ME !!!!
Plus de sujets relatifs à : Apprendre à programmer


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR