نمایش نتایج 1 تا 6 از 6

نام تاپیک: اولین برنامه من : نظر بدید

  1. #1

    اولین برنامه من : نظر بدید

    سلام
    امروز شروع کردم یک برنامه کوچک ولی نسبت به برنامه های قبلیم بزرگ نوشتم
    نظرتون در موردش چیه؟
    کلاس Cubic

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    namespace WindowsFormsApplication1
    {
    class Cubic
    {
    private double[] x = new double[3];
    private double a, b, c, d, p, q, z;
    public double A
    {
    set
    {
    a = value;
    }
    }
    public double B
    {
    set
    {
    b = value;
    }
    }
    public double C
    {
    set
    {
    c = value;
    }
    }
    public double D
    {
    set
    {
    d = value;
    }
    }

    public bool AdadMohumi;

    public double Calculatex1()
    {

    if (T2(p) + T3(q) < 0)
    {
    p = ((-1 * T3(b) / (27 * T3(a))) + ((b * c) / (6 * T2(a))) - (d / (2 * a)));
    q = (c / (3 * a) - T2(b) / (9 * T2(a)));
    z = -1 * b / (3 * a);
    AdadMohumi = true; return 0;

    }
    else
    {
    p = ((-1 * T3(b) / (27 * T3(a))) + ((b * c) / (6 * T2(a))) - (d / (2 * a)));
    q = (c / (3 * a) - T2(b) / (9 * T2(a)));
    z = -1 * b / (3 * a);
    AdadMohumi = false;
    x[0] = Cubic_root(p + Math.Sqrt(T2(p) + T3(q))) + Cubic_root(p - Math.Sqrt(T2(p) + T3(q))) + z;
    return x[0];
    }
    }

    private double Cubic_root(double t)
    {
    if (t >= 0)
    return Math.Pow(t, 1.0 / 3.0);
    else
    {
    double t2 = -1 * t;
    t2 = Math.Pow(t2, 1.0 / 3.0);
    t2 *= -1;
    return t2;
    }
    }
    private double T3(double x)
    {
    return Math.Pow(x, 3);
    }
    private double T2(double x)
    {
    return Math.Pow(x, 2);
    }

    }
    }


    کلاس اصلی form


    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    namespace WindowsFormsApplication1
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
    label6.Text = "";
    try
    {
    Cubic myCubic = new Cubic();
    myCubic.A = Convert.ToDouble(textBox1.Text);
    myCubic.B = Convert.ToDouble(textBox2.Text);
    myCubic.C = Convert.ToDouble(textBox3.Text);
    myCubic.D = Convert.ToDouble(textBox4.Text);
    if (myCubic.AdadMohumi == true)
    {
    label6.Text = "";
    MessageBox.Show("جوابی در محدوده اعداد حقیقی پیدا نشد");
    }
    else
    {
    if ((myCubic.Calculatex1() < 0.0000000000000001 && myCubic.Calculatex1() > 0) || (myCubic.Calculatex1() > -0.0000000000000001 && myCubic.Calculatex1() <0))
    label6.Text = "0";
    else
    label6.Text = myCubic.Calculatex1().ToString();
    }
    }
    catch(FormatException)
    {
    MessageBox.Show("عدد وارد کنید!");
    }

    }

    private void Form1_Load(object sender, EventArgs e)
    {
    this.MaximizeBox = false;
    }
    }
    }




    لینک دانلود : http://bayanbox.ir/id/3979496755486037885?download
    توضیح درباره برنامه : این برنامه مولفه های A,B,C,D یک معادله درجه 3 رو می گیره و یک جوابشو(اگه حقیقی باشه) می ده
    * یک چیزی الان به ذهنم رسید که باید چک می کردم که A صفرنباشه

  2. #2
    کاربر دائمی آواتار sohil_ww
    تاریخ عضویت
    آذر 1391
    محل زندگی
    هر جا شادی باشه
    پست
    891

    نقل قول: اولین برنامه من : نظر بدید

    دوست عزیز
    چرا سورسو قرار ندادی اینجوری بهتر نبود ؟!

  3. #3

    نقل قول: اولین برنامه من : نظر بدید


  4. #4
    کاربر دائمی آواتار sohil_ww
    تاریخ عضویت
    آذر 1391
    محل زندگی
    هر جا شادی باشه
    پست
    891

    نقل قول: اولین برنامه من : نظر بدید

    برای اولین برنامه چیزه خوبیه و عالیه افرین

  5. #5

    نقل قول: اولین برنامه من : نظر بدید

    public double Calculatex1() {

    if (T2(p) + T3(q) < 0)
    {
    p = ((-1 * T3(b) / (27 * T3(a))) + ((b * c) / (6 * T2(a))) - (d / (2 * a)));
    q = (c / (3 * a) - T2(b) / (9 * T2(a)));
    z = -1 * b / (3 * a);
    AdadMohumi = true; return 0;

    }
    else
    {
    p = ((-1 * T3(b) / (27 * T3(a))) + ((b * c) / (6 * T2(a))) - (d / (2 * a)));
    q = (c / (3 * a) - T2(b) / (9 * T2(a)));
    z = -1 * b / (3 * a);
    AdadMohumi = false;
    x[0] = Cubic_root(p + Math.Sqrt(T2(p) + T3(q))) + Cubic_root(p - Math.Sqrt(T2(p) + T3(q))) + z;
    return x[0];
    }


    توضیح می دید ؟

  6. #6

    نقل قول: اولین برنامه من : نظر بدید

    بله این قسمتشو برای این درست کرده بودم که اگه داخل رادیکال منفی بود جواب رو با i (رادیکال منفی 1) نشون بده , بعدش دیم یکم طولانی د از تو کلاس اصلی پاکش کردم ولی اون جا مثل اینکه جا مونده

تاپیک های مشابه

  1. سوال: در مورد قیمت این برنامه نظر بدید(آماده تحویل)
    نوشته شده توسط حجتی نیا در بخش ارزیابی نرم افزار
    پاسخ: 1
    آخرین پست: یک شنبه 16 خرداد 1389, 09:33 صبح
  2. پاسخ: 3
    آخرین پست: پنج شنبه 03 بهمن 1387, 18:32 عصر
  3. (تجربه شخصی): اولین برنامه php که نوشتم
    نوشته شده توسط shaniaki در بخش PHP
    پاسخ: 9
    آخرین پست: جمعه 04 اردیبهشت 1383, 00:52 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •