Lenguajes de Programacón - PUNTOS EXTRA
MÁXIMO COMÚN DIVISOR
Este programa calcula el máximo común divisor de una pareja de números utilizando el Algoritmo de Euclides. Como sabemos el algoritmo de Euclides se fundamenta en que el máximo común divisor de la pareja de números a,b es el mismo que el de b,r, siendo r el residuo de la division anterior, por ello intercambiamos los valores de a por r a lo largo de la ejecucion del programa mientras el numero menor no sea igual a 0.
Para compilar: gfortran -o mcd mcd.f
Ejecutar con: ./mcd
Codigo
EJECUCION
Para verificar que los resultados son correctos, pueden hacerlo en esta página o calcular el MCD ustedes mismos Calcular MCD
DESCARGA: mcd.f
CALCULO DE LA FUERZA MAGNETICA APLICADA A SUS TRES VARIANTES
Como lo dice el tÍtulo, este algoritmo calcula la fuerza magnetica aplicada ya sea a una particula en movimiento, generada en un conductor o en un solenoide.
Tuve un pequeno problema con el calculo del angulo ya que fortran lo pedia en radianes, aplicando una formula de conversion resolvi el problema :)
Para compilar: gfortran -o fisica fisica.f
Para ejecutar: ./fisica
Codigo
EJECUCION
DESCARGA: fisica.f
SALUDOS!!! ^_^
MÁXIMO COMÚN DIVISOR
Este programa calcula el máximo común divisor de una pareja de números utilizando el Algoritmo de Euclides. Como sabemos el algoritmo de Euclides se fundamenta en que el máximo común divisor de la pareja de números a,b es el mismo que el de b,r, siendo r el residuo de la division anterior, por ello intercambiamos los valores de a por r a lo largo de la ejecucion del programa mientras el numero menor no sea igual a 0.
Para compilar: gfortran -o mcd mcd.f
Ejecutar con: ./mcd
Codigo
C ****** PROGRAMA QUE CALCULA EL ****** C ******* MAXIMO COMUN DIVISOR ******** C ===================================== PROGRAM mcd REAL m, n, r, aux PRINT*, 'Dame M: ' READ(*,*) m PRINT*, 'Dame N: ' READ(*,*) n PRINT*, 'Maximo Comun Divisor de:' PRINT*, m, n IF (m.LT.n) THEN aux = m m = n n = aux ENDIF DO WHILE (r.NE.0) r = MOD(m,n) m = n n = r ENDDO PRINT*, 'es',m STOP END
EJECUCION
Para verificar que los resultados son correctos, pueden hacerlo en esta página o calcular el MCD ustedes mismos Calcular MCD
DESCARGA: mcd.f
CALCULO DE LA FUERZA MAGNETICA APLICADA A SUS TRES VARIANTES
Como lo dice el tÍtulo, este algoritmo calcula la fuerza magnetica aplicada ya sea a una particula en movimiento, generada en un conductor o en un solenoide.
Tuve un pequeno problema con el calculo del angulo ya que fortran lo pedia en radianes, aplicando una formula de conversion resolvi el problema :)
Para compilar: gfortran -o fisica fisica.f
Para ejecutar: ./fisica
Codigo
C ******** PROGRAMA QUE CALCULA ************ C ******** LA FUERZA MAGNETICA ************* C ******** EN SUS TRES CASOS ************** C ========================================== PROGRAM fisica REAL x, q, v, b, i, l, n, o, theta, fb, a PRINT*, 'Calcular la magnitud de la fuerza magnetica para: ' PRINT*, '1. Particulas en movimiento' PRINT*, '2. Conductores' PRINT*, '3. Solenoides' PRINT*, '4+. Salir' READ(*,*) x IF (x.EQ.1) THEN PRINT*, 'Dame la carga de la particula (Columb) ' READ(*,*) q PRINT*, 'Dame la velocidad de la particula (Metros x seg.)' READ(*,*) v PRINT*, 'Dame la magnitud del campo magnetico (Teslas) ' READ(*,*) b PRINT*, 'Dame el angulo de los vectores V X B (grados)' READ(*,*) o theta = ( o * 3.14159 ) / 180 fb = abs(q)*v*b*sin(theta) PRINT*, 'La fueza magnetica para esta particula es',fb,'N' ENDIF IF (x.EQ.2) THEN PRINT*, 'Dame la intensidad de la corriente (Amperes)' READ(*,*) i PRINT*, 'Dame la longitud del conductor (metros)' READ(*,*) l PRINT*, 'Dame la magnitud del campo magnetico (Teslas)' READ(*,*) b PRINT*, 'Dame el angulo de los vectores I X B (Grados)' READ(*,*) o theta = ( o * 3.14159 ) / 180 fb = i*l*b*sin(theta) PRINT*, 'La fuerza magnetica para este conductor es',fb,'N' ENDIF IF (x.EQ.3) THEN PRINT*, 'Dame el numero de vueltas del solenoide' READ(*,*) n PRINT*, 'Dame la intensidad de la corriente (Amperes)' READ(*,*) i PRINT*, 'Dame el area del solenoide (metros cuadrados)' READ(*,*) a PRINT*, 'Dame la magnitud del campo magnetico (Teslas)' READ(*,*) b PRINT*, 'Dame el angulo de los vectores V X B (Grados)' READ(*,*) o theta = ( o * 3.14159 ) / 180 fb = n*i*a*b*(sin(theta)) PRINT*, 'La fuerza magnetica para este solenoide es',fb,'N' ENDIF IF (x.GT.3) THEN PRINT*, 'Saliendo . . . . .' ENDIF STOP END
EJECUCION
DESCARGA: fisica.f
SALUDOS!!! ^_^
No hay comentarios:
Publicar un comentario