ProcesoAnalisis_de_una_Ecuación_de_segundo_grado//versión1.1.0ultimaedicionagosto92016//ByCompSystems//ParaejecutarestecodigousePSEINThttp://pseint.sourceforge.netLimpiarPantalla//1.DeclararvariablesyconstantesDefinircoeficiente1_a,coeficiente2_b,coeficiente3_cComoReales; // Definición de coeficientesDefinirraiz1,raiz2,raizMayorComoReales;Definirraiz1ParteReal,raiz1ParteImag,raiz2ParteReal,raiz2ParteImag,discriminanteComoReales;DefinirbanderaDiscriminanteComoentero;DefinirexpresionMatComocadena;DefinirparteRealcomoentero; parteReal = 1;DefinirparteImagcomoentero; parteImag = 2;DimensionnumComplejo1[2];DefinirnumComplejo1ComoReales; // cada parteDimensionnumComplejo2[2];DefinirnumComplejo2ComoReales; // cada parte//2.InformaciondeentradaImprimir"Calculo de las raices de una Ecuación Cuadratica o de segundo grado con una incognita"Imprimir"forma canonica a*X^2+b*X^1+c*X^0=0 => a*X^2+b*X+c=0"; //Masinfo:http://es.wikipedia.org/wiki/Ecuaci%C3%B3n_de_segundo_gradoImprimir"";Imprimir"a es el coeficiente cuadrático"; Imprimir"b es el coeficiente lineal"; Imprimir"c es el coeficiente o término independiente"; Imprimir"";//SolicitarEntradadedatosImprimir"Entre el valor del coeficiente a: ",sinbajar; Leercoeficiente1_a;Imprimir"Entre el valor del coeficiente b: ",sinbajar; Leercoeficiente2_b;Imprimir"Entre el valor del coeficiente c: ",sinbajar; Leercoeficiente3_c; //ImpresiondelosdatosdeentradaImprimir"";Imprimir"Los coeficientes son a = ",coeficiente1_a,", b = ",coeficiente2_b,", c = ",coeficiente3_c;//Chequeodeargumentos(coeficientes)deentradaSicoeficiente1_a=0EntoncesSicoeficiente2_b=0EntoncesSicoeficiente3_c=0EntoncesEscribir"No hay ecuación, la expresion entrada entrada es el numero cero y la ecuacion se reduce a 0=0";Sino//elcoeficiente3noesceroEscribir"Contradiccion, la expresion entrada es un numero y la ecuacion es falsa",coeficiente3_c," = 0";FinSiSino//elcoeficiente2noesceroEscribir"La expresion entrada es a una ecuación lineal";Escribir"Solucion: x = -c/a, x = ",-coeficiente3_c/coeficiente2_b;FinSiSino//llevandoexpresiondeentradaaexpresionmasestandard-1*x^2=>-x^2,1*x^2=>x^2"Imprimir"";Imprimir"La ecuacion Cuadratica es: ",sinbajar;expresionMat=""Sicoeficiente1_a=-1EntoncesexpresionMat=expresionMat+"-"SinoSinocoeficiente1_a=1EntoncesexpresionMat=expresionMat+ConvertirATexto(coeficiente1_a)+"*";FinSiFinSiexpresionMat=expresionMat+"x^2"Sicoeficiente2_b<>0EntoncesSicoeficiente2_b>0EntoncesexpresionMat=expresionMat+"+"FinSiSicoeficiente2_b=-1EntoncesexpresionMat=expresionMat+"-"SinoSinocoeficiente2_b=1EntoncesexpresionMat=expresionMat+ConvertirATexto(coeficiente2_b)+"*";FinSiFinSiexpresionMat=expresionMat+"x"FinSiSicoeficiente3_c<>0EntoncesSicoeficiente3_c>0EntoncesexpresionMat=expresionMat+"+"FinSiexpresionMat=expresionMat+ConvertirATexto(coeficiente3_c)FinSiImprimirexpresionMat+"0"//Calculosdiscriminante=coeficiente2_b^2-4.0*coeficiente1_a*coeficiente3_c;Imprimir"La formula del Discriminate de la ecuacion cuadratica es: D = b^2 -4*a*c";Escribir"D = ",discriminante;//informaciondelasraicesSidiscriminante==0EntoncesEscribir"";Escribir"Como el discriminante es 0 entonces hay 2 soluciones iguales de numeros reales"Escribir"o que es lo mismo, 1 solucion en los numeros reales con multiplicidad 2"Escribir"(la parábola sólo toca en un solo punto al eje de las abscisas X)";banderaDiscriminante:=1;SinoSidiscriminante<=0EntoncesEscribir"";Escribir"Como el discriminante es negativo entonces hay 2 soluciones en los numeros complejos, (un numero complejo y su conjugado)"Escribir"(la parábola no corta al eje de las abscisas X)";banderaDiscriminante:=0;Sino//discriminante>=0Escribir""; Escribir"Como el discriminante es positivo entonces hay 2 soluciones diferentes de numeros reales"escribir"(la parábola cruza dos veces el eje de las abscisas X)";banderaDiscriminante:=2;FinSiFinSi//calculodelasraicesSegunbanderaDiscriminanteHacercaso0:Escribir""raiz1ParteReal:=-coeficiente2_b/(2*coeficiente1_a);raiz1ParteImag:=raiz(-discriminante)/(2*coeficiente1_a);raiz2ParteReal:=raiz1ParteReal;raiz2ParteImag:=-raiz1ParteImag; numComplejo1[parteReal]=raiz1ParteReal;numComplejo1[parteImag]=raiz1ParteImag;numComplejo2[parteReal]=raiz2ParteReal;numComplejo2[parteImag]=raiz2ParteImag;Escribir""Escribir"Primera raiz: ",numComplejo1[parteReal]sinbajarSinumComplejo1[parteImag]>=0EntoncesImprimir"+",numComplejo1[parteImag]sinbajarsinoImprimirnumComplejo1[parteImag]sinbajarFinSiEscribir"*i"Escribir"Segunda raiz: ",numComplejo2[parteReal]sinbajarSinumComplejo2[parteImag]>=0EntoncesImprimir"+",numComplejo2[parteImag]sinbajarsinoImprimirnumComplejo2[parteImag]sinbajarFinSiEscribir"*i"Imprimir"ParteReal = ",raiz1ParteRealImprimir"parteImag = ±",raiz1ParteImagcaso1:Escribir""raiz1:=-coeficiente2_b/(2*coeficiente1_a);raiz2:=raiz1; // Raiz1 == Raiz2 (multiplicidad 2)Escribir"raiz 1: ",raiz1; Escribir"raiz 2: ",raiz2; caso2:Escribir""raiz1:=(-coeficiente2_b+raiz(discriminante))/(2*coeficiente1_a);raiz2:=(-coeficiente2_b-raiz(discriminante))/(2*coeficiente1_a);//OrdenandoraicesdemenoramayorparaunamejorimpresionSiraiz1>=raiz2EntoncesraizMayor:=raiz1;raiz1=raiz2;raiz2=raizMayor;FinSiEscribir"Primera raiz: ",raiz1;Escribir"Segunda raiz: ",raiz2;//DeOtroModo:FinSegunEscribir""Escribir"La suma de las raices se calcula con la formula s=-b/a, s = ",-coeficiente2_b/coeficiente1_aEscribir"prueba sumando las raices = "sinbajarSibanderaDiscriminante=0EntoncesEscribir(raiz1ParteReal+raiz2ParteReal)+(raiz1ParteImag+raiz2ParteImag)SinoEscribirraiz1+raiz2FinSiEscribir""Escribir"El producto de las raices se calcula con la formula m=-b/a, m = ",coeficiente3_c/coeficiente1_aEscribir"prueba con las raices = "sinbajarSibanderaDiscriminante!=0EntoncesEscribirraiz1*raiz2SinoEscribir((raiz1ParteReal*raiz2ParteReal)-(raiz1ParteImag*raiz2ParteImag))+((raiz1ParteReal*raiz2ParteImag)+(raiz1ParteImag*raiz1ParteReal))FinSiEscribir""FinSiFinProceso//Ejemplosparaprobarlostrescasos//ejp1:1*X^2+2*X+3raices{-1+1.4142*i,-1-1.4142*i}//ejp2:1*X^2-11.6*X+33.64raices{5.8,5.8}//determinantecero//ejp3:1*X^2-5*X+6raices{2,3}//determinantemayorquecero//ejp4:-5*X^2+6*X+9raices{-.86969384567,2.06969384567}
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Qué pena, el código anterior tiene muchos errores ortográficos, los corregí en la más reciente versión de mi programa
ProcesoAnálisis_de_una_Ecuación_de_segundo_grado//versión1.1.0ultimaediciónagosto102016//ByJaimeMezaAKACompSystems//ParaejecutaresteseudocódigousePSEINThttp://pseint.sourceforge.netPSEINTprograma100%encastellanoydesarrolladoporPablo(Argentina)LimpiarPantalla//1.DeclararvariablesyconstantesDefinircoeficiente1_a,coeficiente2_b,coeficiente3_cComoReales; // Definición de coeficientesDefinirraiz1,raiz2,raizMayorComoReales;Definirraiz1ParteReal,raiz1ParteImag,raiz2ParteReal,raiz2ParteImag,discriminanteComoReales;DefinirbanderaDiscriminanteComoentero;DefinirexpresionMatComocadena;DefinirparteRealcomoentero; parteReal = 1;DefinirparteImagcomoentero; parteImag = 2;DimensiónnumComplejo1[2];DefinirnumComplejo1ComoReales; // cada parteDimensiónnumComplejo2[2];DefinirnumComplejo2ComoReales; // cada parte//2.InformacióndeentradaImprimir"Calculo de las raíces de una Ecuación Cuadrática o de segundo grado con una incógnita"Imprimir"forma canónica a*X^2+b*X^1+c*X^0=0 => a*X^2+b*X+c=0"; //Masinfo:http://es.wikipedia.org/wiki/Ecuaci%C3%B3n_de_segundo_gradoImprimir"";Imprimir"a es el coeficiente cuadrático"; Imprimir"b es el coeficiente lineal"; Imprimir"c es el coeficiente o término independiente"; Imprimir"";//SolicitarEntradadedatosImprimir"Entre el valor del coeficiente a: ",sinbajar; Leercoeficiente1_a;Imprimir"Entre el valor del coeficiente b: ",sinbajar; Leercoeficiente2_b;Imprimir"Entre el valor del coeficiente c: ",sinbajar; Leercoeficiente3_c; //ImpresióndelosdatosdeentradaImprimir"";Imprimir"Los coeficientes son a = ",coeficiente1_a,", b = ",coeficiente2_b,", c = ",coeficiente3_c;//Chequeodeargumentos(coeficientes)deentradaSicoeficiente1_a=0EntoncesSicoeficiente2_b=0EntoncesSicoeficiente3_c=0EntoncesEscribir"No hay ecuación, la expresión entrada es el número cero y la ecuación se reduce a 0=0";Sino//elcoeficiente3noesceroEscribir"Contradicción, la expresión entrada es un número y la ecuación es falsa",coeficiente3_c," = 0";FinSiSino//elcoeficiente2noesceroEscribir"La expresión entrada es a una ecuación lineal";Escribir"Solución: x = -c/a, x = ",-coeficiente3_c/coeficiente2_b;FinSiSino//llevandoexpresióndeentradaaexpresiónmasestándar-1*x^2=>-x^2,1*x^2=>x^2"Imprimir"";Imprimir"La ecuación Cuadrática es: ",sinbajar;expresionMat=""Sicoeficiente1_a=-1EntoncesexpresionMat=expresionMat+"-"SinoSinocoeficiente1_a=1EntoncesexpresionMat=expresionMat+ConvertirATexto(coeficiente1_a)+"*";FinSiFinSiexpresionMat=expresionMat+"x^2"Sicoeficiente2_b<>0EntoncesSicoeficiente2_b>0EntoncesexpresionMat=expresionMat+"+"FinSiSicoeficiente2_b=-1EntoncesexpresionMat=expresionMat+"-"SinoSinocoeficiente2_b=1EntoncesexpresionMat=expresionMat+ConvertirATexto(coeficiente2_b)+"*";FinSiFinSiexpresionMat=expresionMat+"x"FinSiSicoeficiente3_c<>0EntoncesSicoeficiente3_c>0EntoncesexpresionMat=expresionMat+"+"FinSiexpresionMat=expresionMat+ConvertirATexto(coeficiente3_c)FinSiImprimirexpresionMat+"0"//Cálculosdiscriminante=coeficiente2_b^2-4.0*coeficiente1_a*coeficiente3_c;Imprimir"La fórmula del Discriminante de la ecuación cuadrática es: D = b^2 -4*a*c";Escribir"D = ",discriminante;//informacióndelasraícesSidiscriminante==0EntoncesEscribir"";Escribir"Como el discriminante es 0 entonces hay 2 soluciones iguales de números reales"Escribir"o que es lo mismo, 1 solución en los números reales con multiplicidad 2"Escribir"(la parábola sólo toca en un solo punto al eje de las abscisas X)";banderaDiscriminante:=1;SinoSidiscriminante<=0EntoncesEscribir"";Escribir"Como el discriminante es negativo entonces hay 2 soluciones en los números complejos, (un numero complejo y su conjugado)"Escribir"(la parábola no corta al eje de las abscisas X)";banderaDiscriminante:=0;Sino//discriminante>=0Escribir""; Escribir"Como el discriminante es positivo entonces hay 2 soluciones diferentes de números reales"escribir"(la parábola cruza dos veces el eje de las abscisas X)";banderaDiscriminante:=2;FinSiFinSi//cálculodelasraícesSegunbanderaDiscriminanteHacercaso0:Escribir""raiz1ParteReal:=-coeficiente2_b/(2*coeficiente1_a);raiz1ParteImag:=raiz(-discriminante)/(2*coeficiente1_a);raiz2ParteReal:=raiz1ParteReal;raiz2ParteImag:=-raiz1ParteImag; numComplejo1[parteReal]=raiz1ParteReal;numComplejo1[parteImag]=raiz1ParteImag;numComplejo2[parteReal]=raiz2ParteReal;numComplejo2[parteImag]=raiz2ParteImag;Escribir""Escribir"Primera raiz: ",numComplejo1[parteReal]sinbajarSinumComplejo1[parteImag]>=0EntoncesImprimir"+",numComplejo1[parteImag]sinbajarsinoImprimirnumComplejo1[parteImag]sinbajarFinSiEscribir"*i"Escribir"Segunda raiz: ",numComplejo2[parteReal]sinbajarSinumComplejo2[parteImag]>=0EntoncesImprimir"+",numComplejo2[parteImag]sinbajarsinoImprimirnumComplejo2[parteImag]sinbajarFinSiEscribir"*i"Imprimir"ParteReal = ",raiz1ParteRealImprimir"parteImag = ±",raiz1ParteImagcaso1:Escribir""raiz1:=-coeficiente2_b/(2*coeficiente1_a);raiz2:=raiz1; // Raiz1 == Raiz2 (multiplicidad 2)Escribir"raiz 1: ",raiz1; Escribir"raiz 2: ",raiz2; caso2:Escribir""raiz1:=(-coeficiente2_b+raiz(discriminante))/(2*coeficiente1_a);raiz2:=(-coeficiente2_b-raiz(discriminante))/(2*coeficiente1_a);//OrdenandoraícesdemenoramayorparaunamejorimpresiónSiraiz1>=raiz2EntoncesraizMayor:=raiz1;raiz1=raiz2;raiz2=raizMayor;FinSiEscribir"Primera raiz: ",raiz1;Escribir"Segunda raiz: ",raiz2;//DeOtroModo:FinSegunEscribir""Escribir"Comprobación de las soluciones"Escribir"La suma de las raíces se calcula con la formula s=-b/a, s = ",-coeficiente2_b/coeficiente1_aEscribir"prueba sumando las raíces = "sinbajarSibanderaDiscriminante=0EntoncesEscribir(raiz1ParteReal+raiz2ParteReal)+(raiz1ParteImag+raiz2ParteImag)SinoEscribirraiz1+raiz2FinSiEscribir""Escribir"El producto de las raíces se calcula con la formula m=-b/a, m = ",coeficiente3_c/coeficiente1_aEscribir"prueba con las raices = "sinbajarSibanderaDiscriminante!=0EntoncesEscribirraiz1*raiz2SinoEscribir((raiz1ParteReal*raiz2ParteReal)-(raiz1ParteImag*raiz2ParteImag))+((raiz1ParteReal*raiz2ParteImag)+(raiz1ParteImag*raiz1ParteReal))FinSiEscribir""FinSiFinProceso//Ejemplosparaprobarlostrescasos//ejp1:1*X^2+2*X+3raises{-1+1.4142*i,-1-1.4142*i}//ejp2:1*X^2-11.6*X+33.64raíces{5.8,5.8}//determinantecero//ejp3:1*X^2-5*X+6raíces{2,3}//determinantemayorquecero//ejp4:-5*X^2+6*X+9raices{-.86969384567,2.06969384567}
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hola, la tabulacion para el siguiente caso falla
Qué pena, el código anterior tiene muchos errores ortográficos, los corregí en la más reciente versión de mi programa