[Déplacé VB -> C#]Projet c# Etude de fonction

cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012 - 3 janv. 2012 à 16:46
cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012 - 8 janv. 2012 à 00:12
Bonjour je dois réaliser une étude de fonction ce pendant je bug pour tracer la courbe .
Si quelqu'un pouvait m'aider ca serait sympa.
Pour le moment je calcule ou la fonction s'annule et j'essaye de faire le graph de ma fonction par la suite il faudrait que je trace le tableau de variation si quelqu'un a une piste a me donner pour cela

Merci

Voici ce que j'ai fait pour le moment :


public partial class MainWindow : Window
{
private double xCarre;
private double xSimple;
private double nombre;

public MainWindow()
{
InitializeComponent();






}
public void CreationImage()
{
Bitmap bi = new Bitmap(800, 800);

for (int i = 0; i < bi.Width; i++)
{
for (int j = 0; j < bi.Height; j++)
{
bi.SetPixel(i, j, Color.White);

}


}

for (int k = 0; k 0)
{
textBlock8.Text = "erreur";
}
for (int i = 1; i < nbmax; i++)
{
double m = (a + b) / 2;
double y = fonction(m);
if (Math.Abs(y)

14 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
3 janv. 2012 à 18:26
Salut

Tu es sur un forum VB.
Quel est ce langage ?
C.Net ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
NHenry Messages postés 15025 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 26 novembre 2022 157
3 janv. 2012 à 18:57
Bonjour,

Je déplace, car le code ressemble vraiment à du C#.NET

De plus, quand tu postes un code, regardes le point 2 de ma signature.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
0
Whismeril Messages postés 18024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 7 décembre 2022 618
3 janv. 2012 à 19:23
Bonsoir, pour tracer une courbe il y a zedgraph.

Il y a justement un post en cours


Whismeril
0
cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012
3 janv. 2012 à 20:58
Merci de vois réponses mais moi j'ai crée une image a l'aide d'un bitmap et il faut avec des boucles que je reusisse a tracer mes points le plus rapproché possible pour tracer la courbe correspondant a la fonction.
Si vous avez des pistes n'hésitez pas

Merci
0

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

Posez votre question
cs_louis14 Messages postés 793 Date d'inscription mardi 8 juillet 2003 Statut Membre Dernière intervention 10 février 2021 8
4 janv. 2012 à 09:09
Bonjour,
Il faut chercher un peu sur ce site ou celui de codeproject et on peut trouver des choses comme ces articles :
http://www.codeproject.com/KB/cs/aderplotter.aspx
http://www.codeproject.com/KB/miscctrl/ExpressionPlotterControl.aspx



louis
0
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
4 janv. 2012 à 12:21
Salut,

ce serait pas mal que tu indentes, commentes, épures et encapsules dans une balise code le charabia que tu nous balances.

Et précise clairement le problème : résultat obtenu/résultat attendu, code incriminé, exception/code erreur si existe ...
0
cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012
4 janv. 2012 à 20:40
En gros mon probleme c le tracé de la courbe :




for (Double q = Convert.ToDouble(textBox4.Text); q <bi.Width; q++)
{
double fct = (int)fonction(q);



bi.SetPixel((bi.Width / 2) + (int)q, (bi.Height / 2) - fct, Color.Black);


}



bi.Save("image.bmp");


}

a ce niveau il y a un probleme parce que le set pixel ne prend que des int...
0
Whismeril Messages postés 18024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 7 décembre 2022 618
6 janv. 2012 à 12:59
Je ne veux pas jouer au relou, mais avec Zedgraph:
tu peux sauver en bmp ou autre
ça trace tous types de courbes (presque) tout seul
ça prend des doubles en entrée
l'opérateur peut zoomer, se déplacer dans la courbe, afficher des valeurs,
ça gére la couleur, l'échelle, le symbole (ou pas) au points définis, le mode de d'interpolation entre deux points, etc...

J'ai arrêté de faire comme toi, le jour ou j'ai découvert l'outil.

Whismeril
0
cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012
7 janv. 2012 à 15:16
mais comment je l'utilise zedgraph???? parce que le prof a mis comme indication d'utiliser bitmap setpixel getpixel...
0
Whismeril Messages postés 18024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 7 décembre 2022 618
7 janv. 2012 à 22:28
Bonsoir,

ne connaissant pas ton prof je te laisse juge si "indication" est plus proche de "c'est une piste" ou de "c'est comme ça que vous devez faire".

Dans le premier cas, je t'ai indiquer plus haut un lien vers un post sur zedgraph ou un moment je mets en détail l'affichage de 4 courbes.

Dans le second cas, setpixel n'accepte forcement que de entiers, car la partie décimale d'un pixel n'existe pas.
Je te conseille d'arrondir avant de castre tes valeurs.
int toto =(int) Math.Round(1.6);// toto vaut 2
 int titi = (int)1.6; // titi vaut un


ça donne donc un truc du genre


//bi.SetPixel((bi.Width / 2) + (int)q, (bi.Height / 2) - fct, Color.Black);

double toto = Math.Round((bi.Width / 2) + (int)q, (bi.Height / 2) - fct);
bi.SetPixel((int)toto, Color.Black);



//et c'est plus lisible avec les balises de code non?




Whismeril
0
cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012
7 janv. 2012 à 23:22
Merci pour vos indications j'ai testé avec la zedgraph mais sur Wpf ca ne reconnait pas le lineItem et le graph...

Pour la deuxieme methode cela ne fonction toujours pas
j'ai fait comme cela:



for (double q = Math.Round (Convert.ToDouble(textBox4.Text)); q < bi.Width; q++)
{
double y =(fonction(q));
double toto=(bi.Width / 2) + (int)q;
int tata=((bi.Height / 2) -(int)y);

bi.SetPixel((int)toto,(int)tata,Color.Black);

Voici l'erreur que j'obtiens:

'L'invocation du constructeur sur le type 'WpfApplication5.MainWindow' qui correspond aux contraintes de liaison spécifiées a levé une exception.' numéro de ligne '3' et position de ligne '9'.

Merci de votre aide
0
cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012
7 janv. 2012 à 23:26
Le Zedgraph ne s'utiliserait til pas en Windows Form et non en WPF????
0
Whismeril Messages postés 18024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 7 décembre 2022 618
8 janv. 2012 à 00:01
Si, je ne maitrise pas bien WPF, mais il me semble qu'il est possible d'y intégrer des contrôles windows forms, et il ne faut pas oublier le "using ZedGraph".

Par contre, ton erreur ne me dit rien du tout.

Désolé.


Whismeril
0
cindoo Messages postés 27 Date d'inscription vendredi 11 juin 2010 Statut Membre Dernière intervention 11 janvier 2012
8 janv. 2012 à 00:12
ok merci de l'aide je vais voir si je peux arranger ca
0