Calculadora de divisores [ESP-ENG] | C++

avatar
(Edited)

Cover Divisors.jpg

Programación c++.png

¡Hola! Espero que te encuentres bien y este aumento de Hive te haya bendecido bastante. Había estado bloqueado con respecto a los post de programación pero luego de ver uno de los retos matemáticos de @ydavgonzalez que giraba en torno a buscar divisores decidí hacer un programa para lograrlo. En el camino me topé con un par de problemas fuera de los que solía encontrarme cuando hacía este tipo de posts y es que una de las funciones que quería usar no estaba habilitada en mi compilador por lo que tuve que investigar un poco y lo resolví gracias a este foro.

Hi! I hope you're feeling well and this Hive boost has blessed you quite a bit. I had been blocked regarding programming posts but after seeing one of @ydavgonzalez's math challenges that revolved around finding divisors I decided to make a program to do it. On the way I ran into a couple of problems out of the ones I used to encounter when making this kind of posts and that is that one of the functions I wanted to use was not enabled in my compiler so I had to do some research and I solved it thanks to this forum.

Programación c++.png

Ahora bien, entrando en materia, las librerías que usé tienen una novedad con respecto a las que traigo por lo general, añadí "string" para trabajar con cadenas y validar mejor la entrada por teclado. Para ello también usé una función que lo facilitaba y que antes no conocía, dicha función "isNumberInt" la encontré en esta guía llamada "delftstack".

A continuación está la función "comprobador" que se encarga de enlazar la función "isNumberInt" con un bucle que no finaliza hasta que se ingresa un número entero no negativo para su respectivo análisis y posterior retorno de valor para que la función "mostrar_divisores" se encarga de la exposición de sus divisores en pantalla.

Esto a través de un bucle for que analiza basado en el tanteo, es decir, va probando desde 1 hasta que sea <= al número ingresado. Conforme va encontrando divisores a través del uso del operador %, los muestra en pantalla. La función "exit" es para mostrar un mensaje predeterminado en el selector, de modo que se resuma un poco de código.

Now, getting into the matter, the libraries I used have a novelty with respect to those that I usually bring, I added "string" to work with strings and better validate the keyboard input. For this I also used a function that made it easier and that I did not know before, this function "isNumberInt" I found it in this guide called "delftstack".

Next is the function "comprobador" which is responsible for linking the function "isNumberInt" with a loop that does not end until a non-negative integer is entered for their respective analysis and subsequent return value for the function "show_divisors" is responsible for the display of its divisors on screen.

This through a for loop that analyzes based on the groping, that is to say, it is testing from 1 until it is <= to the number entered. As it finds divisors through the use of the % operator, it displays them on the screen. The "exit" function is to display a default message in the selector, so that some code is summarized.

image.png

image.png


La función selector funciona a modo de menú, en el que se elige si se inicia el proceso de recibir el número y analizarlo o salir del programa. De modo que se puede usar más de una vez si se desea. Todo esto enlazando las funciones antes mencionadas. Finalmente en el main solo se llama a esa función y voilà.

The selector function works as a menu, where you choose whether to start the process of receiving the number and analyzing it or to exit the program. So it can be used more than once if desired. All this linking the functions mentioned above. Finally in the main you just call that function and voilà.

image.png

image.png

Programación c++.png

image.png

image.png

image.png

image.png

Programación c++.png

¡Y bueno... Eso es todo por hoy! Ojalá esta calculadora de divisores te sea de ayuda, si notas que las capturas de 1000 y 1024 se ven distintas es porque para ese momento el código era distinto, pues luego de responder al reto mencionado hice unas mejoras para traerlo a este post.

Si te interesa otro tutorial de programación acá te dejo los links a los que he realizado hasta ahora:

And well... That's all for today! Hopefully this divisor calculator will be helpful, if you notice that the 1000 and 1024 screenshots look different is because the code was different at that time, because after answering the challenge I made some improvements to bring it to this post.

If you are interested in another programming tutorial here are the links to the ones I have done until now:

Programación c++.png

Nombre de la publicación / Name of the postLINK
Calculador de datos para un triángulo rectángulo en C++1
Concecionario de autos, ejercicio en JAVA2
Calculador de edad básico C++3
Inversor de números de tres cifras4
¿Cuántos números de 3 cifras existen cuya suma sea 10? - ¡Respondiendo a otro usuario! C++6
Calculadora simple, cifra menos significativa y portada simple C++7
¡Vistazo a BeatUDO! JAVA9
Comprobar si un número de dos cifras es primo C++10
Conversor de pulgadas a 7 unidades distintas C++11
Comprobar si un número es capicúa (Máx 5 cifras) C++12
Comprobador de caracteres C++13
Calculadora de índice de masa corporal C++14
Calculadora de factoriales C++15
Conversor (Grados Celsius - Fahrenheit - Kelvin) C++16
Calculadora de longitud, diametro y área de una circunferencia C++17
Graficando números en consola (0-3) C++18
Graficando números en consola II (4-6) C++19
Graficando números en consola III (7-9) C++20
Calculadora de ecuaciones cuadráticas C++21
Dados digitales C++22
Fichas biográficas de próceres C++23

Programación c++.png


Redes actualizada.gif


Puedes seguirme por acá si lo deseas:
You can follow me here if you want:

Cuenta secundaria
(Dibujos, edición y juegos) | Secondary account (Drawings, editing and games)



0
0
0.000
3 comments
avatar

Esta chingon los ejercicios de C que estas poniendo, muy bueno para los que van empezando y lo estructuras muy bien, sigue subiendo mas contenido asi :D

0
0
0.000