IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Turbo Pascal Discussion :

[TP] Affichage en exposant


Sujet :

Turbo Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 5
    Par défaut [TP] Affichage en exposant
    Salut a tous,
    je veux écrire un nombre en exposant et je ne sais comment faire.

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    8 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 8 055
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    Merci de préciser...
    - quel compilateur ?
    - quelle plateforme ?
    - mode texte ou graphique ?
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  3. #3
    Membre émérite Avatar de Tuxico
    Profil pro
    Étudiant
    Inscrit en
    Août 2003
    Messages
    662
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2003
    Messages : 662

  4. #4
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2006
    Messages : 5
    Par défaut + d'infos
    J'utilise le compilateur TP7 et je veux faire un affichage comme ceci:
    C : 1s2 2s2 2p6 3s2, avec les nombres (2,2,6,2) aprês les lettres en exposant.
    Le lien proposé par Tuxico ne m'a pas apporté de satisfaction mais merci quand même.

  5. #5
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    8 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 8 055
    Billets dans le blog
    2
    Par défaut
    En mode texte, les chiffres 2 et 3 en exposant existent déjà dans la table ASCII mais pas les autres. Donc, il faut les dessiner toi-même, ce qui n'est pas très difficile :

    1. L'affichage par défaut utilise généralement une matrice de caractères de 9 pixels de large sur 16 pixels de haut. Il faut créer, par caractère à redessiner, une matrice de bits. Par exemple, le 4 en exposant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    ....XX..
    ...X.X..
    ..X..X..
    .XXXXX..
    .....X..
    .....X..
    ........
    ........
    ........
    ........
    ........
    ........
    ........
    ........
    ........
    ........
    L'astuce est que 8 bits par ligne suffisent, le 9ème étant dessiné par le système par simple copie du 8ème. Donc, pour chaque caractère à redessiner, 16 octets suffisent.
    Pour les 7 caractères à redessiner, tu crées donc un tableau de 7 * 16 octets.

    2. Il faut ensuite décider quels caractères de la table ASCII tu vas remplacer par les tiens (choisis 7 caractères qui se suivent ).
    Il faut exécuter la sous-fonction 10h de la fonction 11h de l'interruption vidéo 10h avec comme paramètres :
    BH = nombre de lignes par caractère (16)
    BL = 0
    CX = nombre de caractères redessinés (7)
    DX = code ASCII du 1er caractère redessiné
    ES:BP = adresse de ton tableau

    En cas de besoin, tu disposes d'un exemple ici (un jeu d'échecs dont les caractères ASCII ont été redessinés pour représenter les pièces).
    Règles du forum
    Cours et tutoriels Pascal, Delphi, Lazarus et Assembleur
    Avant de poser une question, consultez les FAQ Pascal, Delphi, Lazarus et Assembleur
    Mes tutoriels et sources Pascal

    Le problème en ce bas monde est que les imbéciles sont sûrs d'eux et fiers comme des coqs de basse cour, alors que les gens intelligents sont emplis de doute. [Bertrand Russell]
    La tolérance atteindra un tel niveau que les personnes intelligentes seront interdites de toute réflexion afin de ne pas offenser les imbéciles. [Fiodor Mikhaïlovitch Dostoïevski]

  6. #6
    Membre émérite
    Inscrit en
    Juin 2005
    Messages
    644
    Détails du profil
    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2005
    Messages : 644
    Par défaut
    Ne pas oublier
    1- sauver la table de caractère
    2- effectuer les changements ci-dessus
    3-de restituer la table de ceractère en fin d'execution

    Remarque : ces redéfinissions sont en général à refaire si on change de mode graphique en cours d'execution

    si on redéfini plusieurs caractères, il est preferable ( + rapide ) de les avoir contigus si cela est possible

Discussions similaires

  1. [XSL-FO] Affichage de tolérances, avec des exposants sur deux lignes
    Par eliott31 dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 05/10/2012, 16h57
  2. [XL-2003] Affichage texte en exposants
    Par arcane dans le forum Excel
    Réponses: 1
    Dernier message: 21/07/2009, 19h06
  3. Pb affichage avec un PaintBox (pour eviter scintillement)
    Par juan64 dans le forum C++Builder
    Réponses: 7
    Dernier message: 08/04/2004, 09h21
  4. probléme d'affichage d'une fiche
    Par sb dans le forum Composants VCL
    Réponses: 7
    Dernier message: 29/08/2002, 09h43
  5. Affichage en passant par un buffer...
    Par Sirotilc dans le forum MFC
    Réponses: 5
    Dernier message: 27/05/2002, 21h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo