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

Delphi Discussion :

petit souci de calcul


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut petit souci de calcul
    voila en fait j ai fais un petit logiciel

    http://www.developpez.net/forums/sho...d.php?t=261545

    mais j ai l impression que dans ce calcul

    il me fais des erreur
    car dans certain cas le resultat et juste
    et d autre pas du tout
    je pense que sa doit un quetion de 0 dans l entier qui dois etre a suprimer

    en fait je voudrais savoir comment faire si comme j avait expliquer dans l autre poste
    en faite voila le calcule de base donne sa comme resultat
    resultat du calcul = xxyy
    voila j ai paratger les xx et les yy en partis distinct
    pour pouvoir aditioner xx et yy

    et les resultat obtenu

    vv=xx+yy
    apres je transform vv en hexa

    mais je voudrais savoir comment poser un conditon exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    a1:=x[1];
    a2:=x[2];
    a3:=x[3];
    a4:=x[4];
    si a1=0
    faire directement sa

    ll=(a1)+(a2)+(a3)+(a4)


    et trasformer direct ll en hexa

    enfin j esper que je me suis fais comprendre car je suis pas douer

  2. #2
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    voial en faite le calcul suprim le 0 devant le resultat ce qui donc decal ma chaine sur la gauche

    donc je me retrouve donc avec xyy donc voila l erreur

    je voudrai savoir comment imposer un 0 dasn les resultat
    exemple 0xyy
    ce qui donnerais dans le calcul d apres 0x+yy ce qui change rien maius qui marangerais beaucoup
    car les if et for sont encor un myster pour moi

  3. #3
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 582
    Par défaut
    si j'ai tout bien compris, voilà ce que ca donne

    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
    17
    18
    19
    20
    21
     
    // dans ma form j'ai 2 Edit box et un bouton
    procedure TForm1.Button2Click(Sender: TObject);
    var
        xx:string;
        yy:string;
        zz:integer;
    begin
        // force une valeur a etre affiché sur 2 digits
        Edit3.Text:=FormatFloat('00',1);
        Edit3.Text:=Edit3.Text+FormatFloat('00',2);
        //Edit3.Text contient ici la chaine '0102'
        xx:=copy(Edit3.Text,1,2); //je ramasse '01'
        yy:=copy(Edit3.Text,3,2); //je ramasse '02'
        //Je convertis xx et yy en integer
        //pour effectuer l'addition et je met
        //la reponse dans zz
        zz:=StrToInt(xx)+StrToInt(yy);
        //j'affiche la reponse en Hexadecimal sur 2 digits (ici 03)
        Edit4.Text:=IntToHex(zz,2);
    end;
    j'ai documenté toute les étapes... à toi de faire F1 sur les fonctions
    que j'ai utilisées pour le reste...
    Comment dupliquer un disque...ça vous intéresse?
    Tutoriel et code source delphi ici

  4. #4
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    merci pour le morceau de code qui est pas mal mais sa marche pas
    le souci et la


    x:=inttostr(z);

    voila ma chaine et de ce type et seras toujour comme sa en faite
    de quatre caracter
    je voudrais savoir si je peut par exemple quand le resultat final n es t pas de q4 imposer un padding
    d un caracter devant la chaine

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2003
    Messages
    582
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2003
    Messages : 582
    Par défaut
    F1 sur FormatFloat
    ca dit rien?

    remplace IntToStr pour FormatFloat

    x:=FormatFloat('0000',z);
    Comment dupliquer un disque...ça vous intéresse?
    Tutoriel et code source delphi ici

  6. #6
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Par défaut
    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
    17
    18
    19
    20
    21
    22
    23
    x:=inttostr(z); //transformation de l entier en chaine
    a1:=x[1];
    a2:=x[2];
    a3:=x[3];
    a4:=x[4];
    // separation de difernt partis de la chaine
    if a4 = '' then;
    begin
    p:=(a1);
    p2:=(a2)+(a3);
    p3:=strtoint(p)+strtoint(p2);
    ll:=trunc(p3);
    yy:=IntToHex(Ord(ll), 2);
    edit2.text:=yy;
    end;
    if a4 <> '' then;
    begin
    p:=(a1)+(a2);
    p2:=(a3)+(a4);
    zz:=strtoint(p)+strtoint(p2);
    vv:= trunc(zz); // transformer un reel en entier
    xx:=IntToHex(Ord(vv), 2);
    edit2.text:=xx;

    voila j ai fais sa apres mettrre casser un peu la tete et la le souci
    cest que le soft choisi pas un des deux algo mais les fais les deux resultat quand j en inibe un j ai reusltat juste mais quand je les met les deux lol
    une prartis seulement de l ago et juste

    peut etre devrais je utiliser la fonction bol
    mais je sais pas

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Petit souci avec calcul
    Par Attila54 dans le forum VB.NET
    Réponses: 31
    Dernier message: 11/10/2011, 08h49
  2. [MySQL] Petit soucis de calcul (1+1=3)
    Par Seta-san dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 15/02/2008, 12h33
  3. Réponses: 6
    Dernier message: 21/01/2004, 13h25
  4. [DEBUTANT] petits soucis avec un prgm de chat
    Par LechucK dans le forum MFC
    Réponses: 8
    Dernier message: 19/01/2004, 16h52

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