Red de conocimiento informático - Computadora portátil - Programación en lenguaje C, que busca implementar la multiplicación de enteros grandes usando el método divide y vencerás

Programación en lenguaje C, que busca implementar la multiplicación de enteros grandes usando el método divide y vencerás

Para números muy grandes, solo puedes usar cadenas, de lo contrario se desbordarán.

Hay dos formas de resolver este problema. Una es la definición de multiplicación, que es la acumulación de. multiplicandos

Entonces el método es acumular el multiplicador varias veces y restar 1 del multiplicando hasta que el multiplicando sea cero y saltar fuera del bucle

Entonces se necesitan dos subfunciones aquí, uno es un número grande Suma, uno es el algoritmo para restar 1 de números grandes

Otra forma es, ¿todavía recuerdas la forma vertical de multiplicación que aprendiste en la escuela primaria?

Por ejemplo

12 -----(1)

X 12 ------(2)

- ---------

24 ----(3)

12 ------(4)

- - -------

144 --------(5)

De esta forma se convierte al cálculo (3) (4), etc. Si es de varios dígitos, entonces habrá muchos (3) (4), solo calcule la suma de estos

El (5) final es el resultado

Entonces este problema también tiene dos subfunciones, una es la suma grande de números para calcular la suma de (3) (4), etc.

Una es la multiplicación de cada dígito de ( 1) y (2)