public static HarmonicFunction restaDeFuncArmonicas(HarmonicFunction f1, HarmonicFunction f2) { var fasorA = f1.fasor(); var fasorB = f2.fasor(); var res = Functions.resta(fasorA.convertirEnBinomica(), fasorB.convertirEnBinomica()); var resPolar = res.convertirEnPolar(); return(new HarmonicFunction(resPolar.mod, f1.frecuencia, resPolar.arg, true)); }
private void Res_btn_Click(object sender, EventArgs e) { res_entry.Text = ""; if (textboxNoVacios() && tiposSeleccionados()) { if (textboxSoloNum()) { if (freqA_entry.Text.Equals(freqB_entry.Text)) { HarmonicFunction funcionA = new HarmonicFunction(double.Parse(amplitudeA_entry.Text), double.Parse(freqA_entry.Text), double.Parse(phaseA_entry.Text), typeA_combo.SelectedIndex.Equals(2)); HarmonicFunction funcionB = new HarmonicFunction(double.Parse(amplitudeB_entry.Text), double.Parse(freqB_entry.Text), double.Parse(phaseB_entry.Text), typeB_combo.SelectedIndex.Equals(2)); funcionA = funcionA.convertirEnFcos(); funcionB = funcionB.convertirEnFcos(); if (add_rad.Checked) { HarmonicFunction fres = Functions.sumaDeFuncArmonicas(funcionA, funcionB); string stringRes = fres.mostrar(); if (stringRes.StartsWith("0")) { res_entry.AppendText("0"); } else { res_entry.AppendText(stringRes); } } else { HarmonicFunction fres = Functions.restaDeFuncArmonicas(funcionA, funcionB); string stringRes = fres.mostrar(); if (stringRes.StartsWith("0")) { res_entry.AppendText("0"); } else { res_entry.AppendText(stringRes); } } } else { MessageBox.Show("Las funciones ingresadas no tienen la misma frecuencia", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } else { MessageBox.Show("Los campos deben contener números únicamente", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } else { MessageBox.Show("Debe completar todos los campos solicitados y seleccionar el tipo de la función", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } }