elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


  Mostrar Mensajes
Páginas: 1 ... 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 [48] 49
471  Programación / Programación C/C++ / Re: Calcular la intersección de dos segmentos en: 31 Octubre 2011, 23:11 pm
Ah, muchas gracias a ti también.

Todavía no he estudiado los tipos de librerías, así que no conocía la de <iostream>, pero muchas gracias, estoy practicando con este tipo ahora ^^
472  Programación / Programación C/C++ / Re: Calcular la intersección de dos segmentos en: 31 Octubre 2011, 14:40 pm
Ah, muchas gracias a ti también.

Por ahora lo voy a hacer así, porque estoy empezando, supongo que en los manuales vendrá después cómo usar esos conceptos.

De todas formas voy a probar.

Gracias de nuevo.
473  Programación / Programación C/C++ / Re: Calcular la intersección de dos segmentos en: 31 Octubre 2011, 02:08 am
¡Muchísimas gracias! He estado toda la noche mirando todo el código, y al final era solo poniendo & en vez de ",".

474  Programación / Programación C/C++ / Calcular la intersección de dos segmentos en: 31 Octubre 2011, 01:43 am
Hola.

Estoy haciendo un programa en c++; el cual debe calcularme la intersección entre dos segmentos.

Tengo planteado todo el problema.  Y además, me calcula bien casi todos los tipos de intersecciones.

Mi código es:

Código:

//Este programa calcula la interseccion de dos segmentos

#include<stdio.h>
#include<stdlib.h>

int main (void){
   
    float a,b,c,d;
   
    printf("\n Introduzca el primer numero del primer segmento");
    scanf ("%f",&a);
 
    printf("\n Introduzca el segundo numero del primer segmento");
    scanf ("%f",&b);
   
    printf("\n Introduzca el primer numero del segundo segmento");
    scanf ("%f",&c);
   
    printf("\n Introduzca el segundo numero del segundo segmento");
    scanf ("%f",&d);
   
   
          if (b<c){
          printf ("La interseccion es vacia");
          }
          else { if (a>d)
          printf ("La interseccion es vacia"); 
         
          else {if (a<c, b>d)
                   printf ("La interseccion es %f,%f", c,d);
                    else
                     {if (a>c, b>d)
                 printf ("La interseccion es %f,%f", a,d);
                 
              else {
          if (a<c, b==d) {
                   printf ("La interseccion es %f,%f", c,b);
                   }
                   else {if (a==c, b==d)
                   printf ("La intersección es %f,%f", a,c);
                   
           
           
     
            else {
          if (b==c){
          printf ("La interseccion es el punto %f",b);
          }
       
   
          else { if (a==d)
          printf ("La interseccion es el punto %f",a);
                   
                   
                   
          else{
          if (a<c, b>d) {
                   printf ("La interseccion es %f,%f", c,d);
                   }
                   
                   
                   }}}}}}}}
           
   system("pause");
}



Bien; ahora planteo el problema... Me coge bien todas las intersecciones, excepto los dos tipos siguientes:

Código:
else {if (a<c, b>d)
                   printf ("La interseccion es %f,%f", c,d);
                    else
                   
                  {if (a>c, b>d)
                 printf ("La interseccion es %f,%f", a,d);

Al ir cambiando el código, siempre me sale bien uno de los dos tipos de intersecciones de arriba, pero no soy capaz de que me salgan los dos a la vez. Con eso, completaría el programa que estoy creando.

Muchas gracias.
475  Programación / Programación C/C++ / Re: Problema al elevar a 1/2 en: 30 Octubre 2011, 15:19 pm
En vez de usar 1/2 usa 0.5 y ya o (float)1/2

Ah, muchísimas gracias; ya me sale bien el resultado poniendo (float)1/2 ^^

Bueno, problema resuelto. Gracias a todos.
476  Programación / Programación C/C++ / Re: Problema al elevar a 1/2 en: 30 Octubre 2011, 14:54 pm
Es lo mismo. De hecho, creo que es más rápido pow(), aunque no puedo ponerte donde lei eso.
Intenta a hacer esa misma division, justo una línea de ejecución antes, y haciendo la operación con float..

Muchas gracias a todos.

¿Qué tendría que poner para hacer eso? Estoy iniciándome en C++, y no tengo muchos conocimientos...
477  Programación / Programación C/C++ / Re: Problema al elevar a 1/2 en: 30 Octubre 2011, 14:32 pm
Tal vez haga division entera, entonces 1 / 2 no da 0.5 (en division entera da 0).
La otra posibilidad es que te calcule la division, de 0.5, y pase a entero, pudiendo dar 0 como 1, depende de como este configurado todo.

Cierto, he puesto el ejemplo de poner que ambos catetos son 2, y me ha dado 1, cosa que si lo elevamos a 0, da 1.

Entonces, ¿qué podría hacer para que al elevarlo a 1/2 de lo que debe dar? Aunque al elevarlo a 0.5 ya me de bien el resultado de la hipotenusa, solo es por curiosidad...

Muchas gracias ^^
478  Programación / Programación C/C++ / Problema al elevar a 1/2 en: 30 Octubre 2011, 12:09 pm
Hola.

Estoy haciendo un programa en C++ en el que introduces la longitud de dos catetos y te calcula la hipotenusa. Lo tengo terminado, lo único que, como todos sabemos 1/2 es 0.5. Pues bien, si pongo lo siguiente:

Código:
// Dada la longitud de dos catetos calcular la hipotenusa

#include<stdio.h>
#include<stdlib.h>
#include<math.h>

int main (void){
     float c1,c2,h;
     
      printf("Introduzca el valor de un cateto");
      scanf("%f",&c1);
     
     
      printf("Introduzca el valor del otro cateto");
      scanf("%f",&c2);
     
      h= pow (c1*c1+c2*c2,1/2);
     
      printf("El valor de la hipotenusa es %f",h);
     
    system("pause");
}

Ahí me calcula mal la hipotenusa. Sin embargo, si en la fórmula lo elevo a 0.5; sí me la calcula bien, cuando 1/2=0.5

Código:
// Dada la longitud de dos catetos calcular la hipotenusa

#include<stdio.h>
#include<stdlib.h>
#include<math.h>

int main (void){
     float c1,c2,h;
     
      printf("Introduzca el valor de un cateto");
      scanf("%f",&c1);
     
     
      printf("Introduzca el valor del otro cateto");
      scanf("%f",&c2);
     
      h= pow (c1*c1+c2*c2,0.5);
     
      printf("El valor de la hipotenusa es %f",h);
     
    system("pause");
}

Muchas gracias.
479  Programación / Programación C/C++ / Re: Inicio en programación en: 1 Septiembre 2011, 11:10 am
Acabo de descargarme Python con un tutorial, y la verdad, es más fácil que C  :D

Aprenderé Python lo máximo posible, y después seguiré con C (según me han dicho Python es como C pero en reducido).
480  Programación / Programación C/C++ / Re: Inicio en programación en: 31 Agosto 2011, 19:42 pm
¡Muchas gracias! Entonces el tema ya está solucionado.

Páginas: 1 ... 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 [48] 49
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines