Construye un algoritmo que determine (o indique) si un número es nulo, positivo o negativo.
Construye un algoritmo que determine (o indique) si un número es par o no.
-
Un número es par si es el número 2 es un divisor de dicho número.
-
Un número a es un divisor del número b si el resto de la división b/a es cero.
Llamar n al número que me dan. Llamar cociente = n/2; LLamar resto = n - 2*cociente; // Aplicamos la regla de la división Si resto es 0, entonces indicar que el número es par. Si resto no es 0, indicar que el número es impar.
En matemáticas existe la función módulo que retorna el resto de una división. El resto de dividir n entre 2 lo podemos representar como n % 2. Con lo que el algorimo lo podemos poner así:
Llamar n al número que me dan. Si n % 2 es 0, entonces indicar que el número es par. Si n % 2 no es 0, indicar que el número es impar.
Imagina que te dan una sucesión (o lista) de números naturales, de la que desconoces su tamaño (podría ser hasta una sucesión vacía). Construye un algoritmo que determine si un determinado término de la sucesión es un número par o no. Usa el algoritmo anterior.
Usaremos la siguiente notación:
L, es la lista dada. pos, es la posición dada. L[k], es el elemento de L que está en la posición k esPar(n), indica si el número n es par.
Observa que la función esPar() es el algoritmo construido en el paso anterior.
Con esto, construimos el siguiente algoritmo:
Si L es una lista vacía, indicar que no existe el número. Si pos es un número negativo, indicar que no existe la posición. Si pos es mayor que la longitud de L, indicar que no existe la posición. Llamamos numero = L[pos] Si esPar(numero) es verdad (detecta que es par), indicar que el número es par en otro caso (es falso, detecta que no es par) indicar que el número es impar
Si no fueses Gauss, indica el algoritmo que aplicarías para sumar los n-primeros números naturales para un n cualquiera.
Usaremos la siguiente notación:
sumaAntigua, la suma calculada hasta el momento. sumaNueva, una nueva suma. num, es un número natural. n, representa al n-esimo número.
Con esto, construimos el siguiente algoritmo:
Hacer sumaAntigua = 0; Hacer num = 1; Mientras que num no sea mayor que n, hacer Hacer sumaNueva = sumaAntigua + num Pasar al siguiente número num Hacer sumaAntigua = sumaNueva Devolver sumaAntigua como la suma solicitada
Inidica cuáles son los primeros n-números naturales necesarios cuya suma no supera un cierto valor dado. La solución del problema anterior te puede ayudar.
Usaremos la siguiente notación:
sumaAntigua, la suma calculada hasta el momento. sumaNueva, una nueva suma. num, es un número natural. n, representa al n-esimo número. max, el número que no puede ser superado.
Con esto, construimos el siguiente algoritmo:
Hacer sumaAntigua = 0; Hacer num = 1; Mientras que SumaAntigua no sea mayor estricto que max, hacer Hacer sumaNueva = sumaAntigua + num Pasar al siguiente número num Hacer sumaAntigua = sumaNueva Calcular el anterior num (num-1) Devolver num como el número solicitado.