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

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [C] Estructuras
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [C] Estructuras  (Leído 2,593 veces)
yuna88

Desconectado Desconectado

Mensajes: 11


Ver Perfil
[C] Estructuras
« en: 15 Marzo 2014, 16:45 pm »

¡Hola, buenas tardes!

Ando un poco liada con el tema de las estructuras y me gustaría que me echarais una mano ¡porque me estoy volviendo loca! :(

Tengo el siguiente problema y no se bien bien cómo plantearlo:
Cread un tipo de dato Coordenada (usad typedef) que permita almacenar las componentes x e y de un punto en el espacio bidimensional.
Haz un programa que lea las coordenadas de dos puntos y nos devuelva  la distancia en línea recta entre ellos. Recordad que...



La función que hace la raíz cuadrada es sqrt que pertenece a la librería math.h Pero no se cómo poner semejante fórmula :S

Pienso que habría que hacer algo similar a esto:
Código
  1. typedef struct coord Coordenada;
  2. Coordenada inicio, destino;
  3. destino.x=12;
  4. destino.y=10;


Pero ando muy pez en el tema y no se cómo seguir. Por ello, os pido vuestra valiosa ayuda.

Muchas gracias por vuestro esfuerzo.

Un saludo :-*


« Última modificación: 15 Marzo 2014, 23:03 pm por yuna88 » En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: [C] Estructuras
« Respuesta #1 en: 15 Marzo 2014, 17:05 pm »

Obtienes los dos puntos de alguna forma, a continuacion obtienes la hipotenusa del triangulo rectangulo con:
Código
  1. hipotenusa = sqrt(x * x + y * y);

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
El Benjo


Desconectado Desconectado

Mensajes: 392



Ver Perfil WWW
Re: [C] Estructuras
« Respuesta #2 en: 15 Marzo 2014, 18:30 pm »

No estabas lejos de la realidad pero lo que debes hacer primero es declarar la estructura de la forma:

Código
  1. struct Coordenada{
  2.  int X;
  3.  int Y;
  4. }

Recuerda que el "typedef" sólo te sirve para que cuando declares las variables de un tipo de estructura no tengas que declararlas usando "struct" al inicio de la declaración y simplemente puedas hacer:

Código
  1. Coordenada inicio, destino;
En línea

www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.
yuna88

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: [C] Estructuras
« Respuesta #3 en: 16 Marzo 2014, 13:42 pm »

Hola, buenos días,

Llevo un buen rato dándole vueltas al problema y no me sale bien :( Os pongo el código que llevo echo hasta ahora:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5. int main()
  6. {
  7.     struct coordenada{
  8.     int x;
  9.     int y;
  10.    } coordenada;
  11.  
  12.    typedef struct coordenada inicio;
  13.    typedef struct coordenada destino;
  14.  
  15. printf("Introduce la coordenada x1: \n");
  16. scanf("%d",&inicio.x);
  17. fflush(stdin);
  18. printf("Introduce la coordenada y1: \n");
  19. scanf("%d",&inicio.y);
  20. fflush(stdin);
  21. printf("Introduce la coordenada x2: \n");
  22. scanf("%d",&destino.x);
  23. fflush(stdin);
  24. printf("Introduce la coordenada y2: \n");
  25. scanf("%d",&destino.y);
  26. fflush(stdin);
  27.  
  28.  
  29. system("PAUSE");
  30. return 0;
  31. }

Espero que me podáis ayudar.

Un saludo  :-*
En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: [C] Estructuras
« Respuesta #4 en: 16 Marzo 2014, 14:07 pm »

Pero si solo has leído los datos :huh:

La formula ya te la escribieron unas líneas atrás...
En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
yuna88

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: [C] Estructuras
« Respuesta #5 en: 16 Marzo 2014, 14:15 pm »

Pero si solo has leído los datos :huh:

La formula ya te la escribieron unas líneas atrás...

El problema es que en cada línea printf, me sale el siguente error al compilar: [Error] expected expression before 'inicio'

Por eso, no puedo continuar.

Un saludo  :-*
En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: [C] Estructuras
« Respuesta #6 en: 16 Marzo 2014, 14:29 pm »

Los errores que mencionas se generan porque tratas de utilizar los alias (solo necesitas uno) como si fueran nombres de variables.

Debe ser:
Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <math.h>
  4.  
  5. /* 1) Se declara el tipo y su nombre alternativo (alias) */
  6. struct coordenada {
  7.   int x;
  8.   int y;
  9. };
  10. typedef struct coordenada coord;
  11.  
  12. int main(void)
  13. {
  14.   /* 2) Se declaran las variables necesarias */
  15.   coord a;
  16.   coord b;
  17.  
  18.   /* 3) Lectura de datos */
  19.   puts("Introduce la coordenada x1:");
  20.   scanf("%d", &a.x);
  21.   puts("Introduce la coordenada y1:");
  22.   scanf("%d", &a.y);
  23.  
  24.   puts("Introduce la coordenada x2:");
  25.   scanf("%d", &b.x);
  26.   puts("Introduce la coordenada y2:");
  27.   scanf("%d", &b.y);
  28.  
  29.   /* Calculo de la hipotenusa */
  30.  
  31.   return EXIT_SUCCESS;
  32. }

Y si vas a imprimir en la salida estándar una cadena literal terminada en '\n' utiliza la función puts en lugar de printf. Por ultimo evita el uso de fflush(stdin), las razones de ello en el tema |Lo que no hay que hacer en C/C++. Nivel basico|.

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Estructuras.....
Programación C/C++
Rodri 1 2,713 Último mensaje 6 Octubre 2011, 19:46 pm
por satu
Estructuras en C++
Programación C/C++
jjrl1984 1 1,856 Último mensaje 18 Diciembre 2012, 02:27 am
por naderST
Estructuras en C
Programación C/C++
Redisteon 1 1,777 Último mensaje 10 Agosto 2013, 10:39 am
por Eternal Idol
Estructuras en C
Programación C/C++
Redisteon 4 2,407 Último mensaje 11 Agosto 2013, 19:25 pm
por amchacon
Estructuras en C « 1 2 »
Programación C/C++
Yc 12 4,877 Último mensaje 23 Marzo 2014, 15:07 pm
por Yc
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines