Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les forums > Programmation > Langage C++ > [Exercices] Venez vous entraîner ! > Lecture du sujet

[Exercices] Venez vous entraîner !

Un nouvel exercice chaque mois

Vous devez être inscrit pour pouvoir poster des messages

Page : Précédente  1  2  3  ...  11  12  13  14  15  16  17  ...  21  22  23  24  Suivante
Auteur Message
1 visiteur sur ce sujet (1 anonyme)
Page : Précédente  1  2  3  ...  11  12  13  14  15  16  17  ...  21  22  23  24  Suivante
Hors ligne hilnius # Posté le 17/06/2008 à 20:29:34
Groupe : Membres
Reprise du dernier message de la page précédente :
Question un peu à part : ca serait possible d'avoir des exercices mais QT ?

projets :
Secret (cliquez pour afficher)
QT : tables de multiplications (99%) (manque fond d'écran)
QT : Si-help (20%)
QT : Tetris (0%)
QT : programme de retouche d'images (0%)

problemes actuels :


http://www.siteduzero.com/forum-83-288 [...] -d-ecran.html
http://www.siteduzero.com/forum-83-288 [...] ariables.html
 
Hors ligne nono212 # Posté le 17/06/2008 à 21:02:17
Euh..."a" ?
Avatar
Groupe : Membres
J'ai une question : doit-on uniquement surcharger l'opérateur virgule ou peut-on aussi surcharger l'opérateur égal ? (car là je bloque Oo, je vois pas comment sans ^^).

Image utilisateur
 
Hors ligne MatteX # Posté le 17/06/2008 à 21:09:43
The cake is a lie!
Avatar
Groupe : Membres
hilnius >> M@teo donne déjà des TP. Il me semble que Nanoc veut réduire l'utilisation de bibliothèques à la SL dans les exercices qu'il propose.

nono212 >> Qui t'en empêche... Est-il indiqué qu'on a pas le droit ? Anyway sans l'opérateur d'affectation tu n'y arriveras pas.

liens utiles: FAQ C++ (developpez.com) | GotAPI.com | H-Deb
Mon futur ex-blog | Logique : http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx
Propriétaire d'un Dell Inspiron 1720, Core 2 Duo 2.4Ghz, 3Go DDR2, 8600M GT 256Mo. Avec Blu-Ray!
 
Hors ligne nono212 # Posté le 17/06/2008 à 21:10:34
Euh..."a" ?
Avatar
Groupe : Membres
C'est bien ce que je pensais ^^

Edit : si on surcharge l'opérateur virgule avec comme paramètres que des int (on peut pas faire autrement hein ?), on obtient le message suivant par le compilateur :

Code : Console
error C2803: 'operator ,' doit avoir au moins un paramètre de type classe


Et je vois pas comment on pourrait mettre un type classe en paramètre...(y'a pas de classe dans "1,2" que je sache...)

Mais c'est vrai que même en "forçant" le compilateur, on ne pourrait mettre que deux ints dans le tableau...


Donc là je sèche complètement ! (le seul moyen serait de mettre une classe en premier paramètre de "operator,", mais à la fin on aurait une affectation du genre : "tab = tab,1,2,3", ce qui ne serait pas cohérent, mais qui marcherais !)

Edit2 : Ah c'est bon, j'ai trouvé la solution à mon problème !
La voilà :

Secret (cliquez pour afficher)
En fait, si on a une affectation du type "tab = 1,2,3,4,5", il faut la comprendre comme (((((tab=1),2),3),4),5)
Ce qui change tout, puisqu'on peut imbriquer des virgules, et on a une classe en paramètre !
Édité le 17/06/2008 à 22:52:36 par nono212

Image utilisateur
 
Hors ligne lmghs # Posté le 17/06/2008 à 23:00:28
Groupe : Membres
Citation : nono212
J'ai une question : doit-on uniquement surcharger l'opérateur virgule ou peut-on aussi surcharger l'opérateur égal ? (car là je bloque Oo, je vois pas comment sans ^^).

Grâce à l'héritage proposé par Nanoc, cela se fait proprement.
Sans héritage (chose pas propre du tout sur des types comme ceux de la STL), il faut détourner un autre opérateur comme ils ont fait sur boost::assign ->
Code : C++
1
2
std::vector <int> v;
v += 1, 2, 45;

(Et en allant à l'essentiel (conteneurs qui supportent push_back), j'avais complètement oublié à quel point cela tenait en si peu de lignes.)

PS: les mots clés c'est Secret (cliquez pour afficher)
"classe proxy" (intermédiaire en français), et "chainage". Quoique qu'avec l'héritage vous devez pouvoir fusionner la classe proxy dans la classe héritée à remplir.
 
Hors ligne Nanoc # Posté le 18/06/2008 à 09:32:20
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
@hilnius: Pour le moment je ne pense pas proposer d'exercices du Qt pour les raisons suivantes :

1) Je ne connais pas assez.
2) J'ai pas envie de forcer les gens à utiliser cette bibliothèque même si elle est très bien. Certains préfèrent WxWidget par exemple. La STL est disponible pour tous et est un outil indispensable.
3) Les exercices Qt donnent des très longs codes si l'on veut faire quelquechose qui tient la route.
4) Je pense qu'il est facile de trouver des exercices dans ce domaine. Tu peux essayer de refaire tous les petits programmes que tu trouves (calculatrice, chronomètre, astuce du jour,...)
5) Tu peux toujours essayer de faire une interface Qt par-dessus les exercices proposés. Pour la compression RLE, par exemple, tu pourrais faire un système de fenêtres avec des options pour choisir le flag, le fichier à compresser, etc. dans une fenêtre Qt.

