No. 18 de 56 de articulos. Practicas C

Articulos encontrados...

Prácticas y Ejercicios con Solución


Ejercicios  con solución y prácticas resueltas de programación en c,nuevos ejercicios de programación en lenguaje C. El enunciado de las prácticas y ejercicios que se plantea es el siguiente y ha sido solicitado por un visitante del blog, al cual agradecemos mucho su visita:

El siguiente ejercicio propuesto por uno de nuestro seguidores al blog www.aprendoencasa.com que nos propone unos ejercicios o prácticas en la que se ha de calcular utilizando formulas correspondientes al tiro parabólico , se ha de solicitar la posición en X e Y  del blanco al cual se quiere disparar, ha continuación se ha de pedir la velocidad inicial de la bala de cañón y por ultimo se le permite al usuario especificar hasta cinco ángulos de disparo, una vez solicitado un Angulo se ha de comprobar si se ha hecho blanco en el mismo, en caso de no ser así volver a solicitar el Angulo como máximo cinco veces. Se ha de tener en cuenta que para este programa se utilizan variables con una gran precisión decimal, y de hecho si no se teclean las variables que se solicitan con todos los decimales necesarios el programa no dirá que has acertado en el blanco, se deja a libre elección del usuario el redondear los datos de entrada y de salida para obtener un resultado mas claro aunque mas impreciso.

Para realizar las practicas o consultar los ejercicios de programación resueltos has de pulsar sobre el enlace a continuación denominado “LEER EL ARTICULO COMPLETO”. Recuerda también darnos ánimos haciendo un clic en el botón google+1 de la columna izquierda o el que esta situado en la parte superior del articulo, así como recomendar la visita a nuestra página a tus amigos.

Ejercicios y practicas de programación en c resueltos o con solución

El ejercicio planteado es el siguiente:

Ejercicios y Practicas resueltas en lenguaje de programación en C

se ha de calcular utilizando formulas correspondientes al tiro parabólico , se ha de solicitar la posición en X e Y  del blanco al cual se quiere disparar, ha continuación se ha de pedir la velocidad inicial de la bala de cañón y por ultimo se le permite al usuario especificar hasta cinco ángulos de disparo, una vez solicitado un Angulo se ha de comprobar si se ha hecho blanco en el mismo, en caso de no ser así volver a solicitar el Angulo como máximo cinco veces. Se ha de tener en cuenta que para este programa se utilizan variables con una gran precisión decimal, y de hecho si no se teclean las variables que se solicitan con todos los decimales necesarios el programa no dirá que has acertado en el blanco, se deja a libre elección del usuario el redondear los datos de entrada y de salida para obtener un resultado mas claro aunque mas impreciso.

La solución de los ejercicios que se plantean es la siguiente:

/*

Un usuario de este nuestro/vuestro blog www.aprendoencasa.com nos ha
propuesto un ejercicio o práctica en la se ha de calcular utilizando
formulas correspondientes al tiro parabólico , se ha de solicitar la posición
en X e Y  del blanco al cual se quiere disparar, ha continuación se ha de
pedir la velocidad inicial de la bala de cañón y por ultimo se le permite
al usuario especificar hasta cinco ángulos de disparo, una vez solicitado
un Angulo se ha de comprobar si se ha hecho blanco en el mismo, en caso de
no ser así volver a solicitar el Angulo como máximo cinco veces.
Se ha de tener en cuenta que para este programa se utilizan variables
con una gran precisión decimal, y de hecho si no se teclean las variables
que se solicitan con todos los decimales necesarios el programa no dirá que
has acertado en el blanco, se deja a libre elección del usuario el
redondear los datos de entrada y de salida para obtener un resultado mas
claro aunque mas impreciso.

*/

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

#define PI 3.1415926535897932384626433832795

int main(int argc, char *argv[])
{

    double Pos_X_Blanco;
    double Pos_Y_Blanco;
    double Velocidad;
    int Angulo;
    double Radianes;
    int intentos;
    int acierto=0;
    double DistanciaY;
    double Gravedad=9.8;
    float RedondeoDistanciaY;
    float RedondeoPosY;

    // Definir variables de inicialización

    Pos_X_Canyon = 0.0;
    Pos_Y_Canyon = 0.0;

    printf("\nPosicion X del blanco.....: ");
    scanf(" %lf",&Pos_X_Blanco);
    printf("Posicion Y del blanco.....: ");
    scanf(" %lf",&Pos_Y_Blanco);
    printf("Velocidad Inicial.........: ");
    scanf(" %lf",&Velocidad);

    // realizar la petición de los intentos
    intentos=0;
    while(intentos<5 && acierto==0)
    {
       printf("Angulo......: ");
       scanf(" %d",&Angulo);
       Radianes=(Angulo/180.0)*PI;
      // Calculo de la distancia Y
      //DistanciaY=(Velocidad*(sin(Radianes))*Tiempo)-((1/2)*Gravedad*(Tiempo*Tiempo));
      DistanciaY = tan(Radianes)*Pos_X_Blanco-((Gravedad*(Pos_X_Blanco*Pos_X_Blanco))/(2*(Velocidad*Velocidad)*cos(Radianes)*cos(Radianes)));
       // Si la distancia en Y coincide con la pos Y dada
       RedondeoDistanciaY=DistanciaY;
       RedondeoPosY=Pos_Y_Blanco;
       if ( RedondeoDistanciaY == RedondeoPosY ) {
          printf("Has Acertado");
          acierto=1;
       }
       intentos++;
    }

  system("PAUSE");
  return 0;
}

/*
  Gracias por visitar www.aprendoencasa.com, recomiéndanos a tus amigos.
  de esta forma todos creceremos juntos en nuestro aprendizaje de este
  mundo fantástico de la informática.

*/

Una vez compilado y ejecutado el programa, la siguiente imagen mostraria una ejecución del mismo.

 

Ejercicios y prácticas de programación en c 25 Aprendoencasa

Ejercicios y prácticas de programación en c 25 Aprendoencasa

 

 

Vuelvo a insistir que para que funcione correctamente el programa, se ha de realizar la entrada de datos de forma precisa, y se deja al usuario la opción de redondear los resultados para contemplar la posibilidad de ampliar el rango de acierto en el disparo.

Se ha de recordar a nuestros usuarios, que no pretendo ser arrogante ni imponer ningún sistema de programación y tal como ya he comentado en otras ocasiones, muchos ejercicios tendrán varias posibles soluciones, en la mayoría de casos procuro buscar una solución que sea fácil de entender para los usuarios programadores mas noveles. Vuelvo a repetir que si me enviáis otra solución al ejercicio estaré gustoso de añadirla en el blog para que todos puedan ver diferentes formas de programación. Un saludo y gracias por vuestra visita.

Navegacion SeriesAnterior en la serie...Siguiente en la serie...

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies