Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

Halp

Name: Anonymous 2013-02-10 22:15

I don't know what the fuck is wrong with this shit, it stays looped in the iterations and doesn't print any results

#include <cstdlib>
#include <iostream>
#include <cmath>

using namespace std;

int main ()
{
    // declaracion de variables
    float pa, pb, pc, fa, fb, fc, error;
    int n, itera, exito, fallo;
   
    // captura de datos necsarios del metodo
    system ("cls");
    printf("datos necesarios para el calculo de la raiz de una\n");
    printf("ecuacion utilizando el metodo de biseccion para la\n");
    printf("ecuacion x^3+2x^2-10                                 \n");
    printf("--------------------------------------------------\n");
    printf("intervalo punto A................\n");
    scanf("%f", &pa);
    printf("intervalo punto C................\n");
    scanf("%f", &pc);
    printf("precicion de calculo:............\n");
    scanf("%f", &error);
    printf("limite de iteraciones de calculo.: ");
    scanf("%f", &n);
   
    // encabezado de datos
    system("cls");
    printf("                INSTITUTO TECNOLOGICO DE CULIACAN\n");
    printf("                       ingenieria mecanica     \n\n");
    printf("metodos numericos:\n");
    printf(" No.       A          B        C           FA          FB         FC\n");

    printf("------------------------------------------------------------\n");  
   
    //calcula la funcion de cada punto del segmento
    fa=(pa*pa*pa)+(2*pa)-10;
    fc=(pa*pa*pa)+(2*pa)-10;
    fallo=0;
    exito=0;
    itera=1;
   
    do
    {
     //calcula el punto intermedio del segmento y su funcion
     pb= (pa+pc)/2;
     fb=(pb*pb*pb)+(2*pb)-10;
           
     //impresion de datos
     printf("%i %10.6f 10.6f 10.6f  10.6f  10.6f 10.6f \n", itera, pa, pb, pc, fa, fb, fc);
    
     // preguntar si ya se encontro la raiz
     if (abs(fb)<=error)
     {
         //se encontro la raiz }
         exito=1;
         }
         else
         {
             // pregunta si en el calculo no hubo cambios de signo
             // debido a que si no hay cambio de signo en el calculo
             // de raices no tiene solucion
             if ( ( (pa>0) && (fa>0) ) || ( (pa<0) && (fa<0) ) &&
                ( (pb>0) && (fb>0) ) || ( (pb<0) && (fb<0) ) &&
                ( (pc>0) && (fc>0) ) || ( (pc<0) && (fc<0) ) )
            {
                // no hubo cambio de signo
                fallo=1;
            }
            else
            {
                // debe existir un cambio de signo en alguna de las variables
                if ( ( (pa<0) && (fa>0) ) || ( (pa>0) && (fa<0) ) ||
                    ( (pb<0) && (fb>0) ) || ( (pb>0) && (fb<0) ) )
                {
                    //se dio un cambio de signo en el segmento A-B
                    pc=pb;
                    fc=fb;
                    itera=itera+1;
                }
                else
                {
                    // entonces se dio un cambio de signo en el segmento B-C}
                    pa=pb;
                    fa=fb;
                    itera= itera+1;
                    };
                };
            };
            if ( itera > n) fallo=1;
         }  while ( (exito==0) && (fallo==0) );
         printf("-------------------------------------------------------\n");
          printf("\n\n\n\n");
         
          //pregunta cual fue la fotma en la que salio del bucle repetitivo
          if (fabs(fb)<error)
          {
             //se encontro la raiz }
             printf("la raiz de la ecuacion= %10.6f \n\n\n", pb);
          };
         
          if (itera>=n)
          {
           //no se encontro la raiz. se cumplio el numero maximo de iteraciones}
           printf("No se encontro la raiz en %i calculos...\n\n\n", n);
          };
         
          if (fallo==1)
          {
                       //no hubo cambio de signo
                       printf("El proceso se detubo por que no existe cambio de signo por\n");
                       printf("lo tanto esta ecuacion no tiene raiz en este segmento.\n");
                       printf("cambie los valores de los puntos iniciales y proceda de nuevo...\n\n\n\n");
          };
          system("PAUSE");
          return EXIT_SUCCESS;
          }
            
       

Please tell me if there is anything wrong in my code

Name: Anonymous 2013-02-10 22:19

there is something wrong in your code

Name: Anonymous 2013-02-10 22:26

It's written in Spanish.

Name: Anonymous 2013-02-10 22:27

Por favor pregunte en Stack Overflow, Juan.

Name: Anonymous 2013-02-10 22:28

El gato en mis pantalones quiere mi burrito, pero no puede tener mi burrito.

Name: Anonymous 2013-02-10 22:35

Sorry, I don't speak brown people languages. You must assure me that you are from Spain and not a bean-republic before I can help you.

Name: Anonymous 2013-02-10 22:37

le white pride worldwide

Name: Anonymous 2013-02-10 22:49

Consider this...
while ( (exito==0) && (fallo==0) )
That's all the homework help you are getting.

Name: Anonymous 2013-02-10 23:21

>>1
lol.. nice trolling :) 6/10

Name: Anonymous 2013-02-11 0:08

>>6
illogical racist cretin.

Name: Anonymous 2013-02-11 0:16

>>10
Bitte Ruhe. >>6 must be vastly superior to "brown colored" people from the countries which keep the primary activities alive.  Besides, I'm guessing they don't really care about what an unhappy shitposter thinks.

Don't change these.
Name: Email:
Entire Thread Thread List