Donc pour le moment, il n'y aura pas d'exercices Qt, mais c'est pas exclu qu'il y en ait un jour.


@non0212: Oui, oui tu peux. J'ai dit que tu pouvais ajouter tout ce que tu voulais.

Exercices de C++ pour tous les niveaux !
Mes tutos: Tri de Shell --- [C++] Gestion des exceptions --- [C++] Manipulateurs de flux
---
[C++] Notions avancées (suite du cours de M@teo21) (New)

Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça.

 
Hors ligne hilnius # Posté le 18/06/2008 à 10:51:31
Groupe : Membres
ok nanoc
je suis d'accord avec toi il faut de tres long codes pour utiliser un bon programme QT (généralement ca me prend plus de 500 ligne :o )
La STL je vais chercher un peu voir si je trouve quelque chose car je ne connais pas encore.

projets :
Secret (cliquez pour afficher)
QT : tables de multiplications (99%) (manque fond d'écran)
QT : Si-help (20%)
QT : Tetris (0%)
QT : programme de retouche d'images (0%)

problemes actuels :


http://www.siteduzero.com/forum-83-288 [...] -d-ecran.html
http://www.siteduzero.com/forum-83-288 [...] ariables.html
 
Hors ligne Nanoc # Posté le 18/06/2008 à 10:56:48
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Tu connais les string, les cout, le fichiers et les vector. C'est largement suffisant pour ces exercices.

Exercices de C++ pour tous les niveaux !
Mes tutos: Tri de Shell --- [C++] Gestion des exceptions --- [C++] Manipulateurs de flux
---
[C++] Notions avancées (suite du cours de M@teo21) (New)

Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça.

 
Hors ligne hilnius # Posté le 18/06/2008 à 11:03:37
Groupe : Membres
vector je connais pas
je connais string, cout, et les fichiers mais pas vector (donc comme il est souvent utilisé dans tes codes jai un peu de mal a comprendre)

d'ailleurs : ou peut on trouver un tutoriel SQL (aussi bien expliqué que selui de m@teo si ca existe) ?
Édité le 18/06/2008 à 11:06:54 par hilnius

projets :
Secret (cliquez pour afficher)
QT : tables de multiplications (99%) (manque fond d'écran)
QT : Si-help (20%)
QT : Tetris (0%)
QT : programme de retouche d'images (0%)

problemes actuels :


http://www.siteduzero.com/forum-83-288 [...] -d-ecran.html
http://www.siteduzero.com/forum-83-288 [...] ariables.html
 
Hors ligne Nanoc # Posté le 18/06/2008 à 11:04:11
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Il y a un lien dans ma signature.

Exercices de C++ pour tous les niveaux !
Mes tutos: Tri de Shell --- [C++] Gestion des exceptions --- [C++] Manipulateurs de flux
---
[C++] Notions avancées (suite du cours de M@teo21) (New)

Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça.

 
Hors ligne Hiura # Posté le 18/06/2008 à 11:23:33
Avatar
Groupe : Membres
Citation : hilnius
d'ailleurs : ou peut on trouver un tutoriel SQL (aussi bien expliqué que selui de m@teo si ca existe) ?
Regarde mysql++ (bibliothèque) et Google.

Citation : Nanoc
Il y a un lien dans ma signature.
J'te l'dis, faut l'écrire plus gros et de couleur pétante. ;)

 
Hors ligne Nanoc # Posté le 18/06/2008 à 11:28:19
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Ne confondons pas SQL et STL...

(Humour) La différence entre les deux c'est Qt... :p Je suis déjà dehors.
Édité le 18/06/2008 à 11:36:43 par Nanoc

Exercices de C++ pour tous les niveaux !
Mes tutos: Tri de Shell --- [C++] Gestion des exceptions --- [C++] Manipulateurs de flux
---
[C++] Notions avancées (suite du cours de M@teo21) (New)

Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça.

 
Hors ligne hilnius # Posté le 18/06/2008 à 11:34:56
Groupe : Membres
lol nanoc
la SQL c'est pour les fenetres et la STL c'est la biblio de C++ c'est ca ?

projets :
Secret (cliquez pour afficher)
QT : tables de multiplications (99%) (manque fond d'écran)
QT : Si-help (20%)
QT : Tetris (0%)
QT : programme de retouche d'images (0%)

problemes actuels :


http://www.siteduzero.com/forum-83-288 [...] -d-ecran.html
http://www.siteduzero.com/forum-83-288 [...] ariables.html
 
Hors ligne Nanoc # Posté le 18/06/2008 à 11:37:12
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Non, SQL c'est un système de gestion de bases de données.

Exercices de C++ pour tous les niveaux !
Mes tutos: Tri de Shell --- [C++] Gestion des exceptions --- [C++] Manipulateurs de flux
---
[C++] Notions avancées (suite du cours de M@teo21) (New)

Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça.

 
Hors ligne Hiura # Posté le 18/06/2008 à 11:37:49
Avatar
Groupe : Membres
Citation : hilnius
lla SQL c'est pour les fenetres et la STL c'est la biblio de C++ c'est ca ?

Lis les définitions de wikipédia. ça vaut mieux.
SQL
STL

@Nanoc : :lol: (ça fait du bien en se levant.)
 
Hors ligne hilnius # Posté le 18/06/2008 à 11:46:54
Groupe : Membres
ouahou j'ai réussi a rien comprendre ^^

projets :
Secret (cliquez pour afficher)
QT : tables de multiplications (99%) (manque fond d'écran)
QT : Si-help (20%)
QT : Tetris (0%)
QT : programme de retouche d'images (0%)

problemes actuels :


http://www.siteduzero.com/forum-83-288 [...] -d-ecran.html
http://www.siteduzero.com/forum-83-288 [...] ariables.html
 
Hors ligne nono212 # Posté le 18/06/2008 à 13:26:05
Euh..."a" ?
Avatar
Groupe : Membres
Moi je connais pas les vector et j'arrive à faire les exercices :o

Image utilisateur
 
Hors ligne hilnius # Posté le 18/06/2008 à 13:30:36
Groupe : Membres
bon j'ai lu les vectors je pense que je vais essayer de faire ton exo nanoc le niveau 1 (mais moi je fais surtout du QT et tres peu de console)

projets :
Secret (cliquez pour afficher)
QT : tables de multiplications (99%) (manque fond d'écran)
QT : Si-help (20%)
QT : Tetris (0%)
QT : programme de retouche d'images (0%)

problemes actuels :


http://www.siteduzero.com/forum-83-288 [...] -d-ecran.html
http://www.siteduzero.com/forum-83-288 [...] ariables.html
 
Hors ligne gymnopaul # Posté le 18/06/2008 à 13:31:20
Avatar
Groupe : Membres
Si on a le droit de surcharger l'opérateur =, alors je dois avoir la solution du niveau 1 ^^ .

EDIT : les vectors c'est très simple à comprendre, et c'est beaucoup plus facile que les tableaux en C ;) .
Édité le 18/06/2008 à 13:34:27 par gymnopaul

Mes connaissances :
Langages : C - C++ (mon préféré ^^ ) - HTML - PHP - MySQL
3D : Blender

Projet terminé : Pong
Projet en cours : 2D-3D-Games

 
Hors ligne InconnuConnu # Posté le 18/06/2008 à 17:00:52
Groupe : Membres
Citation : Nanoc
J'ai dit que tu pouvais ajouter tout ce que tu voulais.


Même dans le main et la surcharge de l'opérateur<< ??
Hors ligne Hiura # Posté le 18/06/2008 à 17:17:48
Avatar
Groupe : Membres
Pourquoi voudrais-tu modifier l'op << ?
 
Hors ligne Nanoc # Posté le 18/06/2008 à 17:36:04
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Non, non. Quand même !

Si tu modifies l'op << et le main, alors tu n'as plus besoin de surcharger l'opérateur virgule pour obtenir le texte affiché dans la console :)

Exercices de C++ pour tous les niveaux !
Mes tutos: Tri de Shell --- [C++] Gestion des exceptions --- [C++] Manipulateurs de flux
---
[C++] Notions avancées (suite du cours de M@teo21) (New)

Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça.

 
Hors ligne InconnuConnu # Posté le 18/06/2008 à 17:40:52
Groupe : Membres
Évidemment ça aurait été trop simple :p


Citation : Hiura
Pourquoi voudrais-tu modifier l'op << ?


En fait je me suis trompé, je pensais en avoir besoin mais non finalement on en a pas besoin.
Hors ligne Chlab_lak # Posté le 18/06/2008 à 17:49:55
Avatar
Groupe : Membres
Voilà mon code est envoyé (Opérateur virgule), tous niveaux faits.
Je l'ai trouvé très instructif et très intéressant, continue comme ça.
 
Hors ligne gymnopaul # Posté le 19/06/2008 à 21:19:00
Avatar
Groupe : Membres
J'ai 2 questions sur les exos Nanoc :

- Est-ce que tu as prévu un exercice où il faudra hériter une classe pour lui ajouter des fonctionnalités (comme pour l'opérateur virgule où on hérite la classe vector :) ) ?

- Est-ce qu'il y aura aussi un exo traitant directement des templates ? Parce que sur ce point je suis un peu perdu ^^ ...

Mes connaissances :
Langages : C - C++ (mon préféré ^^ ) - HTML - PHP - MySQL
3D : Blender

Projet terminé : Pong
Projet en cours : 2D-3D-Games

 
Hors ligne nono212 # Posté le 19/06/2008 à 21:20:31
Euh..."a" ?
Avatar
Groupe : Membres
Cet exo traite des templates non ?

Image utilisateur
 
Hors ligne Goten # Posté le 19/06/2008 à 21:23:55
Avatar
Groupe : Membres
euh ... non ;)
Hors ligne youyou # Posté le 19/06/2008 à 21:29:13
alea jecta es
Groupe : Membres
le niveau 3 si...
@+
Hors ligne gymnopaul # Posté le 19/06/2008 à 21:34:36
Avatar
Groupe : Membres
Citation : youyou
le niveau 3 si...
@+

Oui en effet mais je parlais d'un exo les traitant directement.

Mes connaissances :
Langages : C - C++ (mon préféré ^^ ) - HTML - PHP - MySQL
3D : Blender

Projet terminé : Pong
Projet en cours : 2D-3D-Games

 
Hors ligne Goten # Posté le 19/06/2008 à 21:34:49
Avatar
Groupe : Membres
Autant pour moi je pensais qu'il parler de l'exo 1.
Hors ligne Nanoc # Posté le 19/06/2008 à 21:43:23
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Oui il y aura d'autres exercices de ce type. Pas tout de suite, je préfère altérener les genres.

Pour les templates, tu en as déjà 2 (BigInt et l'opérateur virgule). Je ne vois pas ce que tu entends par des exercices "spécifiques templates". Premièrement, c'est un aspect difficile et donc faire que des templates veut dire que les débutants ne peuvent pas faire. Et de plus les templates servent très souvent à généraliser des algorithmes (ou conteneurs) que l'on peut commencer par écrire pour un type spécifique.

Exercices de C++ pour tous les niveaux !
Mes tutos: Tri de Shell --- [C++] Gestion des exceptions --- [C++] Manipulateurs de flux
---
[C++] Notions avancées (suite du cours de M@teo21) (New)

Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça.

 

Retour au forum "Langage C++" ou à la liste des forums

Vous devez être inscrit pour pouvoir poster des messages

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news | XHTML 1.0 | CSS 2.0
Édité par Simple IT SARL : Nous contacter | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 93 Zéros connectés | Requêtes SQL 6 requêtes | Temps de génération de la page : Total (SQL) 0.0514s (0.0364s)