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  ...  8  9  10  11  12  13  14  ...  26  27  28  29  Suivante
Auteur Message
1 visiteur sur ce sujet (1 anonyme)
Page : Précédente  1  2  3  ...  8  9  10  11  12  13  14  ...  26  27  28  29  Suivante
Hors ligne Isra17 # Posté le 02/06/2008 à 13:55:44
ouin
Avatar
Groupe : Membres
Reprise du dernier message de la page précédente :
mais c'est quoi le prob?

Hero War c'est pour bientôt? Ouais!!
 
Hors ligne Nanoc # Posté le 02/06/2008 à 14:54:11
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
@Genius:
Ok, mais tu perds tout l'avantage de la compression puisque les chaînes composées de 1 caractère se retrouvent alors sous la forme de 2 caractères.
De plus tu as un problème qui survient quand tu codes la séquence "111111111111111111".

De toute façon, là n'est pas la question. Si tu veux participer, alors uilises un flag.

@Zero ptt:
9@a aa (sans espace)

@aerotec:
Toute la difficulté est là. Relis le tuto de M@teo21 et sinon, regarde dans la doc de string. Si tu trouves vraiment pas, je t'invite à créer un autre sujet sur le forum.
 
Hors ligne zero ptt # Posté le 02/06/2008 à 15:10:09
Avatar
Groupe : Bannis
et si on a par exemple dans le fichier a compresser @@@@@@@@@@@@@@@@@@@@@@@@@@@
on fait 9@@@ oubien @@ @@ @@ @@...@@ ?autre question, admettons que 'x' est le frag, la syntaxe special devient @x oubien xx ?
Édité le 02/06/2008 à 15:11:25 par zero ptt

mon tout nouveau siteweb: Creations

regroupe tous mes programmes de A à Z :soleil: (piur me soutenir, un clic sur la pub suffit)
attention, google arrive :lol:
 
Hors ligne Nanoc # Posté le 02/06/2008 à 15:39:38
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Je te laisse réfléchir seul à ta question. J'ai donné tous les éléments nécessaires.
 
Hors ligne Genius # Posté le 02/06/2008 à 17:37:01
Mais que se passe-t-on ?
Avatar
Groupe : Membres
@Nanoc :

"Ok, mais tu perds tout l'avantage de la compression puisque les chaînes composées de 1 caractère se retrouvent alors sous la forme de 2 caractères."

Oui, je suis d'accord, mais si les nombres sont par groupes de trois ou plus, tu gagnes un caractère sur chaque groupe.

"De plus tu as un problème qui survient quand tu codes la séquence "111111111111111111"."

9191 ?

"De toute façon, là n'est pas la question. Si tu veux participer, alors uilises un flag."

Si tu y tiens vraiment, d'accord ; mais ne vaut-il pas mieux réfléchir avant de se lancer ?
Si on n'avait pas réfléchi, on aurait codé avec @0 et on aurait des problèmes...
On voir alors que certains proposent @@, on code, mais il y a toujours des problèmes...
Donc on aurait codé pour rien, étant donné que le fichier décompressé ne serait pas le même que le compressé...
Donc réflechir ne peut pas faire de mal avant de commencer, d'autant plus que l'on est le 2 juin et qu'il reste bien assez de temps pour coder :)

Autre chose => Je pense avoir trouvé un moyen pour éviter de transformer 123 en 111213 tout en n'utilisant pas de flag ; je continue d'y réflechir :)

Un joueur d'échecs c'est comme de la peinture, s'il n'est pas brillant il est mat...
In a world without walls and fences, who needs Windows and Gates ?
(\_/) Copiez/collez lapin dans votre signature,
(='.'=) et aidez le à concrétiser sa domination du monde !
(")_(")
 
Hors ligne Zopieux # Posté le 02/06/2008 à 17:52:01
it… it can't be true!
Avatar
Validateurs
Je vais essayer de coder un algorithme pas trop sale en python. En attendant, voilà un petit outil pour générer aléatoirement et de manière rapide des fichiers à compresser : utile pour tester votre code et comparer l'efficacité.

Bonne chance à tous.


EDIT : Jaloyan1, en l'occurence mon outil sert à ça... :p
Édité le 02/06/2008 à 17:59:22 par Zopieux
 
Hors ligne Jaloyan1 # Posté le 02/06/2008 à 17:58:21
Choisir = se priver du reste.
Avatar
Groupe : Membres
je vais essayer d'élaborer un fichier texte pour le tester car on va voir si ca marche vraiment l'algorithme de compression

Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir.
Image utilisateur
Image utilisateur
Image utilisateur

