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

C Discussion :

programme maths en c


Sujet :

C

  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut programme maths en c
    Bonjour a tous!

    Voila je cherche a realiser une petite fonction qui realisé un dessin sous libx unix
    l'equation est donné par la formule suivante :
    r = cos(7*teta/2)
    reste a calculer chaque x et y correspondant
    voici mon code:
    *

    il semblerai aprés reflexion que mes calculs sont faux...

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Par défaut
    Bonjour,

    Déjà ici, tu utilises une variable "teta" non initialisée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      teta_rad = teta * 3.14 / 180;
    Puis, dans ta boucle, tu utilises "teta_rad" sans le recalculer en fonction de "teta"

    Ah oui, et ton main ne renvoie rien si tout s'est bien passé.

    J'arrête là.

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut
    Citation Envoyé par thewho
    Bonjour,

    Déjà ici, tu utilises une variable "teta" non initialisée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      teta_rad = teta * 3.14 / 180;
    Puis, dans ta boucle, tu utilises "teta_rad" sans le recalculer en fonction de "teta"

    Ah oui, et ton main ne renvoie rien si tout s'est bien passé.

    J'arrête là.
    corection faite probleme inchangé, tu voit un probleme au niveau des calculs??

  4. #4
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut
    oui tout a fait d'ou le calcul de teta_radian...?

  5. #5
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par aimad41
    oui tout a fait d'ou le calcul de teta_radian...?
    Oui, OK...

    Les valeurs affichées sont fausses. Avec printf(), pour float et double, c'est "%f" et non "%d"...

    float n'est pas le bon type pour faire des calculs. Utilise double.

    C'est pas "review" (qui signifie "faire la critique" : to review a book)), mais "check" (vérifier). Plutôt que ce message abscons, il vaudrait mieux afficher le mode d'emploi, parce que là, je ne sais pas corriger mon erreur sur la ligne de commande.

  6. #6
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut
    trés bien je test avec les double, merci de ton aide , niveau calcul tu pense que c'est correct??

  7. #7
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par aimad41
    trés bien je test avec les double, merci de ton aide , niveau calcul tu pense que c'est correct??
    Aucune idée. Les maths, c'est un métier à part, et ce n'est pas le mien.

    Si tu me donnes les formules, je peux te dire si elles sont correctement implémentées. Si la formule est fausse, je ne peux rien y faire.
    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
     
    #include <stdio.h>
    #include <math.h> /* M_PI est POSIX.1 donc tres portable... */
     
    void cercle (void)
    {
       double teta;
       for (teta = 0; teta <= 360; teta += 0.1)
       {
          double teta_rad = teta * M_PI / 180;
          double r = cos (7 * teta_rad / 2);
          double x = r * cos (teta_rad) + 250;
          double y = r * sin (teta_rad) + 250;
          printf ("valeur de x == %f y == %f et r == %f\n", x, y, r);
       }
    }
     
    int main (void)
    {
       cercle ();
       return 0;
    }
    Voici les valeurs. Je trouve que ça ne varie pas beaucoup...
    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
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
    282
    283
    284
    285
    286
    287
    288
    289
    290
    291
    292
    293
    294
    295
    296
    297
    298
    299
    300
    valeur de x == 250.209405 y == 249.880557 et r == 0.241075
    valeur de x == 250.204455 y == 249.883853 et r == 0.235142
    valeur de x == 250.199486 y == 249.887136 et r == 0.229200
    valeur de x == 250.194499 y == 249.890406 et r == 0.223250
    valeur de x == 250.189493 y == 249.893661 et r == 0.217292
    valeur de x == 250.184470 y == 249.896903 et r == 0.211325
    valeur de x == 250.179429 y == 249.900131 et r == 0.205350
    valeur de x == 250.174371 y == 249.903345 et r == 0.199368
    valeur de x == 250.169296 y == 249.906544 et r == 0.193378
    valeur de x == 250.164203 y == 249.909728 et r == 0.187381
    valeur de x == 250.159094 y == 249.912898 et r == 0.181377
    valeur de x == 250.153969 y == 249.916053 et r == 0.175367
    valeur de x == 250.148827 y == 249.919193 et r == 0.169350
    valeur de x == 250.143669 y == 249.922318 et r == 0.163326
    valeur de x == 250.138496 y == 249.925428 et r == 0.157296
    valeur de x == 250.133307 y == 249.928522 et r == 0.151261
    valeur de x == 250.128102 y == 249.931600 et r == 0.145220
    valeur de x == 250.122883 y == 249.934662 et r == 0.139173
    valeur de x == 250.117648 y == 249.937709 et r == 0.133121
    valeur de x == 250.112399 y == 249.940739 et r == 0.127065
    valeur de x == 250.107135 y == 249.943753 et r == 0.121003
    valeur de x == 250.101858 y == 249.946750 et r == 0.114937
    valeur de x == 250.096566 y == 249.949731 et r == 0.108867
    valeur de x == 250.091261 y == 249.952695 et r == 0.102793
    valeur de x == 250.085942 y == 249.955642 et r == 0.096714
    valeur de x == 250.080610 y == 249.958572 et r == 0.090633
    valeur de x == 250.075265 y == 249.961485 et r == 0.084547
    valeur de x == 250.069908 y == 249.964380 et r == 0.078459
    valeur de x == 250.064537 y == 249.967258 et r == 0.072368
    valeur de x == 250.059155 y == 249.970119 et r == 0.066274
    valeur de x == 250.053761 y == 249.972961 et r == 0.060177
    valeur de x == 250.048355 y == 249.975786 et r == 0.054079
    valeur de x == 250.042937 y == 249.978592 et r == 0.047978
    valeur de x == 250.037509 y == 249.981381 et r == 0.041876
    valeur de x == 250.032069 y == 249.984151 et r == 0.035772
    valeur de x == 250.026618 y == 249.986902 et r == 0.029666
    valeur de x == 250.021157 y == 249.989635 et r == 0.023560
    valeur de x == 250.015686 y == 249.992349 et r == 0.017452
    valeur de x == 250.010205 y == 249.995045 et r == 0.011344
    valeur de x == 250.004714 y == 249.997721 et r == 0.005236
    valeur de x == 249.999214 y == 250.000378 et r == -0.000873
    valeur de x == 249.993704 y == 250.003017 et r == -0.006981
    valeur de x == 249.988186 y == 250.005635 et r == -0.013090
    valeur de x == 249.982658 y == 250.008234 et r == -0.019197
    valeur de x == 249.977123 y == 250.010814 et r == -0.025305
    valeur de x == 249.971579 y == 250.013374 et r == -0.031411
    valeur de x == 249.966027 y == 250.015914 et r == -0.037516
    valeur de x == 249.960467 y == 250.018434 et r == -0.043619
    valeur de x == 249.954901 y == 250.020934 et r == -0.049721
    valeur de x == 249.949326 y == 250.023414 et r == -0.055822
    valeur de x == 249.943746 y == 250.025874 et r == -0.061920
    valeur de x == 249.938158 y == 250.028313 et r == -0.068015
    valeur de x == 249.932564 y == 250.030732 et r == -0.074108
    valeur de x == 249.926964 y == 250.033131 et r == -0.080199
    valeur de x == 249.921358 y == 250.035508 et r == -0.086286
    valeur de x == 249.915747 y == 250.037865 et r == -0.092371
    valeur de x == 249.910130 y == 250.040201 et r == -0.098451
    valeur de x == 249.904508 y == 250.042516 et r == -0.104528
    valeur de x == 249.898882 y == 250.044809 et r == -0.110602
    valeur de x == 249.893251 y == 250.047082 et r == -0.116671
    valeur de x == 249.887616 y == 250.049333 et r == -0.122735
    valeur de x == 249.881977 y == 250.051563 et r == -0.128796
    valeur de x == 249.876334 y == 250.053772 et r == -0.134851
    valeur de x == 249.870687 y == 250.055959 et r == -0.140901
    valeur de x == 249.865038 y == 250.058124 et r == -0.146946
    valeur de x == 249.859385 y == 250.060268 et r == -0.152986
    valeur de x == 249.853730 y == 250.062389 et r == -0.159020
    valeur de x == 249.848073 y == 250.064489 et r == -0.165048
    valeur de x == 249.842413 y == 250.066567 et r == -0.171069
    valeur de x == 249.836752 y == 250.068623 et r == -0.177085
    valeur de x == 249.831089 y == 250.070657 et r == -0.183094
    valeur de x == 249.825425 y == 250.072668 et r == -0.189095
    valeur de x == 249.819760 y == 250.074658 et r == -0.195090
    valeur de x == 249.814094 y == 250.076625 et r == -0.201078
    valeur de x == 249.808428 y == 250.078569 et r == -0.207058
    valeur de x == 249.802761 y == 250.080492 et r == -0.213030
    valeur de x == 249.797095 y == 250.082391 et r == -0.218995
    valeur de x == 249.791429 y == 250.084268 et r == -0.224951
    valeur de x == 249.785764 y == 250.086122 et r == -0.230899
    valeur de x == 249.780099 y == 250.087954 et r == -0.236838
    valeur de x == 249.774436 y == 250.089763 et r == -0.242769
    valeur de x == 249.768774 y == 250.091549 et r == -0.248690
    valeur de x == 249.763114 y == 250.093312 et r == -0.254602
    valeur de x == 249.757456 y == 250.095052 et r == -0.260505
    valeur de x == 249.751800 y == 250.096769 et r == -0.266397
    valeur de x == 249.746147 y == 250.098463 et r == -0.272280
    valeur de x == 249.740496 y == 250.100134 et r == -0.278153
    valeur de x == 249.734849 y == 250.101782 et r == -0.284015
    valeur de x == 249.729205 y == 250.103407 et r == -0.289867
    valeur de x == 249.723565 y == 250.105008 et r == -0.295708
    valeur de x == 249.717928 y == 250.106586 et r == -0.301538
    valeur de x == 249.712296 y == 250.108141 et r == -0.307357
    valeur de x == 249.706668 y == 250.109672 et r == -0.313164
    valeur de x == 249.701045 y == 250.111180 et r == -0.318959
    valeur de x == 249.695427 y == 250.112665 et r == -0.324743
    valeur de x == 249.689815 y == 250.114126 et r == -0.330514
    valeur de x == 249.684207 y == 250.115564 et r == -0.336274
    valeur de x == 249.678606 y == 250.116978 et r == -0.342020
    valeur de x == 249.673011 y == 250.118368 et r == -0.347754
    valeur de x == 249.667422 y == 250.119735 et r == -0.353475
    valeur de x == 249.661840 y == 250.121079 et r == -0.359183
    valeur de x == 249.656265 y == 250.122398 et r == -0.364877
    valeur de x == 249.650697 y == 250.123695 et r == -0.370557
    valeur de x == 249.645137 y == 250.124967 et r == -0.376224
    valeur de x == 249.639584 y == 250.126216 et r == -0.381877
    valeur de x == 249.634039 y == 250.127441 et r == -0.387516
    valeur de x == 249.628503 y == 250.128642 et r == -0.393140
    valeur de x == 249.622975 y == 250.129820 et r == -0.398749
    valeur de x == 249.617456 y == 250.130974 et r == -0.404344
    valeur de x == 249.611947 y == 250.132104 et r == -0.409923
    valeur de x == 249.606446 y == 250.133211 et r == -0.415487
    valeur de x == 249.600956 y == 250.134293 et r == -0.421036
    valeur de x == 249.595475 y == 250.135352 et r == -0.426569
    valeur de x == 249.590004 y == 250.136387 et r == -0.432086
    valeur de x == 249.584544 y == 250.137399 et r == -0.437587
    valeur de x == 249.579095 y == 250.138387 et r == -0.443071
    valeur de x == 249.573656 y == 250.139351 et r == -0.448539
    valeur de x == 249.568229 y == 250.140291 et r == -0.453990
    valeur de x == 249.562814 y == 250.141207 et r == -0.459425
    valeur de x == 249.557410 y == 250.142100 et r == -0.464842
    valeur de x == 249.552019 y == 250.142969 et r == -0.470242
    valeur de x == 249.546639 y == 250.143814 et r == -0.475624
    valeur de x == 249.541273 y == 250.144636 et r == -0.480989
    valeur de x == 249.535919 y == 250.145434 et r == -0.486335
    valeur de x == 249.530579 y == 250.146208 et r == -0.491664
    valeur de x == 249.525252 y == 250.146959 et r == -0.496974
    valeur de x == 249.519938 y == 250.147686 et r == -0.502266
    valeur de x == 249.514639 y == 250.148390 et r == -0.507538
    valeur de x == 249.509353 y == 250.149070 et r == -0.512792
    valeur de x == 249.504083 y == 250.149726 et r == -0.518027
    valeur de x == 249.498827 y == 250.150359 et r == -0.523242
    valeur de x == 249.493586 y == 250.150969 et r == -0.528438
    valeur de x == 249.488360 y == 250.151555 et r == -0.533615
    valeur de x == 249.483150 y == 250.152117 et r == -0.538771
    valeur de x == 249.477955 y == 250.152657 et r == -0.543907
    valeur de x == 249.472777 y == 250.153172 et r == -0.549023
    valeur de x == 249.467615 y == 250.153665 et r == -0.554118
    valeur de x == 249.462469 y == 250.154134 et r == -0.559193
    valeur de x == 249.457341 y == 250.154581 et r == -0.564247
    valeur de x == 249.452229 y == 250.155004 et r == -0.569280
    valeur de x == 249.447135 y == 250.155403 et r == -0.574291
    valeur de x == 249.442058 y == 250.155780 et r == -0.579281
    valeur de x == 249.436999 y == 250.156134 et r == -0.584250
    valeur de x == 249.431958 y == 250.156465 et r == -0.589196
    valeur de x == 249.426936 y == 250.156773 et r == -0.594121
    valeur de x == 249.421932 y == 250.157058 et r == -0.599024
    valeur de x == 249.416947 y == 250.157320 et r == -0.603904
    valeur de x == 249.411982 y == 250.157559 et r == -0.608761
    valeur de x == 249.407035 y == 250.157776 et r == -0.613596
    valeur de x == 249.402108 y == 250.157970 et r == -0.618408
    valeur de x == 249.397201 y == 250.158141 et r == -0.623197
    valeur de x == 249.392314 y == 250.158290 et r == -0.627963
    valeur de x == 249.387448 y == 250.158417 et r == -0.632705
    valeur de x == 249.382602 y == 250.158521 et r == -0.637424
    valeur de x == 249.377777 y == 250.158603 et r == -0.642119
    valeur de x == 249.372973 y == 250.158662 et r == -0.646790
    valeur de x == 249.368190 y == 250.158700 et r == -0.651437
    valeur de x == 249.363429 y == 250.158715 et r == -0.656059
    valeur de x == 249.358689 y == 250.158708 et r == -0.660657
    valeur de x == 249.353972 y == 250.158680 et r == -0.665230
    valeur de x == 249.349277 y == 250.158629 et r == -0.669779
    valeur de x == 249.344604 y == 250.158557 et r == -0.674302
    valeur de x == 249.339955 y == 250.158463 et r == -0.678801
    valeur de x == 249.335328 y == 250.158347 et r == -0.683274
    valeur de x == 249.330724 y == 250.158210 et r == -0.687721
    valeur de x == 249.326144 y == 250.158051 et r == -0.692143
    valeur de x == 249.321588 y == 250.157872 et r == -0.696539
    valeur de x == 249.317055 y == 250.157670 et r == -0.700909
    valeur de x == 249.312547 y == 250.157448 et r == -0.705253
    valeur de x == 249.308063 y == 250.157204 et r == -0.709571
    valeur de x == 249.303603 y == 250.156940 et r == -0.713862
    valeur de x == 249.299169 y == 250.156654 et r == -0.718126
    valeur de x == 249.294759 y == 250.156348 et r == -0.722364
    valeur de x == 249.290375 y == 250.156021 et r == -0.726575
    valeur de x == 249.286016 y == 250.155674 et r == -0.730758
    valeur de x == 249.281683 y == 250.155306 et r == -0.734915
    valeur de x == 249.277376 y == 250.154917 et r == -0.739043
    valeur de x == 249.273095 y == 250.154508 et r == -0.743145
    valeur de x == 249.268840 y == 250.154080 et r == -0.747218
    valeur de x == 249.264612 y == 250.153631 et r == -0.751264
    valeur de x == 249.260411 y == 250.153162 et r == -0.755282
    valeur de x == 249.256237 y == 250.152673 et r == -0.759271
    valeur de x == 249.252090 y == 250.152164 et r == -0.763232
    valeur de x == 249.247970 y == 250.151636 et r == -0.767165
    valeur de x == 249.243878 y == 250.151088 et r == -0.771069
    valeur de x == 249.239814 y == 250.150521 et r == -0.774944
    valeur de x == 249.235778 y == 250.149934 et r == -0.778791
    valeur de x == 249.231771 y == 250.149329 et r == -0.782608
    valeur de x == 249.227791 y == 250.148704 et r == -0.786396
    valeur de x == 249.223841 y == 250.148060 et r == -0.790155
    valeur de x == 249.219919 y == 250.147398 et r == -0.793884
    valeur de x == 249.216027 y == 250.146717 et r == -0.797584
    valeur de x == 249.212163 y == 250.146017 et r == -0.801254
    valeur de x == 249.208329 y == 250.145299 et r == -0.804894
    valeur de x == 249.204525 y == 250.144562 et r == -0.808504
    valeur de x == 249.200751 y == 250.143808 et r == -0.812084
    valeur de x == 249.197007 y == 250.143035 et r == -0.815633
    valeur de x == 249.193293 y == 250.142244 et r == -0.819152
    valeur de x == 249.189609 y == 250.141436 et r == -0.822641
    valeur de x == 249.185956 y == 250.140610 et r == -0.826098
    valeur de x == 249.182334 y == 250.139766 et r == -0.829525
    valeur de x == 249.178743 y == 250.138905 et r == -0.832921
    valeur de x == 249.175183 y == 250.138027 et r == -0.836286
    valeur de x == 249.171654 y == 250.137132 et r == -0.839620
    valeur de x == 249.168157 y == 250.136219 et r == -0.842922
    valeur de x == 249.164692 y == 250.135290 et r == -0.846193
    valeur de x == 249.161259 y == 250.134345 et r == -0.849433
    valeur de x == 249.157857 y == 250.133382 et r == -0.852640
    valeur de x == 249.154488 y == 250.132404 et r == -0.855816
    valeur de x == 249.151151 y == 250.131409 et r == -0.858960
    valeur de x == 249.147847 y == 250.130398 et r == -0.862072
    valeur de x == 249.144576 y == 250.129371 et r == -0.865151
    valeur de x == 249.141338 y == 250.128328 et r == -0.868199
    valeur de x == 249.138132 y == 250.127270 et r == -0.871214
    valeur de x == 249.134960 y == 250.126196 et r == -0.874196
    valeur de x == 249.131822 y == 250.125106 et r == -0.877146
    valeur de x == 249.128717 y == 250.124002 et r == -0.880063
    valeur de x == 249.125645 y == 250.122883 et r == -0.882948
    valeur de x == 249.122608 y == 250.121748 et r == -0.885799
    valeur de x == 249.119604 y == 250.120599 et r == -0.888617
    valeur de x == 249.116635 y == 250.119436 et r == -0.891402
    valeur de x == 249.113700 y == 250.118258 et r == -0.894154
    valeur de x == 249.110800 y == 250.117065 et r == -0.896873
    valeur de x == 249.107934 y == 250.115859 et r == -0.899558
    valeur de x == 249.105104 y == 250.114639 et r == -0.902209
    valeur de x == 249.102308 y == 250.113405 et r == -0.904827
    valeur de x == 249.099547 y == 250.112157 et r == -0.907411
    valeur de x == 249.096821 y == 250.110896 et r == -0.909961
    valeur de x == 249.094131 y == 250.109622 et r == -0.912477
    valeur de x == 249.091477 y == 250.108335 et r == -0.914960
    valeur de x == 249.088858 y == 250.107035 et r == -0.917408
    valeur de x == 249.086274 y == 250.105722 et r == -0.919821
    valeur de x == 249.083727 y == 250.104396 et r == -0.922201
    valeur de x == 249.081216 y == 250.103058 et r == -0.924546
    valeur de x == 249.078741 y == 250.101708 et r == -0.926857
    valeur de x == 249.076302 y == 250.100346 et r == -0.929133
    valeur de x == 249.073900 y == 250.098972 et r == -0.931374
    valeur de x == 249.071534 y == 250.097586 et r == -0.933580
    valeur de x == 249.069205 y == 250.096188 et r == -0.935752
    valeur de x == 249.066912 y == 250.094780 et r == -0.937889
    valeur de x == 249.064657 y == 250.093360 et r == -0.939991
    valeur de x == 249.062439 y == 250.091929 et r == -0.942057
    valeur de x == 249.060257 y == 250.090487 et r == -0.944089
    valeur de x == 249.058113 y == 250.089034 et r == -0.946085
    valeur de x == 249.056007 y == 250.087572 et r == -0.948046
    valeur de x == 249.053938 y == 250.086098 et r == -0.949972
    valeur de x == 249.051906 y == 250.084615 et r == -0.951862
    valeur de x == 249.049912 y == 250.083122 et r == -0.953717
    valeur de x == 249.047956 y == 250.081619 et r == -0.955536
    valeur de x == 249.046038 y == 250.080106 et r == -0.957319
    valeur de x == 249.044158 y == 250.078585 et r == -0.959067
    valeur de x == 249.042316 y == 250.077053 et r == -0.960779
    valeur de x == 249.040512 y == 250.075513 et r == -0.962455
    valeur de x == 249.038746 y == 250.073964 et r == -0.964095
    valeur de x == 249.037019 y == 250.072407 et r == -0.965700
    valeur de x == 249.035330 y == 250.070841 et r == -0.967268
    valeur de x == 249.033680 y == 250.069267 et r == -0.968800
    valeur de x == 249.032068 y == 250.067684 et r == -0.970296
    valeur de x == 249.030495 y == 250.066094 et r == -0.971755
    valeur de x == 249.028961 y == 250.064496 et r == -0.973179
    valeur de x == 249.027465 y == 250.062891 et r == -0.974566
    valeur de x == 249.026009 y == 250.061278 et r == -0.975917
    valeur de x == 249.024592 y == 250.059659 et r == -0.977231
    valeur de x == 249.023213 y == 250.058032 et r == -0.978509
    valeur de x == 249.021874 y == 250.056398 et r == -0.979750
    valeur de x == 249.020574 y == 250.054758 et r == -0.980955
    valeur de x == 249.019314 y == 250.053112 et r == -0.982123
    valeur de x == 249.018093 y == 250.051460 et r == -0.983255
    valeur de x == 249.016911 y == 250.049801 et r == -0.984350
    valeur de x == 249.015769 y == 250.048137 et r == -0.985408
    valeur de x == 249.014666 y == 250.046467 et r == -0.986429
    valeur de x == 249.013603 y == 250.044792 et r == -0.987414
    valeur de x == 249.012579 y == 250.043112 et r == -0.988362
    valeur de x == 249.011595 y == 250.041426 et r == -0.989272
    valeur de x == 249.010651 y == 250.039736 et r == -0.990146
    valeur de x == 249.009747 y == 250.038042 et r == -0.990983
    valeur de x == 249.008883 y == 250.036343 et r == -0.991783
    valeur de x == 249.008058 y == 250.034639 et r == -0.992546
    valeur de x == 249.007274 y == 250.032932 et r == -0.993272
    valeur de x == 249.006530 y == 250.031221 et r == -0.993961
    valeur de x == 249.005825 y == 250.029506 et r == -0.994613
    valeur de x == 249.005161 y == 250.027788 et r == -0.995227
    valeur de x == 249.004536 y == 250.026067 et r == -0.995805
    valeur de x == 249.003952 y == 250.024343 et r == -0.996345
    valeur de x == 249.003408 y == 250.022616 et r == -0.996848
    valeur de x == 249.002904 y == 250.020886 et r == -0.997314
    valeur de x == 249.002441 y == 250.019154 et r == -0.997743
    valeur de x == 249.002017 y == 250.017420 et r == -0.998135
    valeur de x == 249.001634 y == 250.015684 et r == -0.998489
    valeur de x == 249.001291 y == 250.013946 et r == -0.998806
    valeur de x == 249.000989 y == 250.012206 et r == -0.999086
    valeur de x == 249.000726 y == 250.010465 et r == -0.999328
    valeur de x == 249.000504 y == 250.008722 et r == -0.999534
    valeur de x == 249.000323 y == 250.006979 et r == -0.999701
    valeur de x == 249.000182 y == 250.005235 et r == -0.999832
    valeur de x == 249.000081 y == 250.003490 et r == -0.999925
    valeur de x == 249.000020 y == 250.001745 et r == -0.999981
    
    Press ENTER to continue.

  8. #8
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut programme maths en c
    la formule est donné dans l'enoncé c'est celle cité au dessus

    r = cos(7*teta/2)

    rien de plus.......

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par aimad41
    la formule est donné dans l'enoncé c'est celle cité au dessus

    r = cos(7*teta/2)

    rien de plus.......
    Et ça ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
          double x = r * cos (teta_rad) + 250;
          double y = r * sin (teta_rad) + 250;
    Ca sort d'où ?

  10. #10
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut
    il nous faut calculer les point x et y de facon a positionner un pixel blanc au bon emplacement ce sont les coordonnées polaires +250 pour centrer sur la fenetre qui mesure 500*500pixels

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 26
    Par défaut
    Ton r en tant que résultat du calcul d'un cosinus est compris entre -1 et 1.
    Ce qui fait que la figure apparait sur 3 pixels de large... c'est peu.
    Tu as bien penssé à décaler l'origine du repère, mais il faut aussi zoomer un peu. Multiplier la valeur de r par 250 devrait suffire.

  12. #12
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par aimad41
    il nous faut calculer les point x et y de facon a positionner un pixel blanc au bon emplacement ce sont les coordonnées polaires +250 pour centrer sur la fenetre qui mesure 500*500pixels
    Certes, mais un cos() ou un sin(), ça varie entre -1 et 1, pas entre 0 et 499. Il doit manquer un coefficient genre 'x 500', non ?

    Je suis une brêle en math, désolé...

    Arf, grillaid... mais j'ai presque bon...

  13. #13
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut programme maths en c
    oui comme cité precedemment il vaut mieux multiplier le rayon par 250 pour qu'il occupe la moitié de la fenêtre.....

  14. #14
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par aimad41
    oui comme cité precedemment il vaut mieux multiplier le rayon par 250 pour qu'il occupe la moitié de la fenêtre.....
    Bon alors, ça gloute ?

  15. #15
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut
    non mes calculs sont faux, je voit pas comment faire

  16. #16
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      while (teta <= 360)
        {
     teta_rad = teta * 3.14 / 180;
    Tu es au courant que dans la boucle que tu visualises. Il n'y a pas qu'un tour, mais surement des dizaines. (donc il faut arrêter bien après dans la condition du while)

  17. #17
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Par défaut
    Bonjour,

    Le code de ton 1er post est-il à jour ?

    Si oui, je m'étonne même que ton programme fasse semblant de marcher sans violation d'accès, car
    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
    ...
    void    cercle(void)
    {
      int   r;
      graph_f *polar;
      float teta;
      float teta_rad;
      float x;
      float y;
     
     teta = 0;
      polar->mlx_ptr = mlx_init();
      polar->win_ptr = mlx_new_window(polar->mlx_ptr, 500, 500, "ellipse");
      while (teta <= 360)
    ...
    belle utilisation d'un pointeur non initialisé, qui en plus pointe sur une structure contenant des pointeurs, eux-même non initialisés, évidemment.


    Et je soutiens ceux qui te l'ont déjà dit : quand tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
          x = r*cos(teta_rad) + 250;
    alors ton x est : 249 <= x <= 251

    il faut faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
          x = 250*r*cos(teta_rad) + 250;

  18. #18
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    123
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 123
    Par défaut ok
    probleme resolu , merci a tous pour votre aide...

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

Discussions similaires

  1. Problème de programmation de math
    Par black_hole dans le forum Mathématiques
    Réponses: 0
    Dernier message: 23/01/2014, 16h27
  2. Programme de maths en C
    Par 1corse dans le forum Débuter
    Réponses: 22
    Dernier message: 04/10/2010, 22h43
  3. Maths discrètes - dualité en programmation linéaire
    Par Lucas Panny dans le forum Mathématiques
    Réponses: 1
    Dernier message: 14/09/2009, 14h09
  4. Math physique chimie dans la programmation
    Par doc752 dans le forum Langages de programmation
    Réponses: 8
    Dernier message: 01/09/2009, 17h53
  5. [Math] Utiliser cos, sin, log ou les programmer ?
    Par zaim dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 13/04/2006, 20h49

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