Problème de compréhension en C++
Résolu
A voir également:
- Problème de compréhension en C++
- Lecture compréhension cm1 cm2 pdf - Télécharger - Éducatifs
5 réponses
Mais je ne comprends pas la ligne marquée "(1)": on est sensé faire l'opération si secondes>60 pour en extraire les minutes equivalentes mais elle est où la condition pour réaliser cela?
En fait c'est l'opérateur modulo (%) qui s'en charge.
Supposons qu'on ajoute une instance A avec minutes = 2 et secondes = 158 et une instance B avec minutes = 3 et secondes = 16, alors :
Bonne chance
En fait c'est l'opérateur modulo (%) qui s'en charge.
Supposons qu'on ajoute une instance A avec minutes = 2 et secondes = 158 et une instance B avec minutes = 3 et secondes = 16, alors :
secondes += duree.m_secondes; // minutes = 2, secondes = 158 + 16 = 174 minutes += secondes / 60; // minutes = 2 + (174/2) = 2 + 2 = 4, secondes = 174 secondes %= 60; // minutes = 4, secondes = 174 % 60 = (60 * 2 +54) % 60 = 54
Bonne chance
Aaaaahhhh d'accord je ne le voyais pas comme ça !!! Effectivement ça rentre mieux vu sous cet angle !!!!!
Mille merci pour cet éclaircissement !! Et au passage, connais-tu un site qui proposerait des exercices en C++ par hasard ?
Mille merci pour cet éclaircissement !! Et au passage, connais-tu un site qui proposerait des exercices en C++ par hasard ?
Le plus simple c'est de chercher directement sur google, tu seras le plus à même de déterminer les exercices qui te conviennent.
Je pense que pour bien rentrer dans le C, la base c'est de connaître les pointeurs et quelques notions de compilation (qu'est ce qu'un précompilateur, un linker etc...), le reste est proche des langages usuels. Un exercice classique c'est coder les listes chaînées.
Pour le C++ les notions supplémentaires intéressantes sont les classes, les héritages, et les templates. Les templates font tout l'intérêt du C++ et sont poussés à l'extrême, tu peux jeter un œil dans la FAQ quand tu auras de bonnes bases en C/C++. J'ai commencé à écrire quelques articles dans la FAQ qui abordent certaines de ces notions. Je ne prétends pas expliquer mieux que le site du zéro mais je pense que tu y trouveras des informations intéressantes :
https://forums.commentcamarche.net/forum/affich-37604426-la-compilation-et-les-modules-en-c-et-en-c
https://forums.commentcamarche.net/forum/affich-37604414-les-inlines-en-c
https://forums.commentcamarche.net/forum/affich-37604421-introduction-a-la-stl-en-c-standard-template-library
https://forums.commentcamarche.net/forum/affich-37604412-les-templates-en-c
A partir de là, tu auras un niveau suffisant pour commencer par écrire des petits programmes, d'abord en mode texte et rapidement en mode graphique (surtout si tu apprends QT avec le site du zéro). Il faut commencer par des choses simples (par exemple un morpion, un mastermind) et après attaquer des trucs de plus en plus compliqués (par exemple un sudoku avec un solveur, un jeu de carte avec une petite IA).
En tout cas, fais des trucs qui t'amusent, car développer peut devenir rapidement rébarbatif, c'est donc dommage de se dégoûter pendant l'apprentissage ! Là j'ai cité des jeux, mais ça peut être n'importe quoi d'autre !
Je pense qu'un point important c'est d'avoir des notations et un code propre dès le début. Par exemple dans mes codes, les types se terminent par _t et les types templates sont les seuls qui commencent par une majuscule.
Comme rapidement les programmes deviennent complexe et sans un minimum de discipline ça devient rapidement ingérable. Prends l'habitude de documenter tes fonctions (avec un syntaxe doxygen par exemple), tu verras quand tu retombes sur des vieux morceaux de code, ça permet de gagner pas mal de temps !
Tu as toutes les armes en main, maintenant à toi de jouer ;-)
Bon courage !
Je pense que pour bien rentrer dans le C, la base c'est de connaître les pointeurs et quelques notions de compilation (qu'est ce qu'un précompilateur, un linker etc...), le reste est proche des langages usuels. Un exercice classique c'est coder les listes chaînées.
Pour le C++ les notions supplémentaires intéressantes sont les classes, les héritages, et les templates. Les templates font tout l'intérêt du C++ et sont poussés à l'extrême, tu peux jeter un œil dans la FAQ quand tu auras de bonnes bases en C/C++. J'ai commencé à écrire quelques articles dans la FAQ qui abordent certaines de ces notions. Je ne prétends pas expliquer mieux que le site du zéro mais je pense que tu y trouveras des informations intéressantes :
https://forums.commentcamarche.net/forum/affich-37604426-la-compilation-et-les-modules-en-c-et-en-c
https://forums.commentcamarche.net/forum/affich-37604414-les-inlines-en-c
https://forums.commentcamarche.net/forum/affich-37604421-introduction-a-la-stl-en-c-standard-template-library
https://forums.commentcamarche.net/forum/affich-37604412-les-templates-en-c
A partir de là, tu auras un niveau suffisant pour commencer par écrire des petits programmes, d'abord en mode texte et rapidement en mode graphique (surtout si tu apprends QT avec le site du zéro). Il faut commencer par des choses simples (par exemple un morpion, un mastermind) et après attaquer des trucs de plus en plus compliqués (par exemple un sudoku avec un solveur, un jeu de carte avec une petite IA).
En tout cas, fais des trucs qui t'amusent, car développer peut devenir rapidement rébarbatif, c'est donc dommage de se dégoûter pendant l'apprentissage ! Là j'ai cité des jeux, mais ça peut être n'importe quoi d'autre !
Je pense qu'un point important c'est d'avoir des notations et un code propre dès le début. Par exemple dans mes codes, les types se terminent par _t et les types templates sont les seuls qui commencent par une majuscule.
Comme rapidement les programmes deviennent complexe et sans un minimum de discipline ça devient rapidement ingérable. Prends l'habitude de documenter tes fonctions (avec un syntaxe doxygen par exemple), tu verras quand tu retombes sur des vieux morceaux de code, ça permet de gagner pas mal de temps !
Tu as toutes les armes en main, maintenant à toi de jouer ;-)
Bon courage !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
minutes += secondes / 60; // minutes = 2 + (174/2) = 2 + 2 = 4, secondes = 174
ce n'est pas plutôt
minutes += secondes / 60; // minutes = 2 + (174/2) = 2 + 2 = 4, secondes = 174
ce n'est pas plutôt
minutes += secondes / 60; // minutes = 2 + (174/60) = 2 + 2 = 4, secondes = 54et ensuite soit
Total secondes %= 60; // minutes = 4, secondes = 174 % 60 = (60 * 2 +54) % 60 = 54ou tout simplement
secondes %= 60; // minutes = 4, secondes = 54 % 60 = (0 * 60 + 54) = 54ou même pas vu que 54 < 60 ?!!