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

ASP.NET Discussion :

Affichage incorrect


Sujet :

ASP.NET

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 11
    Points : 7
    Points
    7
    Par défaut Affichage incorrect
    Salut à tous,
    j'ai enfin réussi à faire ma page asp... Mais il me reste un petit problème que je ne comprends pas très bien encore...
    Je mets mon code en bas de la page.
    Lorsque j’exécute mon programme ma page s'ouvre bien mais lorsque je mets mes données il est écrit : System.Double[,] en réponse et je ne sais pas pourquoi...

    merci de votre aide

    Voici mon code:

    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
     
    namespace WebApplication1
    {
        public partial class About : System.Web.UI.Page
        {
           protected void resultat_Click(object sender, EventArgs e)
            {
                var S = double.Parse(s.Text);
                var r = double.Parse(rate.Text);
                var K = double.Parse(k.Text);
                var N = int.Parse(n.Text);
                var Sigma = double.Parse(sigma.Text);
                var T = double.Parse(t.Text);
                string CallPut = callput.Text;
     
                double[,] Spot = new Double[N + 1, N + 1];
                double[,] Payoff = new Double[N + 1, N + 1];
                double[,] Prix = new Double[N + 1, N + 1];
                double[,] Delta = new Double[N + 1, N + 1];
     
     
     
                // Initialisation des variables
     
                double delta_t = (double)T / N;
                double u = 0.0;
                double d = 0.0;
                //double rn = 0.0;
                double p = 0.0;
     
                // Calcul de u et de d en fnct du modèle choisit (CRR, Tian, Jr)
     
                if (mode.Text == "CRR")
                {
                    u = Math.Exp(Sigma * Math.Sqrt(delta_t));
                    d = 1 / u;              // Math.Exp(-Sigma * Math.Sqrt(delta_t));
                    p = (Math.Exp(r * delta_t) - d) / (u - d);
                }
     
                // Calcul de p et q en fonction de u et d
     
                double q = 1 - p;
                double test;
     
                // Calcul du spot et payoffen fonction du call et du put
     
                if (callput.Text == "Call")
                {
                    test = 1;
                }
                else
                {
                    test = -1;
                }
     
                for (int j = 0; j <= N; j++)
                {
                    for (int i = 0; i <= j; i++)
                    {
                        Spot[i, j] = S * Math.Pow(u, i) * Math.Pow(d, j - i);
                        //Label1.Text = Spot.ToString();
                        Payoff[i, j] = Math.Max(test * (Spot[i, j] - K), 0);
                        //Label1.Text = Payoff.ToString();
                    }
                }
     
                //Initialisation de la derniere colonne du prix avec le payoff
     
                for (int j = 0; j <= N; j++)
                {
                    Prix[j, N] = Payoff[j, N];
                    //Label1.Text = Prix.ToString();
                }
     
                //Calcul du prix du delta   
     
                if (exercice.Text == "EU")
                {
                    for (int i = N - 1; i >= 0; i = i - 1)
                    {
                        for (int j = 0; j <= i; j++)
                        {
                            double actualisation = Math.Exp(-r * delta_t);
     
                            Prix[j, i] = actualisation * (p * Prix[j + 1, i + 1] + q * Prix[j, i + 1]);
                            Delta[j, i] = (Prix[j + 1, i + 1] - Prix[j, i + 1]) / (Spot[j + 1, i + 1] - Spot[j, i + 1]);
                           // Label1.Text = Prix.ToString();
                            Label1.Text = Delta.ToString();
                        }
     
                    }
                }
     
                else
                {
                    for (int i = N - 1; i >= 0; i = i - 1)
                    {
                        for (int j = 0; j <= i; j++)
                        {
                            double actualisation = Math.Exp(-r * delta_t);
     
                            Prix[j, i] = Math.Max(Payoff[j , i], actualisation * (p * Prix[j + 1, i + 1] + q * Prix[j, i + 1]));
                            Delta[j, i] = (Prix[j + 1, i + 1] - Prix[j, i + 1]) / (Spot[j + 1, i + 1] - Spot[j, i + 1]);
                            //Label1.Text = Prix.ToString();
                            Label1.Text = Delta.ToString();
                        }
                    }
                }
     
     
     
            }
        }
    }
    Nom : appli.jpg
Affichages : 84
Taille : 48,4 Ko

  2. #2
    Expert confirmé Avatar de ed73170
    Homme Profil pro
    Développeur indépendant
    Inscrit en
    Mai 2009
    Messages
    765
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur indépendant

    Informations forums :
    Inscription : Mai 2009
    Messages : 765
    Points : 5 522
    Points
    5 522
    Par défaut
    Bonjour,

    Ca vient de cette ligne : Label1.Text = Delta.ToString();

    Delta est un tableau et la méthode ToString sur un tableau retourne le type du tableau, pas son contenu.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Points : 1 056
    Points
    1 056
    Par défaut
    Pas mieux que ed73170 !

    Ci dessous juste un petit exemple qui illustre ton erreur en mode Console :
    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
                var ramdom = new Random();
                int x = 5;
                var tableau = new Double[x + 1, x + 1];
                for (int i = 0; i <= x; i++)
                {
                    for (int j = 0; j <= x; j++)
                    {
                        var num = ramdom.Next(2000) * 0.55;
                        tableau[i, j] = num;       
                    }
                }
     
                // Ici on fait un ToString() d'une valeur choisie dans le tableau :
                //--> i-> 5 j-> 5 : resultat 458.45
                Console.WriteLine("i->{0} j->{0} : resultat:{1}",x, tableau[x, x].ToString());
                //Ici on fait un ToString() d'un tableau
                //--> resultat System.Double[,]
                Console.WriteLine("resultat: {0}", tableau.ToString());

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Merci les gars pour votre réponse. J'ai donc mis en commentaire la ligne que vous m'avez dis : Label1.Text = Delta.ToString(); et dé-commenté la ligne du dessus, mais le résultat reste le même....

  5. #5
    Expert confirmé Avatar de ed73170
    Homme Profil pro
    Développeur indépendant
    Inscrit en
    Mai 2009
    Messages
    765
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur indépendant

    Informations forums :
    Inscription : Mai 2009
    Messages : 765
    Points : 5 522
    Points
    5 522
    Par défaut
    Si tu parles de cette ligne : Label1.Text = Prix.ToString(); le résultat sera forcément le même puisque Prix est aussi un tableau.

    Pour afficher toutes les valeurs de Prix au fur et à mesure de l'avancement du traitement :

    Label1.Text += Prix[j, i].ToString() + " ";

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    oui merci, ça marche super, merci à tous

Discussions similaires

  1. Affichage incorrect dans la boite de dialogue
    Par aliwatte dans le forum Windows
    Réponses: 7
    Dernier message: 12/02/2009, 09h43
  2. Affichage incorrect d'une table
    Par LuckyLuke56 dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/12/2008, 11h47
  3. Tri / Affichage incorrect sous Oracle 9i
    Par ManuDuc dans le forum Oracle
    Réponses: 8
    Dernier message: 23/01/2008, 16h11
  4. [MS-SQL]Affichage incorrect : System.Char[]
    Par the big ben 5 dans le forum Bases de données
    Réponses: 10
    Dernier message: 30/11/2005, 08h52
  5. Affichage incorrect avec une JScrollPane
    Par tck-lt dans le forum Agents de placement/Fenêtres
    Réponses: 23
    Dernier message: 04/08/2005, 11h07

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