0% encontró este documento útil (0 votos)
278 vistas6 páginas

Programas de Sucesiones y Ordenación en Fortran

Este programa genera los términos de la sucesión del número e introduciendo el número de términos deseados. Calcula cada término como (1+1/N)^N y los imprime junto con su índice.

Cargado por

WiwiData
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
278 vistas6 páginas

Programas de Sucesiones y Ordenación en Fortran

Este programa genera los términos de la sucesión del número e introduciendo el número de términos deseados. Calcula cada término como (1+1/N)^N y los imprime junto con su índice.

Cargado por

WiwiData
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

TRABAJO DE LENGUAJE DE PROGRAMACION

Ejemplo
Sucesiones del número e
1.- INTRODUCCION
Este breve programa es un caso particular del programa anterior, sirve para formar
términos de la sucesión de números reales que tiene por limites el numero e
Solución:
PROGRAM SUCESIONES_DEL_NUMERO_e
INTEGER:: N
REAL:: A,AN
PRINT*, "SUCESIONES DE NUMEROS REALES"
PRINT*, "FORMACION DE TERMINOS DE LA SUCESION DEL NUMERO e"
PRINT*, "CUANTOS TERMINOS DESEA FORMAR"
READ*,AN
PRINT*, "INDICE TERMINO"
READ*, A,N
DO N=1, AN,1
AN=(1.+1/N)**N
PRINT*, "N=",N,"A",N,AN
END DO
END PROGRAM SUCESIONES_DEL_NUMERO_e
2.-INTRODUCCIÓN: Este breve programa sirve para formar los términos de la
sucesión de Fibonacci. Esta sucesión de números reales se define de la siguiente forma:
a1=1, a2=1, an=an-1+an-2
Vemos que los dos primeros términos han de estar separados y el resto siguen la ley de
recurrencia descrita en la relación:
an=an-1+an-2.
Este programa es igualmente válido, salvo en los 2 primeros términos, para cualquier otra
sucesión cuya ley de recurrencia sea la misma.
SOLUCIÓN:
PROGRAM FIBONACCI

INTEGER:: N,A,B,P

PRINT*,"********************"

PRINT*,"SUCESION DE FIBONACCI"

PRINT*,"********************"

PRINT*,"CUANTOS TERMINOS DE LA SUCESION DESEA FORMAR"

READ*,P

N=1

A=1

PRINT*,"INDICE" , "TERMINO"

PRINT*,"********************"

PRINT*,N,A
PRINT*,N,B

N=2

B=1

PRINT*,N,B

DO

N=N+1

C=B+A

PRINT*,N,C

A=B

B=C

IF(N>P) EXIT

END DO

END PROGRAM FIBONACCI


program orden
real,dimension(100)::x
print*,"Ingrese numero de valores a ingresar"
read*,n
do i=1,n
read*,x(i)
end do
do i=1,n-1
xmin=x(i)
index=i
do j=i+1,n
if (x(j)<xmin) then
xmin=x(j)
index=j
end if
end do
swap=x(i)
x(i)=x(index)
x(index)=swap
end do
do i=1,n
print*,x(i)
end do
end program orden

a data set contains a list of integers rangin from 0 to 10 where the same number may be
entered multiples times. The following program counts the number of occurrences for each
value. We will create an array C(i) that increases by one each time a number is entered.
thus, c(10) represents the number of zeros, c(1) represents the number of ones, an so forth
un conjunto de datos contiene una lista de enteros Rangin 0-10 donde se puede realizar el
mismo número de veces entró múltiplos. El siguiente programa cuenta el número de
ocurrencias de cada valor. Vamos a crear una matriz C (i) que aumenta en uno cada vez
que se introduzca un número. por lo tanto, c (10) representa el número de ceros, c (1)
representa el número de unos, un etc

program orden
integer c(0:10), value
print*,"numero de valores"
read*,n
!inicializamos todos los elementos de c a cero
do i=0,10
c(i)=0
end do
!lee un valor y incrementa en forma apropiada la posicion en la lista
do i=1,n
read*,value
c(value)=c(value)+1
end do
!imprimir resulatdos
do i=0,10
print*,"numero de ",i," es",c(i)
end do
end program orden

numero de valores
11
0
0
0
0
1
0
0
0
0
0
0
numero de 0 es 10
numero de 1 es 1
numero de 2 es 0
numero de 3 es 0
numero de 4 es 0
numero de 5 es 0
numero de 6 es 0
numero de 7 es 0
numero de 8 es 0
numero de 9 es 0
numero de 10 es 0
Press any key to continue

integer,dimension(:), allocatable::l
integer::value
print*,"numero de valores"
read*,n
allocate(l(n))
do i=1,n
read*,l(i)
end do
print*,"encontrando el valor"
read*,value
do i=1,n
if (l(i)==value) then
print*, "encontrando la posicion ",i
stop
end if
end do
print*,"no encontrado"

numero de valores
8
-4
5
11
13
19
20
41
52
encontrando el valor
19
encontrando la posicion 5
Press any key to continue

El vector tiene que estar ordenado en forma ascendente

También podría gustarte