0% encontró este documento útil (0 votos)
15 vistas7 páginas

DDD

El documento contiene varios ejercicios de programación en C que abarcan desde calcular el cuadrado de un número, el promedio de una serie de números, hasta la suma de elementos en un arreglo. También incluye ejercicios propuestos que tratan sobre la lectura de nombres, la suma de números impares, el cálculo de longitudes de líneas y el análisis de estadísticas de arreglos. Cada ejercicio está acompañado de explicaciones y comentarios que facilitan la comprensión del código.
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 TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
15 vistas7 páginas

DDD

El documento contiene varios ejercicios de programación en C que abarcan desde calcular el cuadrado de un número, el promedio de una serie de números, hasta la suma de elementos en un arreglo. También incluye ejercicios propuestos que tratan sobre la lectura de nombres, la suma de números impares, el cálculo de longitudes de líneas y el análisis de estadísticas de arreglos. Cada ejercicio está acompañado de explicaciones y comentarios que facilitan la comprensión del código.
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 TXT, PDF, TXT o lee en línea desde Scribd

EJERCICIO 1

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

int main(void) {
// Variables
int numero;
int resultado;

// Mensaje de inicio
puts("=== PROGRAMA PARA CALCULAR EL CUADRADO DE UN NÚMERO ===");

// Leer número
printf("Ingrese un número: ");
scanf("%d", &numero);

// Calcular cuadrado
resultado = numero * numero;

// Mostrar resultado
printf("El cuadrado de %d es %d\n", numero, resultado);

return 0;
}

EJERCICIO 2

#include <stdio.h>

int main() {
// Variables
float numero = 0, acumulador = 0, promedio = 0;
int contador = 0;

// Indicar qué hace el programa


puts("=== PROGRAMA PARA CALCULAR EL PROMEDIO ===");

// Leer datos con un bucle do-while


do {
printf("Ingrese un numero (-1 para terminar): ");
scanf("%f", &numero);
setbuf(stdin, NULL); // Limpia el buffer de entrada

if (numero >= 0) {
acumulador += numero;
contador++;
}
} while (numero >= 0);

// Calcular y mostrar el promedio


if (contador > 0) {
promedio = acumulador / contador;
printf("El promedio de los %d numeros es: %.2f\n", contador, promedio);
} else {
printf("No se ingresaron numeros validos.\n");
}

return 0;
}
ejercicio 3

#include <stdio.h>

int main() {
// Variables
const int N = 10;
int arreglo[N];
int suma = 0;
int i;

// Indicar qué hace el programa


puts("=== PROGRAMA PARA CALCULAR LA SUMA DE UN ARREGLO ===");

// Leer datos
for (i = 0; i < N; i++) {
printf("Ingrese un numero [%d/%d]: ", i + 1, N);
scanf("%d", &arreglo[i]);
}

// Procesar (calcular la suma)


for (i = 0; i < N; i++) {
suma += arreglo[i];
}

// Mostrar resultados
printf("La suma de los elementos del arreglo es: %d\n", suma);

return 0;
}

EJERCICIOS PROPUESTOS

N 1
// leer nombre por el teclado

#include <stdio.h> // Incluir la librería estándar de entrada/salida para poder


usar printf y scanf

int main() {
// Declarar una variable de tipo arreglo de caracteres para almacenar el nombre
// El tamaño 50 es suficiente para almacenar nombres con hasta 49 caracteres
(el último espacio es para el terminador de cadena '\0')
char nombre[50];

// Imprimir un mensaje para que el usuario sepa que debe ingresar su nombre
printf("Ingrese su nombre: ");

// Leer el nombre que ingresa el usuario. Usamos scanf para leer una cadena de
caracteres.
// El formato "%49s" lee hasta 49 caracteres (deja espacio para el terminador
'\0')
scanf("%49s", nombre);

// Mostrar el mensaje de bienvenida en el formato solicitado.


// Utilizamos %s para imprimir el nombre ingresado por el usuario
printf("%s, bienvenido a Linux\n", nombre);
// El programa terminó correctamente, por lo que retornamos 0
return 0;
}

N 2
// suma de los N primeros números impares

#include <stdio.h> // Incluir la librería estándar para entrada/salida (printf,


scanf)

int main() {
int N; // Variable para almacenar el número de primeros impares a sumar
int suma = 0; // Variable para almacenar la suma de los N primeros impares
int i, num_impar; // Variables para los ciclos y el número impar actual

// Solicitar al usuario que ingrese el valor de N (cuántos números impares


sumar)
printf("Ingrese el número de primeros números impares a sumar: ");
scanf("%d", &N); // Leer el valor de N

// Inicializar el primer número impar


num_impar = 1;

// Utilizar un ciclo para sumar los primeros N números impares


for (i = 1; i <= N; i++) {
suma += num_impar; // Agregar el número impar actual a la suma
num_impar += 2; // El siguiente número impar es 2 unidades mayor que el
anterior
}

// Mostrar el resultado
printf("La suma de los primeros %d números impares es: %d\n", N, suma);

return 0; // Retornar 0 para indicar que el programa terminó correctamente


}

N 3
// coordenadas de dos líneas y determine cuál es la de mayor longitud.
#include <stdio.h> // Incluir la librería estándar de entrada/salida para usar
printf y scanf
#include <math.h> // Incluir la librería matemática para poder usar la función
sqrt() para calcular la raíz cuadrada

int main() {
// Declarar las variables para las coordenadas de los dos puntos de cada línea
float x1, y1, x2, y2; // Coordenadas del primer punto de la primera línea
float x3, y3, x4, y4; // Coordenadas del primer punto de la segunda línea
float longitud1, longitud2; // Variables para almacenar las longitudes de las
dos líneas

// Solicitar las coordenadas de la primera línea


printf("Ingrese las coordenadas del primer punto de la primera línea (x1 y1):
");
scanf("%f %f", &x1, &y1); // Leer las coordenadas x1, y1
printf("Ingrese las coordenadas del segundo punto de la primera línea (x2 y2):
");
scanf("%f %f", &x2, &y2); // Leer las coordenadas x2, y2

// Solicitar las coordenadas de la segunda línea


printf("Ingrese las coordenadas del primer punto de la segunda línea (x3 y3):
");
scanf("%f %f", &x3, &y3); // Leer las coordenadas x3, y3
printf("Ingrese las coordenadas del segundo punto de la segunda línea (x4 y4):
");
scanf("%f %f", &x4, &y4); // Leer las coordenadas x4, y4

// Calcular la longitud de la primera línea utilizando la fórmula de distancia


entre dos puntos
longitud1 = sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1));

// Calcular la longitud de la segunda línea utilizando la fórmula de distancia


entre dos puntos
longitud2 = sqrt((x4 - x3) * (x4 - x3) + (y4 - y3) * (y4 - y3));

// Determinar cuál línea es más larga y mostrar el resultado


if (longitud1 > longitud2) {
printf("La primera línea es más larga. Longitud: %.2f\n", longitud1);
} else if (longitud1 < longitud2) {
printf("La segunda línea es más larga. Longitud: %.2f\n", longitud2);
} else {
printf("Ambas líneas tienen la misma longitud. Longitud: %.2f\n",
longitud1);
}

return 0; // Finalizar el programa exitosamente


}

N 4
// coordenadas de dos líneas y si estas se intersecan, determine el ángulo que
forman
// Nombre : calcularAngulo
// Proposito : Calcula el ángulo entre dos líneas dadas sus coordenadas
// Autor : Edwin Carrasco
// FCreacion : 17/02/2025
// FModificacion : --

#include <stdio.h>
#include <math.h> // Para usar la función de trigonometría y el valor de PI

#define PI 3.14159265358979323846 // Definir el valor de PI

// Función para calcular el ángulo entre dos líneas


double calcularAngulo(double m1, double m2) {
// Fórmula del ángulo entre dos líneas:
// tan(θ) = |(m1 - m2) / (1 + m1 * m2)|
// θ = atan(tan(θ)) para obtener el valor en radianes
double tanTheta = fabs((m1 - m2) / (1 + m1 * m2));
return atan(tanTheta) * 180.0 / PI; // Convertir a grados
}

int main(void) {
// Variables
double x1, y1, x2, y2, x3, y3, x4, y4; // Coordenadas de los puntos
double m1, m2, angulo;

// Indicar lo que hace el programa


puts("=== PROGRAMA PARA CALCULAR EL ÁNGULO ENTRE DOS LÍNEAS ===");
// Leer las coordenadas de los dos puntos de la primera línea
printf("Ingrese las coordenadas del primer punto de la primera línea (x1, y1):
");
scanf("%lf %lf", &x1, &y1);
printf("Ingrese las coordenadas del segundo punto de la primera línea (x2, y2):
");
scanf("%lf %lf", &x2, &y2);

// Leer las coordenadas de los dos puntos de la segunda línea


printf("Ingrese las coordenadas del primer punto de la segunda línea (x3, y3):
");
scanf("%lf %lf", &x3, &y3);
printf("Ingrese las coordenadas del segundo punto de la segunda línea (x4, y4):
");
scanf("%lf %lf", &x4, &y4);

// Calcular las pendientes de ambas líneas


m1 = (y2 - y1) / (x2 - x1); // Pendiente de la primera línea
m2 = (y4 - y3) / (x4 - x3); // Pendiente de la segunda línea

// Calcular el ángulo entre las dos líneas usando la fórmula


angulo = calcularAngulo(m1, m2);

// Mostrar el resultado
printf("El ángulo entre las dos líneas es: %.2f grados\n", angulo);

return 0;
}

N 5
//valor máximo, mínimo, el promedio y la frecuencia de los elementos de un arreglo
de N elementos enteros.

// Nombre : estadisticasArreglo
// Proposito : Calcula el valor máximo, mínimo, promedio y frecuencia de los
elementos de un arreglo
// Autor : Carlos Canal
// FCreacion : 17/02/2025
// FModificacion : --

#include <stdio.h>

int main(void) {
// Variables
int N; // Número de elementos del arreglo
int i;
int max, min; // Para almacenar el valor máximo y mínimo
int suma = 0; // Para calcular la suma de los elementos
float promedio;
int frecuenciaMax = 0, frecuenciaMin = 0; // Para contar las frecuencias de
max y min
int arreglo[100]; // Definir un arreglo de tamaño máximo 100

// Indicar lo que hace el programa


puts("=== PROGRAMA PARA CALCULAR ESTADÍSTICAS DE UN ARREGLO ===");

// Leer el número de elementos del arreglo


printf("Ingrese el número de elementos en el arreglo (máximo 100): ");
scanf("%d", &N);
// Validación del tamaño del arreglo
if (N > 100 || N <= 0) {
printf("Número de elementos no válido.\n");
return 1; // Salir con error si N es mayor a 100 o menor a 1
}

// Leer los elementos del arreglo


printf("Ingrese los elementos del arreglo:\n");
for (i = 0; i < N; i++) {
printf("Elemento %d: ", i + 1);
scanf("%d", &arreglo[i]);
}

// Inicializar max y min con el primer elemento del arreglo


max = arreglo[0];
min = arreglo[0];

// Procesar: Encontrar el valor máximo, mínimo, la suma, y contar las


frecuencias
for (i = 0; i < N; i++) {
suma += arreglo[i];

// Determinar el valor máximo y mínimo


if (arreglo[i] > max) {
max = arreglo[i];
frecuenciaMax = 1; // Resetear frecuencia máxima
} else if (arreglo[i] == max) {
frecuenciaMax++; // Contar cuántas veces aparece el máximo
}

if (arreglo[i] < min) {


min = arreglo[i];
frecuenciaMin = 1; // Resetear frecuencia mínima
} else if (arreglo[i] == min) {
frecuenciaMin++; // Contar cuántas veces aparece el mínimo
}
}

// Calcular el promedio
promedio = (float)suma / N;

// Mostrar resultados
printf("\nEstadísticas del arreglo:\n");
printf("Valor máximo: %d\n", max);
printf("Valor mínimo: %d\n", min);
printf("Promedio: %.2f\n", promedio);
printf("Frecuencia del valor máximo: %d\n", frecuenciaMax);
printf("Frecuencia del valor mínimo: %d\n", frecuenciaMin);

return 0;
}

N 6
//calcule el promedio de los elementos de un arreglo bidimensional, cuyas
dimensiones MxN sean definidas

// Nombre : promedioArregloBidimensional
// Proposito : Calcula el promedio de los elementos de un arreglo bidimensional
// Autor : Carlos Canal
// FCreacion : 17/02/2025
// FModificacion : --

#include <stdio.h>

int main(void) {
// Variables
int M, N; // Dimensiones del arreglo (filas y columnas)
int i, j; // Variables de control para los bucles
int suma = 0; // Para calcular la suma de los elementos
float promedio;

// Indicar lo que hace el programa


puts("=== PROGRAMA PARA CALCULAR EL PROMEDIO DE UN ARREGLO BIDIMENSIONAL ===");

// Leer las dimensiones del arreglo


printf("Ingrese el número de filas (M): ");
scanf("%d", &M);
printf("Ingrese el número de columnas (N): ");
scanf("%d", &N);

// Crear el arreglo bidimensional de tamaño MxN


int arreglo[M][N];

// Leer los elementos del arreglo


printf("Ingrese los elementos del arreglo:\n");
for (i = 0; i < M; i++) {
for (j = 0; j < N; j++) {
printf("Elemento en la posición [%d][%d]: ", i + 1, j + 1);
scanf("%d", &arreglo[i][j]);
}
}

// Procesar: Sumar los elementos del arreglo


for (i = 0; i < M; i++) {
for (j = 0; j < N; j++) {
suma += arreglo[i][j];
}
}

// Calcular el promedio
promedio = (float)suma / (M * N);

// Mostrar resultados
printf("\nEl promedio de los elementos del arreglo es: %.2f\n", promedio);

return 0;
}

También podría gustarte