Tema CS3: Aritmética
(Ejercicios resueltos)

1 Divisores y división euclídea

Ejercicio 1.1. Asignarle a la variable a el valor 16800 y a la variable
b el valor -990.

(%i155) a:16800$ b:-990$

Ejercicio 1.2. Calcular el conjunto de los divisores positivos de b.

(%i157) divisors(b);
Result

Ejercicio 1.3. Calcular la suma de los divisores de b.

(%i158) divsum(b);
Result

Ejercicio 1.4. Calcular el cociente y el resto de la división euclídea
de a entre b.

(%i159) divide(a,b);
Result

Ejercicio 1.5. Asignarle a las variables q y r el cociente y el resto
de la división euclídea de a entre b.

(%i160) [q,r]:%;
Result

Ejercicio 1.6. Compobar, usando is, que el dividendo (a) es igual al
divisor (b) por el cociente (q) más el resto (r).

(%i161) is(a=b*q+r);
Result

Ejercicio 1.7. Calcular el resto de dividir 17 entre 5.

(%i162) mod(17,5);
Result

2 Máximo común divisor y mínimo común múltiplo

Ejercicio 2.1. Calcular el máximo común divisor de a y b.

(%i163) gcd(a,b) ;
Result

Ejercicio 2.2. Calcular el mínimo común múltiplo de a y b.

(%i164) lcm(a,b);
Result

3 Números primos

Ejercicio 3.1. Comprobar si los números 101 y 1001 son primos.

(%i165) primep(101);
Result

(%i166) primep(1001);
Result

Ejercicio 3.2. Calcular el mayor primo menor que 1001.

(%i167) prev_prime(1001) ;
Result

Ejercicio 3.3. Calcular el menor primo mayor que 1001.

(%i168) next_prime(1001);
Result

Ejercicio 3.4. Descomponer 2520 en factores primos.

(%i169) factor(2520) ;
Result

Ejercicio 3.5. Calcular la descomposición de 2520 en factores primos.

(%i170) ifactors(2520) ;
Result

Ejercicio 3.6. Descomponer 2^67-1 en factores primos.

(%i171) factor(2^67-1);
Result

4 Programación básica

Ejercicio 4.1. Escribir un programa para calcular la descomposición en
factores primos de los números 100, 105, ..., 125.

(%i172) for i from 100 step 5 thru 125 do (print(i,"=",factor(i)));
Result

Ejercicio 4.2. Un número entero n es perfecto si la suma de sus
divisores positivos distintos de n es igual a n.

Escribir un programa que calcule los números perfectos menores que 500.

(%i173) for k from 1 thru 500 do
(if k=divsum(k)-k
 then print(k, "es perfecto"))$

Result


Created with wxMaxima.