Aprende poco a poco

¡No tengas prisa! Nadie nació sabiendo un idioma. Y por supuesto, nadie nació sabiendo programar. Es algo fundamental que debes tener en cuenta, y por eso, no debes desesperarte si ves que no te salen las cosas bien al principio. No te preocupes, por eso estamos aquí, para aprender a manejar poco a poco la programación.

Antes de empezar, una guía básica

Los problemas propuestos que verás más adelante, son ejercicios que van desde lo más básico, hasta lo más complejo que verás en esta web. Pero antes de entrar en los problemas, te recomiendo que te veas este video que grabé hace tiempo. Tal y como digo en el video, en un principio lo hice pensando en un amigo, que acababa de empezar la carrera de ingeniería, pero después pensé en que podía ser de utilidad para todos, y lo publiqué. En él, explico paso por paso, distintos puntos de la programación básica en C que planteo en la web. Evidentemente, no puedes empezar a hacer problemas sin antes haber mirado algo de teoría. El video es largo, si, pero es un buen resumen de todo lo básico que necesitas. Míralo; te será útil.

Lista de problemas


  1. Programa que imprima por pantalla "Estoy aprendiendo a programar" y tras un salto de linea imprima "Poco a poco aprenderé mas"
  2. Programa que te pida un numero del tipo que quieras, y te imprima por pantalla que numero has tecleado.
  3. Programa que te pida 3 números, y se impriman siendo uno de tipo 'int', otro de tipo 'float', y otro de tipo 'double'.
  4. Programa que te pida 3 numeros, y calcule la suma, resta, y producto de ellos.
  5. Programa que te pida 3 numeros, te de a elegir si quieres sumarlos o restarlos, y te de la soluion de la opcion que hayas elegido.
  6. Programa que pida un numero y diga si es par o impar.
  7. Programa que pida un numero y diga si es positivo o negativo.
  8. Programa que pida una letra y diga si es una vocal o no (hacerlo con la sentencia de "if/else").
  9. Programa que pida una letra y diga si es una vocal o no (hacerlo con la sentencia de "switch").
  10. Programa que pida 3 numeros y diga si el tercero es la suma de los dos primeros.
  11. Programa que te pida un numero, que te pida a que exponente quieres elevarlo, y que te de un resultado.
  12. Programa que te pida 5 numeros de tipo 'float' y que el programa te de un resultado siguiendo esta operacion: A + B x (C^D / E).
  13. Programa que te calcule el coste de una llamada telefonica, si se tiene en cuenta que la llamada telefonica cuesta 0.65 euros el minuto.
  14. Programa que te calcule el coste de una llamada telefonica, si durante los 5 primeros minutos te cuesta 0.43 euros el minuto, si durante los 10 minutos siguientes la llamada cuesta 0.67 euros el minuto, y si durante el resto del tiempo la llamada cuesta 0.82 euros el minuto.
  15. Programa que te pida un numero y que te lo siga pidiendo hasta que introduzcas un 0 (hacerlo con la sentencia "while").
  16. Programa que te pida un numero, y te lo siga pidiendo hasta que no te haya pedido un numero 8 veces (hacerlo con la sentencia "do/while").
  17. Programa que te pida un numero, y que el programa te imprima cuanto vale la mitad de este numero. Que el programa repita una y otra vez la misma ejecucion hasta que introduzcas un 0, y al final el programa te diga de cuantos numeros distintos de cero han sido introducidos (hacerlo con la sentencia "while").
  18. Programa que te imprima los numeros del 1 al 20 (hacerlo con la sentencia del bucle "for").
  19. Programa que te diga de entre los numeros 1 y 100, cuales son multiplos de 4 (hacerlo con la sentencia del bucle "for").
  20. Programa que imprima los numeros de 10 en 10 a partir del 0 (hacerlo con la sentencia del bucle "for").
  21. Programa que te imprima la hora. Partireis del segundo 0, minuto 0, y hora 0. A cada segundo que pase, el programa deberá imprimir por pantalla que hora es. Para ello debereis usar la libreria <windows.h> para el uso de la funcion "Sleep". Si en un programa, en una linea de codigo escribis "Sleep(1000);", el programa se dormira un segundo. De esta forma, si conseguis que el programa imprima la hora una y otra vez, pero cada vez que la imprime tiene que "dormirse" un segundo, conseguireis el reloj.
  22. Programa que te pida 5 numeros, los guarde en un vector, y despues los imprima.
  23. Programa que te pida numeros, que los guarde en un vector, y que no pare de pedirte numeros hasta que no introduzcas un 0. Despues, te los imprime por pantalla, y tambien la cantidad de numeros antes del 0 que has introducido.
  24. Programa que te pida tu nombre, y despues imprima como te llamas. 
  25. Programa que te pide 10 numeros que almacena en un vector, y te los imprime ordenados de menor a mayor. 
  26. Programa que te pide 10 numeros que almacena en un vector, y te los imprime ordenados de mayor a menor.
  27. Programa que te pide que le escribas una frase, que la almacene en un vector, y que despues te la imprima.  
  28. Programa que te pide que le escribas una frase, que la almacene en un vector, y que despues te la imprima. Ademas, debera imprimir de cuantos caracteres se compone tu frase. 
  29. Programa que te pregunte si quieres que dibuje un cuadrado o un triangulo rectangulo, y que en funcion de la eleccion, dibuje una cosa o la otra. Las figuras deberan ser de dimension 10 (hacerlo con la sentencia del bucle "for"). 
  30. Programa que te pida que le introduzcas los valores de una matriz de 3x3 y despues la imprima (hacerlo con el uso de vectores). 
  31. Programa que te pida que le introduzcas los valores de dos matriz de 3x3 y despues imprima la suma de ambas matrices (hacerlo con el uso de vectores). 
  32. Programa que te pregunte si quieres que dibuje un cuadrado. El usuario indicara de que tamaño, y el programa cuardara ese cuadrado en un vector de 'x' filas y 'x' columnas (esa incognita se despejara segun la dimension que pida el usuario) y el programa guardara el cuadrado dentro de un vector que despues imprimirá. 
  33. Dentro de una empresa de marketing, se encuentran trabajando 200 empleados, 40 supervisores, 10 secretarios, y 1 director. La improtancia de su puesto laboral aumenta conforme se han ido nombrando antes. De los beneficios que saca la empresa, un 40% se destina a los empleados, un 20% se destina a los supervisores, otro 20% se destina a los secretarios, y el 20% restante se lo queda el director. Siguiendo un termino medio, el 27% de las ganancias totales (osea, del 100% de los beneficios) se destina a pagar facturas, gastos de empresa, etc. Escribe un programa en el que introduzcas los beneficios obtenidos, y calcule e imprima el reparto de sueldos para cada sector de la empresa. 
  34. Programa en el que introduzcas dos numeros, y te calcule la suma de ambos en una funcion fuera de 'main' (hacerlo con el uso de funciones). 
  35. Programa el que introduzcas dos numeros, y puedas elegir si quieres hacer la suma, resta o producto de ellos. Cada operacion se hará en una funcion distinta (hacerlo con el uso de funciones). 
  36. Programa que te pide 10 numeros que almacena en un vector, y te los imprime ordenados de menor a mayor (hacerlo con el uso de funciones). 
  37. Programa que te pide 10 numeros que almacena en un vector, y te los imprime ordenados de mayor a menor (hacerlo con el uso de funciones). 
  38. Programa que te imprima las instrucciones de como jugar al 3 en raya en una funcion, y de como jugar al 4 en raya en otra (hacerlo con el uso de funciones). 
  39. Programa que te pida el valor de un numero, que en otra funcion se convierta en el doble de su valor, y que en 'main' imprima ese valor (hacerlo con el uso de funciones y punteros). 
  40. Programa que te pida dos numeros, y que en una funcion aparte, se sumen entre ellos una y otra vez hasta que la suma final sea superior a 100. Despues decir cuantas veces se ha tenido que repetir el proceso (hacerlo con el uso de funciones y punteros). 
  41. Programa que decodifique (es decir, de Morse a Alfanumérico) mensajes según el sistema Morse (buscar en que se basa el sistema Morse). Implemente un programa en C que lea por teclado con la función 'gets()' el mensaje codificado en Morse e imprima en pantalla el mensaje correspondiente (hacerlo con todo lo aprendido anteriormente). 
  42. Programa en C que recibe como argumento un número entero (mayor que cero y menor que 1000) y calcule y devuelva su cubo utilizando los números de Nicómaco (c. 100 d.C., Gerasa): 

    1^3 = 1 = 1
    2^3 = 3 + 5 = 8
    3^3 = 7 + 9 + 11 = 27
    4^3 = 13 + 15 + 17+ 19 = 64

    Nota: la serie va sumando los impares de manera sucesiva. La función debe devolver un entero que indique si el cálculo ha sido correcto (devolverá un 0 si el parámetro está en el rango prefijado) o incorrecto si no se ha calculado la secuencia (devolverá un -1 si está fuera del rango). Hay varias formas de hacerlo. Una es dándose cuenta que el impar por el que empieza una lista es la multiplicación del número que voy a calcular con el anterior más 1 y que el número de impares que se suman es igual al número. Por ejemplo, para el 4 al cubo hay que sumar 4 impares y se empieza por el 13 que es 4 * 3 + 1. Así se cumple con todos (hacerlo con todo lo aprendido anteriormente).
  43. Programa en C que pida por teclado los valores necesarios para calcular el volumen de un barril y muestre el resultado. Deberá asegurarse de que los valores introducidos sean positivos mayores que cero y que el diámetro mayor sea más grande que el diámetro menor. El volumen de un barril se calcula asi: pi*h*(2D^2 + d^2) / 3, siendo 'h' la altura del barril, 'D' el diametro mayor, y 'd' el diametro menor (hacerlo con todo lo aprendido anteriormente).
  44.  Programa que determine si un vector que almacena una serie de numeros a introducir por el usuario, si de esos numeros que almacena, al menos una tercera parte de ellos son multiplos de 8. Debera usarse una funcion aparte para hacer dicha comprobacion (hacerlo con todo lo aprendido anteriormente).


Si has llegado hasta aquí y has podido resolverlos todos, ¡enhorabuena!

© Todos los derechos de cada programa publicado en la web son reservados
Imágenes creadas en Canva
Creado con Webnode Cookies
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar