Está en la página 1de 6

Prctica 3

Ejercicio 4.2.
Usando los distintos bucle, calcular:

a) El producto de los cuadrados de los diez primeros mltiplos positivos de n disitintos de cero, siendo n el ltimo dgito de tu DNI ms 3.

n = 6 + 3; Con el bucle DO:

resultadoDO = 1;

Do@resultadoDO = Hn iL ^ 2, 8i, 1, 10, 1<D

Print@resultadoDOD

160094441913006202196160061440000 Con el bucle FOR:

resultadoFOR = 1;

For@i = 1, i 10, i ++, resultadoFOR = Hn iL ^ 2D

Print@resultadoFORD

160094441913006202196160061440000 Con el bucle WHILE:

resultadoWHILE = 1;

i = 1;

Practica3.nb

While@i 10, resultadoWHILE = Hn iL ^ 2; i ++D

Print@resultadoWHILED

160094441913006202196160061440000

b)Cuntos nmeros impares, comenzado en 1, hay que sumar para que el resultado sea lo mas grande posible y no supere a 2000?Cul es el valor de dicha suma? Con el bucle DO:

Clear@"Global`"D

resultadoDO = 0; Do@resultadoDO += H2 j 1L; If@resultadoDO > 2000, Print@"El numero de impares que se han sumado es: ", j 1D; Print@"El resultado de la suma es: ", resultadoDO = 2 j 1D; Break@DD, 8j, 1, 2000, 1<D

El numero de impares que se han sumado es: 44

El resultado de la suma es: 1936 Con un bucle FOR:

Clear@"Global`"D

resultadoFOR = 0;

j = 1; n = 0;

Practica3.nb

For@n = 0, resultadoFOR < 2000, n ++, resultadoFOR += j; j += 2; If@resultadoFOR > 2000, resultadoFOR = j 2; Break@DDD Print@"El numero de impares que se han sumado es: ", nD Print@"El resultado de la suma es: ", resultadoFORD

El numero de impares que se han sumado es: 44

El resultado de la suma es: 1936 Con un bucle WHILE:

Clear@"Global`"D

resultadoWHILE = 0; j = 1; n = 0;

While@resultadoWHILE < 2000, resultadoWHILE += j; j += 2; n ++D If@resultadoWHILE > 2000, Print@"El numero de impares que se han sumado es: ", n 1D; Print@"El resultado de la suma es: ", resultadoWHILE = j 2DD

El numero de impares que se han sumado es: 44

El resultado de la suma es: 1936

Ejercicio 4.3.
Siguiendo la notacin del ejercicio 3.3 y usar en cada apartado un tipo de bucle distinto. Fecha de nacimiento: 30/08/1988

aL Construir un bucle que nos de todos los mltiplos de D1 D2 comprendidos entre el ao de tu nacimiento y el ao de tu nacimiento multiplicado por M1 M2 + 6

Clear@"Global`"D

nacIni = 1988;

Practica3.nb

nacFin = 1988 H8 + 6L;

For@n = 1, H30 nL nacFin, n ++, If@nacIni < H30 nL < nacFin, Print@30 nDDD

2010

2040

2070

........................
27750

27780

27810

bL Usar un bucle para crear una lista con los 25 primeros mltiplos de D1 D2 + M1 M2 .

Clear@"Global`"D

Do@Print@H30 + 8L iD, 8i, 1, 25, 1<D

38

76

114

152

190

228

Practica3.nb

266

304

342

380

418

456

494

532

570

608

646

684

722

760

798

836

874

912

950

Practica3.nb

cL Calcular el producto de los multiplos de D1 D2 + M1 M2 compredidos entre A 1 A 2 A 3 A 4 y A 1 A 2 A 3 A 4 + 100

Clear@"Global`"D

resultado = 1; diames = 30 + 8; n = 1;

While@Hdiames nL <= H1988 + 100L, If@1988 < Hdiames nL < H1988 + 100L, resultado = Hdiames nLD; n ++D

Print@resultadoD

4132728

d) Calcular la suma de los mltiplos de D1 D2 + M1 M2 + 10 compredidos entre A1 A2 A3 A4 y ( A1 A2 A 3 A 4 )2

Clear @"Global'"D

resultado = 0;

diames = 30 + 8 + 10;

For@n = 1, Hdiames nL H1988 ^ 2L, n ++, If@1988 < Hdiames nL < H1988 ^ 2L, resultado += Hdiames nLDD

Print@resultadoD

162703140240