AFFICHER LE CODE ASCII EN MODE CONSOLE (DEVC++ 4.1)

glipper Messages postés 246 Date d'inscription dimanche 2 juin 2002 Statut Membre Dernière intervention 11 septembre 2016 - 17 avril 2004 à 19:33
cs_lol55 Messages postés 86 Date d'inscription dimanche 8 janvier 2006 Statut Membre Dernière intervention 5 décembre 2010 - 27 août 2006 à 23:53
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/22025-afficher-le-code-ascii-en-mode-console-devc-4-1

cs_lol55 Messages postés 86 Date d'inscription dimanche 8 janvier 2006 Statut Membre Dernière intervention 5 décembre 2010
27 août 2006 à 23:53
Sympa! lol :-)
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
11 mai 2004 à 19:47
Voila qui allait sans dire mais aussi bien en le disant.

BruNews, Admin CS, MVP Visual C++
Utilisateur anonyme
11 mai 2004 à 19:42
Ouai, on es sur CPPFRANCE mais je crois pas que l'admin allait acheter un domaine pour cpp un pour c et un pour cpp .net
Alors si tu regarde le titre du site (barre de titre ou à gauche) tu liras:
C / C++ / C++ .net

:)
victorcoasne Messages postés 1101 Date d'inscription jeudi 24 avril 2003 Statut Membre Dernière intervention 23 juillet 2023 7
11 mai 2004 à 18:03
On est pas sur cppfrance ?
Si, rassurez-moi donc disons que le C++ doit être privilégié !!!
Utilisateur anonyme
19 avril 2004 à 18:33
Soit on crée l'algo, soit si l'on veux juste prendre au clavier un int (ou char, etc...) en représentation hexadécimal, ou bien alors afficher un nombre en représentation hexadécimal, y'a un truc qui fonctionne avec cout et cin dans la STL. Je me rappel plus trop, mais de mémoire, faut ecrire cout << hex << a << endl; ou bien cin >> hex >> a;
Je crois que ces choses sont définies dans iomanip (ou algorithm.h si tu utilises l'espace de noms standart) soit peut être dans iostream direct, mais ca m'étonnerais.
Si quelqu'un pouvait l'aider et donc moi aussi sur ce sujet, car ma mémoire ne dépasse pas les 1 ou 2 ko :-)

Sinon pour l'algo c'est pas difficile:
soit n le nombre à convertir et chaine la chaine de caractères résultante.
Dernier symbole de la chaine est n modulo 16 (enfin, l'équivalent en hexadécimal ie: E=14, etc...) (int mod = n%16)
ensuite, tu enleve ce modulo à n (n -= mod)
tu divises n par 16 (il est divisible par 16: n /= 16)
et tu répète. Donc, ton nombre se construit "à l'envers".

Pour aller dans l'autre sens, tu fais n= premier caractère
tant qu'il reste des caractères (de gauche à droite en partant du second) alors multiplier n par 16 et ajouter à n le nouveau symbole (son équivalent en décimal).

C'est pareil pour toutes les bases. Ca te suggère pas un petit programme sympa à faire ca ?
Entrer une base. Entrer un nombre (char*) dans cette base.
Entrer un base(de 2 à 36).
Votre nombre vaut XXX dans cette base.
cs_Mat06 Messages postés 37 Date d'inscription jeudi 15 janvier 2004 Statut Membre Dernière intervention 22 octobre 2004
19 avril 2004 à 13:09
Je suis en train de l'améliorer et je voudrais savoir comment on fait pour convertir un caractère en valeur hexadecimal ?
Utilisateur anonyme
19 avril 2004 à 11:34
ouai enfin qd on apprend le C c'est souvent dans la vision d'apprendre le C++ alors les profs ne nous apprennent pas printf et préfère les bibliothèques C++ (cin et cout).

Le petit morceaux de code de Kirua était (presque) parfait. Tu dois avoir lu pas mal de bouquins sur la norme.
Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 3
18 avril 2004 à 15:16
désolé pour avoir mis deux fois le commentaire .
Je pense que c'est mieux d'afficher un intervalle de lettres plutôt que une lettre sinon çà ne sert à rien :

typedef unsigned char byte;
using namespace std:
....
byte start,end;
cout<<"Veuillez entrer l'index du premier caractère à afficher"<<endl;
cin>>start;
cout<<"Veuillez entrer l'index du dernier caractère à afficher"<<endl;
cin>>end;
for(start=start;start!=end;start++){
cout<<"["<<(int)start<<"]=""<<(char)start<<""";
if(start%9!=0)
cout<<" ";
else
cout<<endl;
}
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 avril 2004 à 15:02
djil > merci pour la precision.

BruNews, Admin CS, MVP Visual C++
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
18 avril 2004 à 14:55
aucune importance, en c ou c++
mais c'est plus du c, alors autant oublier iostream.h et utiliser printf/scanf
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 avril 2004 à 14:44
djil > un peu comme Kirua, je ne vois pas bien ou tu veux en venir. Qu'une console(rie) soit en C ou C++, quelle importance ?

BruNews, Admin CS, MVP Visual C++
glipper Messages postés 246 Date d'inscription dimanche 2 juin 2002 Statut Membre Dernière intervention 11 septembre 2016 1
18 avril 2004 à 14:40
Bon voila... donc il reste plus qu'à modifier cette source, pour que quand on lui rentre un numero, elle retourne la lettre correspondante, ou sinon elle affiche la liste des lettres associée a leur numero... :)

Glipper
Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 3
18 avril 2004 à 14:38
Salut,
perso, j'en ai fait un qui demande le caractère de début, celui de fin et il affiche tous ceux entre : c'est bien plus pratique . Je l'ai fait en c, pas besoin d'utiliser le c++ pour un simple prog comme celui ci .
De plus, l'intérêt de la table ascii, c'est aussi de savoir à quel numéro et associé quel caractère surtout pour les caarctères spéciaux .
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
18 avril 2004 à 14:35
on va pas se taper dessus, mais je comprends tjs pas l'objet de ta remarque ^^
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
18 avril 2004 à 11:02
Kirua ==> a part cin,cout et iostream.h(pas standard) et les commentaires "//" son programme ressemble plus a du c qu'a du c++ standard
avec des truc comme void slow(void)

sinon Stroustrup disait bien a l'epoque du c ansi qu'il s'agissait aussi de programme c++, mais c'etait a l'epoque ou le c++ n'etait pas normalisé
mast0209 Messages postés 14 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 16 juin 2004
18 avril 2004 à 10:26
Merci, mat06, ces petites sources qui sont trés simple permettent aux débutants de progrésser. Alorsd merci de ton aide, ça vaut bien un joli 7/10!
Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 3
18 avril 2004 à 08:49
Salut,
je voulais juste te dire qu'il existe la version 4.9.8.7 de Dev-Cpp alors tu peut mettre à jour .
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
18 avril 2004 à 01:56
Et puis surtout c'est faux ^^ C'est contrariant, mais le codage des caractères ne correspond pas au standard ASCII au delà des 128 premiers caractères (le jeu de caractères initial). La suite n'a pas été standardisée de manière unanime (qu'on me pende si je dis une bêtise).

Bon, pour reprendre, parce que là c'est pas compilable et puis c'est long:

#include
int main()
{
for (int i=0; i < 256; i++)
std::cout << (char)i << " " << i << std::endl;
return 0; //facultatif
}

une ligne de plus qu'un hello world ^^ rien de passionnant en effet, et c'est tjs faux.

djl, comprends pas ta remarque, si tu enlèves toutes les librairies C++ et que tu les remplaces par des librairies C, dans la mesure où il n'a utilisé que des structures de langage déjà existantes en C, évidemment que ça peut en être, mais il a utilisé la librairie standard C++, donc c'est du C++. c'est indiscutable non? ^^
cs_djl Messages postés 3011 Date d'inscription jeudi 26 septembre 2002 Statut Membre Dernière intervention 27 novembre 2004 7
17 avril 2004 à 21:45
a part cin,cout c'est du c, pas du c++
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 avril 2004 à 20:23
Salut,

faudrait quand meme qu'une source ait un quelconque interet, expliciter un point precis de prog.
Ici du 'cout' en boucle, quel interet ?

Pose nous un qqchose de mieux la prochaine fois, y a pas le feu.

BruNews, Admin CS, MVP Visual C++
petitchech Messages postés 114 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 28 juin 2004
17 avril 2004 à 19:36
salut

a lui de passer par la variable i incremente directement string


utilise plutot le forum pour sa car la source n'a pas trop d'interet.
glipper Messages postés 246 Date d'inscription dimanche 2 juin 2002 Statut Membre Dernière intervention 11 septembre 2016 1
17 avril 2004 à 19:33
Ben moi je trouve qu'il est sympas... :)
++ Glipper
Rejoignez-nous