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

Signaler
Messages postés
246
Date d'inscription
dimanche 2 juin 2002
Statut
Membre
Dernière intervention
11 septembre 2016
-
Messages postés
86
Date d'inscription
dimanche 8 janvier 2006
Statut
Membre
Dernière intervention
5 décembre 2010
-
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

Messages postés
86
Date d'inscription
dimanche 8 janvier 2006
Statut
Membre
Dernière intervention
5 décembre 2010

Sympa! lol :-)
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
Voila qui allait sans dire mais aussi bien en le disant.

BruNews, Admin CS, MVP Visual C++
Messages postés
215
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
25 septembre 2010

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

:)
Messages postés
1100
Date d'inscription
jeudi 24 avril 2003
Statut
Membre
Dernière intervention
17 octobre 2012
7
On est pas sur cppfrance ?
Si, rassurez-moi donc disons que le C++ doit être privilégié !!!
Messages postés
215
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
25 septembre 2010

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.
Messages postés
37
Date d'inscription
jeudi 15 janvier 2004
Statut
Membre
Dernière intervention
22 octobre 2004

Je suis en train de l'améliorer et je voudrais savoir comment on fait pour convertir un caractère en valeur hexadecimal ?
Messages postés
215
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
25 septembre 2010

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.
Messages postés
341
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
17 juin 2008
2
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;
}
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
djil > merci pour la precision.

BruNews, Admin CS, MVP Visual C++
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
aucune importance, en c ou c++
mais c'est plus du c, alors autant oublier iostream.h et utiliser printf/scanf
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
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++
Messages postés
246
Date d'inscription
dimanche 2 juin 2002
Statut
Membre
Dernière intervention
11 septembre 2016
1
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
Messages postés
341
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
17 juin 2008
2
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 .
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008

on va pas se taper dessus, mais je comprends tjs pas l'objet de ta remarque ^^
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
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é
Messages postés
14
Date d'inscription
lundi 5 avril 2004
Statut
Membre
Dernière intervention
16 juin 2004

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!
Messages postés
341
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
17 juin 2008
2
Salut,
je voulais juste te dire qu'il existe la version 4.9.8.7 de Dev-Cpp alors tu peut mettre à jour .
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008

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? ^^
Messages postés
3011
Date d'inscription
jeudi 26 septembre 2002
Statut
Membre
Dernière intervention
27 novembre 2004
8
a part cin,cout c'est du c, pas du c++
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
29
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++
Messages postés
114
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
28 juin 2004

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.
Messages postés
246
Date d'inscription
dimanche 2 juin 2002
Statut
Membre
Dernière intervention
11 septembre 2016
1
Ben moi je trouve qu'il est sympas... :)
++ Glipper