Chef du fan club de jaloyan1
 
Hors ligne zero ptt # Posté le 02/06/2008 à 18:14:21
Avatar
Groupe : Bannis
fini la compression.
commence le decompression

mon tout nouveau siteweb: Creations

regroupe tous mes programmes de A à Z :soleil: (piur me soutenir, un clic sur la pub suffit)
attention, google arrive :lol:
 
Hors ligne Jaloyan1 # Posté le 02/06/2008 à 18:25:28
Choisir = se priver du reste.
Avatar
Groupe : Membres
je viens d'ouvrir quelques images et a ma grande surprise, ca sert a rien l'algo de compression sur des images du type photo ou complexes.
Ca peut au maximum servir a cela.

http://www.clipart-fr.com/data/clipart [...] saire_039.gif

Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir.
Image utilisateur
Image utilisateur
Image utilisateur

Chef du fan club de jaloyan1
 
Hors ligne Zopieux # Posté le 02/06/2008 à 18:29:10
it… it can't be true!
Avatar
Validateurs
J'ai l'impression que vous n'avez pas très compris le fait que l'exercice soit avant tout de vous entraîner même si les applications peuvent parraître moindres. Donc on s'en contre-fiche que ce soit pas efficace sur vos images, choisissez plutôt des textes répétitifs comme celui du générateur.
 
Hors ligne Kurlze # Posté le 02/06/2008 à 18:34:53
L.O.S.T
Avatar
Groupe : Membres
Citation : Genius
Kurzle => S'il n'y a qu'un ou deux @, il y a un problème...


Non, aucun problème pour moi. Si j'ai ça à compresser : @ ou @@, et bien... je ne le compresse pas (cf. énoncé, il y a moins de 3 occurrences de @, donc on compresse pas). Donc aucun soucis Compresser -> Décompresser & Décompresser -> Compresser car ça reste @ ou @@. En tout cas, ça à l'air de fonctionner chez moi... Nanoc ?
Édité le 02/06/2008 à 18:35:38 par Kurlze

You cannot change your fate. No man can.
 
Hors ligne iNaKoll # Posté le 02/06/2008 à 18:35:29
Grosso merdo
Avatar
Groupe : Membres
Citation : Jaloyan1
je viens d'ouvrir quelques images et a ma grande surprise, ca sert a rien l'algo de compression sur des images du type photo


La plupart des formats d'images (jpg, png,..) sont déjà compressés. Si tu veux, tu peux regarder un fichier .bmp (format non compressé) tu verra qu'il y a une certaine périodicité dans les octets qui sont proches les uns des autres. Un algorithme de type RLE peut donc être relativement efficace sur ce type de fichier.

"La constante de couplage est fonction d'une certaine valeur constante que prend le champ scalaire des dilatations dans le vide quantique."
 
Hors ligne Jaloyan1 # Posté le 02/06/2008 à 18:46:31
Choisir = se priver du reste.
Avatar
Groupe : Membres
ah ouai sur bmp ca peut etre pratique mais quand ca se suit, ca se suit pour assez longtemps.
Donc la solution du 9 caracteres repetitifs ne serait pas convenable. Il faudrait etendre a des paquets de 255.


Si quelqu'un vous dit : "Je me tue à vous le répéter", laissez-le mourir.
Image utilisateur
Image utilisateur
Image utilisateur

Chef du fan club de jaloyan1
 
Hors ligne Nanoc # Posté le 02/06/2008 à 19:17:51
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Citation : Genius
"De plus tu as un problème qui survient quand tu codes la séquence "111111111111111111"."

9191 ?



Ok, je pensais que tu allais coder cela comme 181. Ce qui aurait posé problème.

Citation : Genius
Si tu y tiens vraiment, d'accord ; mais ne vaut-il pas mieux réfléchir avant de se lancer ?


Ce que je veux dire. C'est qu'il faut définir un cadre commun. Sinon j'aurais pu mettre une donnée du genre :

"Codez un algorithme de compression de données"

et c'est tout. C'est beaucoup trop large et largement trop compliqué pour un débutant. Je le répète encore une fois: Ces exercices sont pour débutants. Pour quelqu'un d'avancé, j'aurais plutôt proposé de coder l'algorithme utilisé dans les archives zip. C'est efficace et utilisable.

Citation : Genius
Si on n'avait pas réfléchi, on aurait codé avec @0 et on aurait des problèmes...
On voir alors que certains proposent @@, on code, mais il y a toujours des problèmes...


Oui, il y aura toujours des problèmes. Et c'est pas parce que je propose des exercices, que je ne fais pas d'erreurs. Je suis même content quand quelqu'un d'apparemment non-débutant comme toi, les corrige afin d'aider les vrais zéros.

Citation : Genius

Donc réflechir ne peut pas faire de mal avant de commencer, d'autant plus que l'on est le 2 juin et qu'il reste bien assez de temps pour coder :)


Tout à fait. Je discute encore volontiers pendant un mois avec vous tous sur ce sujet.

@Zopieux:
Merci bien ! Excellente initiative !
(Exercice suppléemntaire de C++ : Refaire le programme de Zopieux :) )

@Jaloyan1:
Bien sûr que ça marche. Et merci d'arrêter de contre-dire bêtement chaque chose que je dis.

Citation : Zopieux
J'ai l'impression que vous n'avez pas très compris le fait que l'exercice soit avant tout de vous entraîner même si les applications peuvent parraître moindres. Donc on s'en contre-fiche que ce soit pas efficace sur vos images, choisissez plutôt des textes répétitifs comme celui du générateur.


Tout à fait. Il est illusoire de penser qu'un débutant aussi motivé et intéressé soit-il puisse coder les algorithmes utilisés "industriellement". Mais les versions simplifiées sont là pour donner un aperçu et donner les intuitions nécessaires pour faire plus tard du "code de grande personne".

@Jaloyan1: S'il-te-plait. Arrête de poster 24h dans ce thread. Tu lis la donnée. Tu lis le lien wikipédia. Tu essayes dans ton coin et ensuite tu reviens. Merci.

 
Hors ligne Kurlze # Posté le 02/06/2008 à 19:37:28
L.O.S.T
Avatar
Groupe : Membres
J'ai toujours pas eu de réponse Nanoc : Quel est le problème avec @@@@ pour compresser ? J'arrive à le compresser en 4@@, et ceci se décompresse en @@@@.

Je n'ai pas compris où ça coince ?!

You cannot change your fate. No man can.
 
Hors ligne Lecureuil # Posté le 02/06/2008 à 20:02:37
Avatar
Groupe : Membres
EDIT : J'essayerais plus tard, je suis pas encore avancer dans mon livre de C++ ...
Édité le 02/06/2008 à 20:05:24 par Lecureuil
 
Hors ligne Nanoc # Posté le 02/06/2008 à 20:05:03
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
@Kurlze:
Aucun problème. La chaîne "@@@@" sera codée comme "4#@" si # est le flag et comme "@@@@@@@@" si @ est le flag.
 
Hors ligne Genius # Posté le 02/06/2008 à 20:11:59
Mais que se passe-t-on ?
Avatar
Groupe : Membres
Je suis à peu près arrivé à créer l'algo sans flag et sans 1, il marche bien sur un fichier de test, mais sur un bmp, il s'arrête à la première ligne >_<
Seulement cela ne semble pas provenir de l'algo, en effet si je fais un while (getline(flux, chaine)) (avec incrémentation à chaque tour, ça s'arrête à la première ligne...
Sur un autre fichier j'ai bien le nombre de lignes du fichier avec le même code...

@Nanoc : Pas débutant, c'est à voir ; peut être moins débutant que d'autres, mais bien plus débutant que toi par exemple :)

Un joueur d'échecs c'est comme de la peinture, s'il n'est pas brillant il est mat...
In a world without walls and fences, who needs Windows and Gates ?
(\_/) Copiez/collez lapin dans votre signature,
(='.'=) et aidez le à concrétiser sa domination du monde !
(")_(")
 
Hors ligne Cyprien_ # Posté le 02/06/2008 à 20:17:30
Le Monde d'Akhiris
Avatar
Groupe : Membres
Pour un fichier image, as-tu penser à l'ouvrir en mode binaire ?

Je ne pense pas qu'en mode texte, la lecture puisse se faire sans encombres :-° .

EDIT : pour ceux que ça intéresse, je me propose comme "trouveur de failles" : donnez-moi votre algo par MP, j'essaierai de trouver des chaînes qui le mettent en défaut :D .
Édité le 02/06/2008 à 20:19:13 par Cyprien_

Un jeu online novateur ?
Le Monde d'Akhiris !
 
Hors ligne Kurlze # Posté le 02/06/2008 à 20:17:54
L.O.S.T
Avatar
Groupe : Membres
Citation : Nanoc
@Kurlze:
Aucun problème. La chaîne "@@@@" sera codée comme "4#@" si # est le flag et comme "@@@@@@@@" si @ est le flag.


Si j'ai @@@@ avec @ comme flag, mon programme compresse en 4@@, donc aucun soucis, pourquoi @@@@@@@@ ?
Bon, on peut toujours utiliser un flag @ avec l'énoncé initial (Sans le double flag) ? Parce que je n'ai aucun problème avec mon programme (en utilisant le premier énoncé donné)
Édité le 02/06/2008 à 20:19:46 par Kurlze

You cannot change your fate. No man can.
 
Hors ligne Nanoc # Posté le 02/06/2008 à 20:28:18
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Parce que par définition, quand on rencontre le flag, on le compresse sous la forme spéciale @@ et pas selon le schéma habituel.
 
Hors ligne Kurlze # Posté le 02/06/2008 à 20:44:36
L.O.S.T
Avatar
Groupe : Membres
Okay, je vais donc suivre le nouvel énoncé : @ devient @@ même si on perd au lieu de gagner, et même si compresser le flag avec la méthode habituelle (@@@@ -> 4@@) me parait bonne (elle ne pose pas de problème au final).
Édité le 02/06/2008 à 20:46:00 par Kurlze

You cannot change your fate. No man can.
 
Hors ligne HunLyxxod # Posté le 02/06/2008 à 20:49:49
Groupe : Membres
Citation : Nanoc
Parce que par définition, quand on rencontre le flag, on le compresse sous la forme spéciale @@ et pas selon le schéma habituel.

Euh ... pourquoi? Je pensais que c'était une erreur dans l'énoncé où tu avais anticipé le point d'après, mais en fait non. Pourquoi ne pas s'autoriser à compresser le flag comme n'importe quel caractère? Pas en "4@@" bien sûr, vu qu'on ne saurait pas si la chaîne initiale est "4@" ou "@@@@" mais bien en "4@@@" comme les autres caractères. Je ne vois ce qui fait mériter une telle distinction de cas.
Hors ligne Nanoc # Posté le 02/06/2008 à 20:53:37
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Citation : HunLyxxod
Citation : Nanoc
Parce que par définition, quand on rencontre le flag, on le compresse sous la forme spéciale @@ et pas selon le schéma habituel.

Euh ... pourquoi?


Parce que. Il y a pas d'aures raisons. Les deux options sont possibles. Il fallait bien en choisir une. Il n'y a aucune raison à ce choix.
 
Hors ligne poulecaca # Posté le 03/06/2008 à 01:58:01
Avatar
Groupe : Membres
Nanoc : serait il pas "mieux" que le premier caractère du fichier a decompresser soit le flag et alors lors de la compression l'utilisateur n'a pas besoin de se rappeler du flag qu'il a entré ce qui peut eviter de malencontreuses erreures.
Mais bien sur un caractère de plus dans le fichier compressé le rend moins compressé.
Édité le 03/06/2008 à 02:03:47 par poulecaca
Hors ligne Nanoc # Posté le 03/06/2008 à 09:15:14
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
En théorie oui. Mais de cette manière, il y a une difficulté supplémentaire. Utiliser un argument du main comme paramètre du programme.
 
Hors ligne poulecaca # Posté le 03/06/2008 à 09:56:10
Avatar
Groupe : Membres
A bon ca pose un probleme d'utiliser un argument du main comme paramètre d'un programme ?
J'ai encore fait n'importe quoi alors parceque j'ai utilisé un argument du main comme paramètre d'une fonction sans faire attention.
Hors ligne Nanoc # Posté le 03/06/2008 à 10:13:04
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Citation : poulecaca
A bon ca pose un probleme d'utiliser un argument du main comme paramètre d'un programme ?


Pas spécialement. Ca donne juste à réfléchir.
 
Hors ligne poulecaca # Posté le 03/06/2008 à 11:10:38
Avatar
Groupe : Membres
Faut il avoir la possibilité d'entrer le chemin de sorti j'imagine que oui
Hors ligne Nanoc # Posté le 03/06/2008 à 11:16:29
Apprenez à utiliser la STL !!
Avatar
Groupe : Membres
Hors ligne zero ptt # Posté le 03/06/2008 à 13:10:45
Avatar
Groupe : Bannis
Citation : zero ptt
admettons que 'x' est le frag, la syntaxe special devient @x oubien xx ?

mon tout nouveau siteweb: Creations

regroupe tous mes programmes de A à Z :soleil: (piur me soutenir, un clic sur la pub suffit)
attention, google arrive :lol:
 

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
Édité par Simple IT SARL : Nous contacter | Notre blog | 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 123 Zéros connectés | Requêtes SQL 7 requêtes | Temps de génération de la page : Total (SQL) 0.0997s (0.0834s)