Ejemplo: si ingresamos el número 5, nos dibujara una pirámide de asteriscos de 5 filas.
Código del ejercicio:
Definición de los códigos del ejercicio:
#include <stdio.h> --> significa "standard input-output header" (cabecera estándar E/S), es un archivo de encabezado que tiene la información necesaria para incluir las funciones relacionadas con la entrada/salida en nuestro programa. Ejemplo printf, scanf, etc.#include <locale.h> --> especificador de configuración regional.
int --> dato entero de 32 bits.
main() --> es la primera función de cada programa C que es responsable de iniciar la ejecución y finalización del programa. Es una función especial que siempre comienza a ejecutar código desde el ' principal ' que tiene ' int ' o ' void ' como tipo de datos de retorno. En otras palabras, una función main() es un punto de entrada del código de programación para iniciar su ejecución.
return 0; --> devolver 0 en la función principal significa que el programa se ejecutó correctamente.
setlocale(); --> sirve para configurar nuestro programa acorde a los parámetros locales de la computadora donde se ejecuta el programa, uno de estos parámetros es el idioma.
LC_CTYPE --> selecciona la categoría de clasificación de caracteres del entorno local.
setlocale(LC_CTYPE, "Spanish"); --> dentro de las comillas del segundo parámetro colocaremos la palabra "Spanish" para que así se utilicen los parámetros hispanos por defecto.
printf() --> permite la aparición de valores numéricos, caracteres y cadenas de texto por pantalla.
scanf() --> permite entrar datos en la memoria del ordenador a través del teclado.
for --> el ciclo for recorre un bloque de código varias veces.
<= --> el operador menor o igual ( <= ) devuelve true si el operando izquierdo es menor o igual que el operando derecho, y en false caso contrario.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
\n --> es el carácter de salto de línea y se usa para indicar el fin de una línea de texto y el inicio de una línea nueva.
Explicación del Código:
Código del Programa
#include <stdio.h>
#include <locale.h>
int main(){
setlocale(LC_CTYPE, "Spanish");
int num, lineaActual, espacio, asterisco;
printf("Ingrese un número: ");
scanf("%i", &num);
for(lineaActual = 1; lineaActual <= num; lineaActual++){
for(espacio = 0; espacio < num - lineaActual; espacio++){
printf(" ");
}
for(asterisco = 0; asterisco < (lineaActual * 2) - 1; asterisco++){
printf("*");
}
printf("\n");
}
return 0;
}
Explicación del Código
-
#include <stdio.h>
Permite usar funciones como printf y scanf. -
#include <locale.h>
Permite configurar el idioma español en el programa. -
int main()
Es la función principal donde inicia el programa. -
setlocale(LC_CTYPE, "Spanish");
Configura el idioma español para mostrar caracteres correctamente. -
int num, lineaActual, espacio, asterisco;
Declara las variables del programa:- num: número de filas de la pirámide.
- lineaActual: controla cada línea.
- espacio: controla los espacios vacíos.
- asterisco: controla los asteriscos.
-
printf("Ingrese un número: ");
Solicita un número al usuario. -
scanf("%i", &num);
Guarda el número ingresado por el usuario. -
for(lineaActual = 1; lineaActual <= num; lineaActual++)
Recorre cada línea de la pirámide. -
for(espacio = 0; espacio < num - lineaActual; espacio++)
Imprime espacios antes de los asteriscos para centrar la pirámide. -
printf(" ");
Imprime un espacio vacío. -
for(asterisco = 0; asterisco < (lineaActual * 2) - 1; asterisco++)
Imprime los asteriscos de cada fila.
La fórmula: (lineaActual * 2) - 1 genera números impares: 1, 3, 5, 7... -
printf("*");
Imprime un asterisco. -
printf("\n");
Realiza un salto de línea. -
return 0;
Finaliza correctamente el programa.
Resultado del Programa
Ingrese un número: 5
*
***
*****
*******
*********
¿Qué Hace el Programa?
Este programa solicita un número al usuario y genera una pirámide de asteriscos con la cantidad de filas indicada.
En cada línea se imprimen espacios y asteriscos para formar una pirámide centrada.
No hay comentarios.:
Publicar un comentario