sábado, 13 de junio de 2026

Calcular el producto entre a y b sin utilizar multiplicación en C

Código del ejercicio:

#include <stdio.h>

int main(){
    double ac = 0, a, b;
    int c = 0;
    printf("a: ");
    scanf("%lf", &a);
    printf("b: ");
    scanf("%lf", &b);
    while(c < b){
        ac += a;
        c++;
    }
    printf("%.2lf", ac);
    return 0;
}

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.
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.
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.
double --> convierte un número entero en un número de punto flotante de doble precisión, tiene un tamaño de 64 bits, es usado para números de menos de 15 cifras decimales.
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
< --> el operador menor que ( < ) devuelve true si el operando izquierdo es menor que el operando derecho.
+= --> el operador de asignación de suma ( += ) suma el valor del operando derecho a una variable y asigna el resultado a la variable.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.

Explicación del Código:

Este programa calcula el producto entre dos números sin utilizar el operador de multiplicación (*). Para ello, realiza sumas repetidas.

Código en C

#include <stdio.h>

int main(){
    double ac = 0, a, b;
    int c = 0;

    printf("a: ");
    scanf("%lf", &a);

    printf("b: ");
    scanf("%lf", &b);

    while(c < b){
        ac += a;
        c++;
    }

    printf("%.2lf", ac);

    return 0;
}

Explicación simple de cada parte del código

Código Explicación
#include <stdio.h> Incluye la librería estándar de entrada y salida para usar funciones como printf y scanf.
int main() Función principal donde inicia el programa.
double ac = 0, a, b; Declara variables de tipo decimal.
ac: almacena el resultado.
a y b: números ingresados.
int c = 0; Variable contador utilizada para controlar el ciclo.
printf("a: "); Muestra el mensaje para ingresar el valor de a.
scanf("%lf", &a); Guarda el valor ingresado por el usuario en la variable a.
printf("b: "); Muestra el mensaje para ingresar el valor de b.
scanf("%lf", &b); Guarda el valor ingresado por el usuario en la variable b.
while(c < b) Repite el bloque de instrucciones mientras c sea menor que b.
ac += a; Suma el valor de a al acumulador. Esto reemplaza la multiplicación.
c++; Incrementa el contador en 1.
printf("%.2lf", ac); Muestra el resultado final con dos decimales.
return 0; Finaliza correctamente el programa.

Ejemplo de funcionamiento

Si el usuario ingresa:

a = 4
b = 3

El programa realiza:

4 + 4 + 4 = 12

Resultado final:

12.00

No hay comentarios.:

Publicar un comentario

Mostrar los n primeros números de la siguiente serie: 1,3,9,11,33,35,105,107,... en C

Código del ejercicio: #include <stdio.h> #include <locale.h> int main (){     setlocale (LC_CTYPE, "Spanis...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️