0% encontró este documento útil (0 votos)
8 vistas37 páginas

Fundamentos de La Programación I - Tema 9 Práctica UCCAM

El documento presenta una serie de ejercicios de programación en C, abarcando conceptos fundamentales como operaciones aritméticas, funciones, y conversiones de unidades. Cada ejercicio incluye el código fuente y una breve descripción de su funcionalidad, desde la suma de números hasta la conversión de temperaturas y cálculos trigonométricos. Se estructura en un índice que facilita la navegación entre los diferentes ejercicios.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
8 vistas37 páginas

Fundamentos de La Programación I - Tema 9 Práctica UCCAM

El documento presenta una serie de ejercicios de programación en C, abarcando conceptos fundamentales como operaciones aritméticas, funciones, y conversiones de unidades. Cada ejercicio incluye el código fuente y una breve descripción de su funcionalidad, desde la suma de números hasta la conversión de temperaturas y cálculos trigonométricos. Se estructura en un índice que facilita la navegación entre los diferentes ejercicios.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 37

Tema 9 Práctica​

Fundamentos de la
Programación I

Juan Manuel González Díaz​


3/11/2024

1
ÍNDICE:
ÍNDICE:......................................................................................................................................................2
Ejercicio 1:................................................................................................................................................. 3
Ejercicio 2:....................................................................................................................................4
Ejercicio 3:....................................................................................................................................5
Ejercicio 4:....................................................................................................................................6
Ejercicio 5:....................................................................................................................................8
Ejercicio 6:..................................................................................................................................10
Ejercicio 7:..................................................................................................................................11
Ejercicio 8:..................................................................................................................................13
Ejercicio 10:................................................................................................................................15
Ejercicio 11:................................................................................................................................16
Ejercicio 12:................................................................................................................................18
Ejercicio 13:................................................................................................................................21
Ejercicio 14:................................................................................................................................24
Ejercicio 15:................................................................................................................................27
Ejercicio 16:................................................................................................................................31
Ejercicio 17:................................................................................................................................33
Ejercicio 18:................................................................................................................................35
Referencias:............................................................................................................................... 37

2
Ejercicio 1:
#include <stdio.h>

float dividir(float a, float b);

int main() {

float num1, num2, resultado;

printf("Introduce el primer n%cmero: ",163);

scanf("%f", &num1);

printf("Introduce el segundo n%cmero: ",163);

scanf("%f", &num2);

if (num2 == 0) {

printf("Error: No se puede dividir entre cero.\n");

} else {

resultado = dividir(num1, num2);

printf("El resultado de %.2f / %.2f es: %.2f\n", num1, num2, resultado);

return 0;

float dividir(float a, float b) {

return a / b;

3
Ejercicio 2:
#include <stdio.h>

int sumar(int a, int b);

int main() {

int num1, num2, resultado;

printf("Introduce el primer n%cmero entero: ",163);

scanf("%d", &num1);

printf("Introduce el segundo n%cmero entero: ",163);

scanf("%d", &num2);

resultado = sumar(num1, num2);

printf("La suma de %d y %d es: %d\n", num1, num2, resultado);

return 0;

int sumar(int a, int b) {

return a + b;

4
Ejercicio 3:
#include <stdio.h>

double potencia(double base, int exponente) {

double resultado = 1.0;

for (int i = 0; i < exponente; i++) {

resultado *= base;

return resultado;

int main() {

double base;

int exponente;

printf("Introduce la base (a): ");

scanf("%lf", &base);

printf("Introduce el exponente (b): ");

scanf("%d", &exponente);

double resultado = potencia(base, exponente);

printf("%.2lf elevado a %d es: %.2lf\n", base, exponente, resultado);

return 0;

5
Ejercicio 4:
#include <stdio.h>

#include <math.h>

double calcular_expresion(double a, double b, double c) {

if (a == 0) {

printf("Error: El denominador no puede ser cero.\n");

return 0;

double resultado = (pow(b, 2) - 4 * a * c) / (2 * a);

return resultado;

int main() {

double a, b, c;

printf("Ingrese el valor de a: ");

scanf("%lf", &a);

printf("Ingrese el valor de b: ");

scanf("%lf", &b);

printf("Ingrese el valor de c: ");

scanf("%lf", &c);

double resultado = calcular_expresion(a, b, c);

if (a != 0) {

printf("El resultado es: %.2lf\n", resultado);

6
return 0;

7
Ejercicio 5:
#include <stdio.h>

// suma

double suma(int a, int b) {

return a + b;

//resta

double resta(int a, int b) {

return a - b;

// producto

double producto(int a, int b) {

return a * b;

// cociente

double cociente(int a, int b) {

if (b == 0) {

printf("Error: No se puede dividir entre cero.\n");

return 0;

return (double)a / b;

int main() {

8
int num1, num2;

printf("Ingrese el primer n%cmero: ",163);

scanf("%d", &num1);

printf("Ingrese el segundo n%cmero: ",163);

scanf("%d", &num2);

printf("Suma: %d\n", (int)suma(num1, num2));

printf("Resta: %d\n", (int)resta(num1, num2));

printf("Producto: %d\n", (int)producto(num1, num2));

if (num2 != 0) {

printf("Cociente: %.2f\n", cociente(num1, num2));

return 0;

9
Ejercicio 6:
#include <stdio.h>

double suma(int a, int b) {

return a + b;

double suma_tres(int a, int b, int c) {

return suma(suma(a, b), c);

double producto_tres(int a, int b, int c) {

return a * b * c;

double media_tres(int a, int b, int c) {

return suma_tres(a, b, c) / 3.0;

int main() {

int num1, num2, num3;

printf("Ingrese el primer n%cmero: ",163);

scanf("%d", &num1);

printf("Ingrese el segundo n%cmero: ",163);

scanf("%d", &num2);

printf("Ingrese el tercer n%cmero: ",163);

scanf("%d", &num3);

printf("Suma: %.2f\n", suma_tres(num1, num2, num3));

10
printf("Producto: %.2f\n", producto_tres(num1, num2, num3));

printf("Media: %.2f\n", media_tres(num1, num2, num3));

return 0;

11
Ejercicio 7:
#include <stdio.h>

long suma_cuadrados(int n) {

long suma = 0;

for (int i = 1; i <= n; i++) {

suma += i * i;

return suma;

int main() {

int n = 100;

long resultado = suma_cuadrados(n);

printf("La suma de los cuadrados de los primeros %d n%cmeros naturales es: %ld\n", n, 163,
resultado);

return 0;

12
Ejercicio 8:
#include <stdio.h>

void cuadrados_pares(int n) {

for (int i = 2; i <= n; i += 2) {

printf("El cuadrado de %d es %d\n", i, i * i);

int main() {

int n = 100;

printf("Cuadrados de los n%cmeros pares entre 1 y %d:\n",163, n);

cuadrados_pares(n);

return 0;

13
Ejercicio 9:
#include <stdio.h>

void calcular_pendiente(float x1, float y1, float x2, float y2) {

if (x1 == x2) {

printf("La pendiente es indefinida .\n");

} else {

float m = (y2 - y1) / (x2 - x1);

printf("La pendiente de la recta es: %.2f\n", m);

int main() {

float x1, y1, x2, y2;

printf("Ingrese x1, y1: ");

scanf("%f %f", &x1, &y1);

printf("Ingrese x2, y2: ");

scanf("%f %f", &x2, &y2);

calcular_pendiente(x1, y1, x2, y2);

return 0;

14
Ejercicio 10:
#include <stdio.h>

long calcular_segundos_funcion(int edad) {

return edad * 365 * 24 * 60 * 60;

void calcular_segundos_procedimiento(int edad) {

long segundos = edad * 365 * 24 * 60 * 60;

printf("Tu edad en segundos es: %ld\n", segundos);

int main() {

int edad;

printf("Ingrese su edad en años: ");

scanf("%d", &edad);

long segundos = calcular_segundos_funcion(edad);

printf("Tu edad en segundos es: %ld\n", segundos);

calcular_segundos_procedimiento(edad);

return 0;

15
Ejercicio 11:
#include <stdio.h>

void determinarCuadrante(float x, float y) {

if (x > 0 && y > 0) {

printf("El punto (%.2f, %.2f) en el Primer Cuadrante.\n", x, y);

} else if (x < 0 && y > 0) {

printf("El punto (%.2f, %.2f) en el Segundo Cuadrante.\n", x, y);

} else if (x < 0 && y < 0) {

printf("El punto (%.2f, %.2f) en el Tercer Cuadrante.\n", x, y);

} else if (x > 0 && y < 0) {

printf("El punto (%.2f, %.2f) en el Cuarto Cuadrante.\n", x, y);

} else if (x == 0) {

printf("El punto (%.2f, %.2f) sobre el eje Y.\n", x, y);

} else if (y == 0) {

printf("El punto (%.2f, %.2f) sobre el eje X.\n", x, y);

int main() {

float x, y;

printf("Ingrese la coordenada X: ");

scanf("%f", &x);

16
printf("Ingrese la coordenada Y: ");

scanf("%f", &y);

determinarCuadrante(x, y);

return 0;

17
Ejercicio 12:
#include <stdio.h>

float centigradosAFahrenheit(float c) {

return (c * 9.0 / 5.0) + 32;

float fahrenheitACentigrados(float f) {

return (f - 32) * 5.0 / 9.0;

int main() {

int opcion;

float temperatura, resultado;

do {

printf("\n--- Conversor de Temperaturas ---\n");

printf("1. Pasar de Cent%cgrados a Fahrenheit\n",161);

printf("2. Pasar de Fahrenheit a Cent%cgrados\n",161);

printf("3. Salir\n");

printf("Seleccione una opci%cn: ",162);

scanf("%d", &opcion);

switch(opcion) {

case 1:

printf("Ingrese la temperatura en Cent%cgrados: ",161);

18
scanf("%f", &temperatura);

resultado = centigradosAFahrenheit(temperatura);

printf("Resultado: %.2f °C = %.2f °F\n", temperatura, resultado);

break;

case 2:

printf("Ingrese la temperatura en Fahrenheit: ");

scanf("%f", &temperatura);

resultado = fahrenheitACentigrados(temperatura);

printf("Resultado: %.2f °F = %.2f °C\n", temperatura, resultado);

break;

case 3:

printf("Saliendo del programa...\n");

break;

default:

printf("Opci%cn inv%clida. Intente de nuevo.\n",162,161);

break;

} while(opcion != 3);

return 0;

19
20
Ejercicio 13:
#include <stdio.h>

#define PI 3.14159265358979323846

float radianesAGrados(float radianes) {

return radianes * (180.0 / PI);

float gradosARadianes(float grados) {

return grados * (PI / 180.0);

int main() {

int opcion;

float valor, resultado;

do {

printf("\n--- Conversor de %cngulos ---\n",181);

printf("1. Convertir Radianes a Grados\n");

printf("2. Convertir Grados a Radianes\n");

printf("3. Salir\n");

printf("Seleccione una opci%cn: ",162);

scanf("%d", &opcion);

switch(opcion) {

case 1:

21
printf("Ingrese el valor en radianes: ");

scanf("%f", &valor);

resultado = radianesAGrados(valor);

printf("Resultado: %.4f radianes = %.4f grados\n", valor, resultado);

break;

case 2:

printf("Ingrese el valor en grados: ");

scanf("%f", &valor);

resultado = gradosARadianes(valor);

printf("Resultado: %.4f grados = %.4f radianes\n", valor, resultado);

break;

case 3:

printf("Saliendo del programa...\n");

break;

default:

printf("Intente de nuevo.\n");

break;

} while(opcion != 3);

return 0;

22
23
Ejercicio 14:
#include <stdio.h>

#define CONVERSION 166.386

float pesetasAEuros(float pesetas) {

return pesetas / CONVERSION;

float eurosAPesetas(float euros) {

return euros * CONVERSION;

int main() {

int opcion;

float cantidad, resultado;

do {

printf("\n--- Conversor Euros y Pesetas ---\n");

printf("1. Pasar de Pesetas a Euros\n");

printf("2. Pasar de Euros a Pesetas\n");

printf("3. Salir\n");

printf("Seleccione una opci%cn: ",162);

scanf("%d", &opcion);

24
switch(opcion) {

case 1:

printf("Ingrese la cantidad en Pesetas: ");

scanf("%f", &cantidad);

resultado = pesetasAEuros(cantidad);

printf("Resultado: %.2f Pesetas = %.2f Euros\n", cantidad, resultado);

break;

case 2:

printf("Ingrese la cantidad en Euros: ");

scanf("%f", &cantidad);

resultado = eurosAPesetas(cantidad);

printf("Resultado: %.2f Euros = %.2f Pesetas\n", cantidad, resultado);

break;

case 3:

printf("Saliendo del programa...\n");

break;

default:

printf("Intente de nuevo.\n");

break;

} while(opcion != 3);

return 0;

25
26
Ejercicio 15:
#include <stdio.h>

#include <math.h>

#define PI 3.14159265358979323846

float gradosARadianes(float grados) {

return grados * (PI / 180.0);

float calcularSeno(float angulo, int esGrado) {

if (esGrado) {

angulo = gradosARadianes(angulo);

return sin(angulo);

float calcularCoseno(float angulo, int esGrado) {

if (esGrado) {

angulo = gradosARadianes(angulo);

return cos(angulo);

float calcularTangente(float angulo, int esGrado) {

if (esGrado) {

angulo = gradosARadianes(angulo);

27
if (fmod(angulo, PI / 2) == 0 && fmod(angulo, PI) != 0) {

printf("Error: La tangente es indefinida.\n");

return NAN;

return tan(angulo);

int main() {

int opcion, unidad;

float angulo, resultado;

do {

printf("\n--- Calculadora Trigonom%ctrica ---\n",130);

printf("1. Calcular Seno\n");

printf("2. Calcular Coseno\n");

printf("3. Calcular Tangente\n");

printf("4. Salir\n");

printf("Seleccione una opci%cn: ",162);

scanf("%d", &opcion);

if (opcion >= 1 && opcion <= 3) {

printf("\nSeleccione la unidad:\n");

printf("1. Grados\n");

printf("2. Radianes\n");

printf("Seleccione una opci%cn: ",162);

scanf("%d", &unidad);

28
printf("Ingrese el %cngulo: ",160);

scanf("%f", &angulo);

switch(opcion) {

case 1:

resultado = calcularSeno(angulo, unidad == 1);

if (!isnan(resultado)) {

printf("Seno de %.2f (%s): %.6f\n",

angulo, unidad == 1 ? "grados" : "radianes", resultado);

break;

case 2:

resultado = calcularCoseno(angulo, unidad == 1);

printf("Coseno de %.2f (%s): %.6f\n",

angulo, unidad == 1 ? "grados" : "radianes", resultado);

break;

case 3:

resultado = calcularTangente(angulo, unidad == 1);

if (!isnan(resultado)) {

printf("Tangente de %.2f (%s): %.6f\n",

angulo, unidad == 1 ? "grados" : "radianes", resultado);

break;

case 4:

29
printf("Saliendo del programa...\n");

break;

default:

printf("Intente de nuevo.\n");

break;

} while(opcion != 4);

return 0;

30
Ejercicio 16:
#include <stdio.h>

int validarNumero(int numero) {

if (numero <= 2) {

printf("Error: El n%cmero debe ser mayor que 2.\n",163);

return 0;

return 1;

void esPrimo(int numero) {

int es_primo = 1;

for (int i = 2; i <= numero / 2; i++) {

if (numero % i == 0) {

es_primo = 0;

break;

if (es_primo) {

printf("El n%cmero %d es primo.\n",163, numero);

} else {

printf("El n%cmero %d no es primo.\n",163, numero);

31
}

int main() {

int numero;

printf("Ingrese un n%cmero mayor que 2: ",163);

scanf("%d", &numero);

if (validarNumero(numero)) {

esPrimo(numero);

return 0;

32
Ejercicio 17:
#include <stdio.h>

int calcularMCD(int a, int b) {

while (b != 0) {

int temp = b;

b = a % b;

a = temp;

return a;

void sonPrimosEntreSi(int a, int b) {

int mcd = calcularMCD(a, b);

if (mcd == 1) {

printf("Los n%cmeros %d y %d son primos entre s%c.\n",163, a, b, 161);

} else {

printf("Los n%cmeros %d y %d NO son primos entre s%c.\n",163, a, b, 161);

int main() {

int num1, num2;

printf("Ingrese el primer n%cmero: ",163);

scanf("%d", &num1);

33
printf("Ingrese el segundo n%cmero: ",163);

scanf("%d", &num2);

sonPrimosEntreSi(num1, num2);

return 0;

34
Ejercicio 18:
#include <stdio.h>

float descuentoComprador(char clase) {

switch (clase) {

case 'A': return 0.02;

case 'B': return 0.04;

case 'C': return 0.06;

default: return 0.0;

float descuentoPieza(int tipo) {

switch (tipo) {

case 1: return 0.08;

case 2: return 0.10;

default: return 0.0;

float calcularPrecio(float precio, char clase, int tipo) {

float totalDescuento = descuentoComprador(clase) + descuentoPieza(tipo);

return precio * (1 - totalDescuento);

int main() {

float precio, totalVentas = 0;

35
char clase;

int tipo;

printf("--- Sistema de Ventas de Repuestos ---\n");

while (1) {

printf("\nIngrese el precio de la pieza (0 para salir): ");

scanf("%f", &precio);

if (precio == 0) break;

printf("Ingrese la clase del comprador (A/B/C): ");

scanf(" %c", &clase);

printf("Ingrese el tipo de pieza (1/2): ");

scanf("%d", &tipo);

float precioFinal = calcularPrecio(precio, clase, tipo);

printf("Precio final con descuentos: %.2f\n", precioFinal);

totalVentas += precioFinal;

printf("\nTotal obtenido en ventas: %.2f\n", totalVentas);

return 0;

36
Referencias:
-​ N/A

37

También podría gustarte