Fonction cosinus erronnée...

Yuku Messages postés 215 Statut Membre -  
 dieng -
Bonjour,

Je commence à programmer en C depuis peu, même si j'avais deux ou trois bases il y a longtemps.

J'ai essayé de créer un mini programme d'une vingtaine de lignes, permettant de demander à l'utilisateur deux valeurs, puis de faire le cosinus de ces deux valeurs, et la somme des deux cosinus est le résultat attendu par l'utilisateur...

Seulement, j'ai un problème sur les deux lignes que j'ai indiquées en gras :

Voici mon programme :

#include <cstdlib>
#include <iostream>
#include <math.h>

using namespace std;
int main(int argc, char *argv[])
{
float resultat, a, b, c ,d;
printf("Valeur du nombre 1?\n");
scanf("%ld\n", &a);
printf("Valeur du nombre 2?\n");
scanf("%ld\n", &b);
cos(a) = c;
cos(b) = d;

resultat = c + d;
printf("La somme des cosinus des deux nombres est donc : %ld\n", resultat);
system("PAUSE");
return EXIT_SUCCESS;
}


Et voici ce que me dit le compilateur :

In function `int main(int, char**)':
13 non-lvalue in assignment
14 non-lvalue in assignment
[Build Error] [main.o] Error 1


PS : je programme avec Dev-C++. Si le problème paraît évident, je vous serais reconnaissant de pas vous moquer xD Tout le monde doit passer par là pour apprendre à programmer...

Bref, merci d'avance !
A voir également:

10 réponses

dandypunk Messages postés 838 Statut Membre 83
 
Mon C est un peut rouillé, mais je pense qu'en utilisant "%f" simplement cela devrait fonctionner.
2
dieng
 
bonjour excus me g fai une erreur c xd merci
1
dandypunk Messages postés 838 Statut Membre 83
 
Essaye avec :
c=cos(a);
d=cos(b);

Les affectations se font dans cet ordre VariableAAffecter=Affectation.

P.S. Vérifie l'unité d'angle C travaille en radian.
0
dandypunk Messages postés 838 Statut Membre 83
 
Pour info, pi n'est pas implémenté en C, il faut le définir.
Une approximation correcte à 2 10^-7 est 355/113.
0
toto
 
355/113, ça fait 3 en C, car il s'agit de 2 entiers -> résultat entier ;)
il vaut mieux faire 355.0/113 ou 4*atan(1)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dieng
 
salut j avait comme se blem se blem au debut mais g apris lés d il faut l utilisé
0
Yuku Messages postés 215 Statut Membre 4
 
Merci beaucoup ! En effet, j'avais oublié ce détail... Important !

Cependant... J'ai un autre problème : en conservant exactement le même programme mais en inversant donc variable / affectation comme tu l'as si bien expliqué, le programme est donc compilé.

Mais peu importe les valeurs a et b que j'entre, le résultat final est toujours 0... et quand je mets "%lf" et non "%ld" afin d'avoir les décimales (au cas où le résultat serait arrondi), j'obtiens aussi "0.00000"...

Est-ce normal?
-1
Yuku Messages postés 215 Statut Membre 4
 
Et bien merci beaucoup, la vache :p

J'espère avoir ton niveau un jour :)
-1
Yuku Messages postés 215 Statut Membre 4
 
Ah, et à ce propos, y aurait-il un moyen de passer des radians aux degrés sous Dev-C++?
-1
toto
 
Bonsoir

Pour passer des degrés aux radians ou l'inverse, il suffit d'une multiplication, qu'on soit en C++, PHP ou javascript c'est la même chose. C'est une question de maths, pas de programmation. Il suffit de savoir que pi radians = 180 degrés.
0
dandypunk Messages postés 838 Statut Membre 83
 
Pour de bonne bases en C puis en C++, je te conseille d'investir dans la "bible" à savoir le K&R (Kernighan et Ritchie) qui sont les créateurs du langage.
Ma version date de 1994 et a été éditée chez Masson avec l'ISBN 2-225-82070-8
-1
Yuku Messages postés 215 Statut Membre 4
 
En effet, ça risque de m'être utile, ce genre d'ouvrage =)

Je suis étudiant en info, et la moyenne de C/C++ (et Java/Java Threads au deuxième trimestre) vaut quand même un septième de la moyenne générale... =P

Encore merci à toi !
-1