Addition en C#
Résolu
hektor 1
Messages postés
129
Statut
Membre
-
reaverlost Messages postés 168 Statut Membre -
reaverlost Messages postés 168 Statut Membre -
Bonjour a tous
Je suis debutant en programmation et j'essaie actuellement un programme tres simple,
effectuer une addition.
voici le code :
int A, B, C;
Console.WriteLine("nombre 1");
A = Console.ReadLine();
Console.WriteLine("nombre2");
B = Console.ReadLine();
C = A + B;
Console.WriteLine("le resultat est :" + C);
Console.ReadLine;
Mais a chaque fois la liste d'erreur (visual C# 2008) affiche:
impossible de convertir implicitement le type "string" en "int"
Quel est le probleme??
merci de votre aide
Je suis debutant en programmation et j'essaie actuellement un programme tres simple,
effectuer une addition.
voici le code :
int A, B, C;
Console.WriteLine("nombre 1");
A = Console.ReadLine();
Console.WriteLine("nombre2");
B = Console.ReadLine();
C = A + B;
Console.WriteLine("le resultat est :" + C);
Console.ReadLine;
Mais a chaque fois la liste d'erreur (visual C# 2008) affiche:
impossible de convertir implicitement le type "string" en "int"
Quel est le probleme??
merci de votre aide
13 réponses
Salut,
c'est très simple, en fait la méthode Console.WriteLine, ne peut afficher qu'une string (Chaine de caractère), ou une concaténation de string.
Or, ton C est un entier, il faut donc au préalable le convertir en string. Pour cela tu peux utiliser System.Convert.ToString
Console.WriteLine("le resultat est :" + System.Convert.ToString(C));
c'est très simple, en fait la méthode Console.WriteLine, ne peut afficher qu'une string (Chaine de caractère), ou une concaténation de string.
Or, ton C est un entier, il faut donc au préalable le convertir en string. Pour cela tu peux utiliser System.Convert.ToString
Console.WriteLine("le resultat est :" + System.Convert.ToString(C));
je ne pense pas que tu puisse faire A = Console.ReadLine();
essaye A = int.Parse(Console.ReadLine());
également
essaye de remplacer :
Console.WriteLine("le resultat est :" + C);
par
Console.WriteLine("le resultat est :" + C.ToString());
essaye A = int.Parse(Console.ReadLine());
également
essaye de remplacer :
Console.WriteLine("le resultat est :" + C);
par
Console.WriteLine("le resultat est :" + C.ToString());
J'ai suivi ton conseil mais maintenant la liste d'erreur affiche:
Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique
le message s'affiche pour les trois variables
Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique
le message s'affiche pour les trois variables
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
essaye avec sa :
static void Main(string[] args)
{
int A, B, C;
Console.WriteLine("nombre 1");
A = int.Parse(Console.ReadLine());
Console.WriteLine("nombre2");
B = int.Parse(Console.ReadLine());
C = A + B;
Console.WriteLine("le resultat est :" + C.ToString());
Console.ReadLine();
}
static void Main(string[] args)
{
int A, B, C;
Console.WriteLine("nombre 1");
A = int.Parse(Console.ReadLine());
Console.WriteLine("nombre2");
B = int.Parse(Console.ReadLine());
C = A + B;
Console.WriteLine("le resultat est :" + C.ToString());
Console.ReadLine();
}
La méthode Console.ReadLine() stock le résultat via un return dans le type string.
Donc
Donc
int A <= stringne peut que générer une erreur si aucun Parse n'est fait
Merci pour vos reponse.
Effectivement le code source de Neyte fonctionne correctement.
Il fallait donc convertir mes variables "int" en "string".
Effectivement le code source de Neyte fonctionne correctement.
Il fallait donc convertir mes variables "int" en "string".
converti tout les variables A,B,C non je crois c'est pas bon car c'est ta converti A ,et B quand tu veux faire l'addition il va faire la concaténation il faut juste converti la varaibles C en string
C.toString();
C.toString();
The "Read" and "ReadLine" methods are the main ways of acquiring data from the standard input stream. "ReadLine" reads a whole line of characters from the buffer up to the point where the first end line character ("\n") is found. It outputs its data as "string" (experienced C++
//---J'ai trouvé ça, traduit approximativement:
"Read" et "Readline" methods sont les façon principale d'acquérir des données d'un point d'entrée. Readline lit une ligne entière de caractères du buffer au point ou la ligne prend fin(lorsque q'un \n est trouvé). Il retourne une donnée de type "string"
Bienvenu dans le monde joyeux(mais pas tant que ça) du typage de données. En effet chaque variable correspond à un type : entier (int) chaine de caractéres(string) etc...On ne peut additioner que des int et readline fournit une chaine de caractéres.
Je peut pas dire mieux en C#, essaie de trouver un tuto sur les variables qui montre une addition dans ce langage.
//---J'ai trouvé ça, traduit approximativement:
"Read" et "Readline" methods sont les façon principale d'acquérir des données d'un point d'entrée. Readline lit une ligne entière de caractères du buffer au point ou la ligne prend fin(lorsque q'un \n est trouvé). Il retourne une donnée de type "string"
Bienvenu dans le monde joyeux(mais pas tant que ça) du typage de données. En effet chaque variable correspond à un type : entier (int) chaine de caractéres(string) etc...On ne peut additioner que des int et readline fournit une chaine de caractéres.
Je peut pas dire mieux en C#, essaie de trouver un tuto sur les variables qui montre une addition dans ce langage.