Programa En Fortran

Páginas: 10 (2441 palabras) Publicado: 16 de noviembre de 2012
PSEUDOCODIGO

Algoritmo TP2
Var:
Entero Cod(500),Canti(500,12),Opc,E,M
Caracter(2) zona(500)
!inicio
Opc [pic] 0
Mientras (opc7)
Llamarl Menu (opc)
Lamar Carga(cod,canti,zona,E)
Según sea (Opc)
(1)
Llamar Altas
Llamar Carga(cod,canti,zona,E)
(2)
Llamar Mesmayor(Cod,Canti,E)
(3)
Llamar Mesmenor(Cod,Canti,E)
(4)
Escribir "Buscar esquina mastransitada"
Escribir 'Ingrese numero mes correspondiente(1-12)'
Leer (M)
Llamar VALIDARMES(M)
Lamar Esquina(Cod,Canti,E,M)
(5)
Lllamar Listar(Canti,Zona,E)

(6)
Llamar Orden(cod,canti,E)
Fin según
Fin Mientras
Escribir "PROGRAMA TERMINADO"
Escribir "PRESIONE CUALQUIER TECLA PARA SALIR"
End Program

Subrutina Menu(A)
Var:
Entero: A
!inicio
Escribir "BIENVENIDO A LA BASE DE DATOS DEL CONTROL DE TRANSITO"
Escribir "MENU"
Escribir " 1 - Ingresar nuevo punto de control"
Escribir " 2 - Mes con mas transito (seleccionar esquina)"
Escribir " 3 - Mes con menos transito (seleccionar esquina)"
Escribir " 4 - Esquina mas transitada (seleccionar mes)"
Escribir " 5 - Promedio de transito mensual para cada zona"
Escribir " 6 - Cantidad anual de vehiculospor esquina"
Escribir " 7 - Salir"
Escribir "Ingrese Opcion:"
Leer(A)
Mientras ((A7))
Escribir "La opcion es incorrecta, seleccione opcion del 1 al 7"
Leer (A)
Fin Mientras
Fin Subrutina

Subrutina Altas
var:
Logica: esta
Carácter: rta,zona*2
Entero: codi,codigo,k,canti(12),opc
!inicio
Escribir "Agregar punto de control"
Rta [pic]"S"
Mientras (rta=="S” .o. rta=="s")
Abrir(24,file="transros.txt")
Esta [pic] falso
Escribir "Ingrese el codigo del nuevo punto de control:"
Leer (Codi)
Leer (24,'(i3)')(Codigo)
Mientras (.no.eof(24) .y. esta==.falso.)
Si (codigocodi) entonces
Leer (24,'(i3)') (codigo)
Sino
Escribir "ERROR! EL PUNTO DE CONTROL YA EXISTE"
Esta[pic] .verdadero.
Fin si
Fin mientras
Si (esta ==.falso.) entonces
Escribir"Ingrese la cantidad de vehiculos registrada por mes:"
Para k= 1,12
Escribir"Mes",K
Leer(Canti(k))
Fin para
Escribir “Ingrese la zona en que se encuentra el punto de control(MI/MA):"

Leer (zona)
Escribir "Punto de control agregado a la base de datos exitosamente"
Grabar (24,'(I3,12I5,1X,2A)')codi, canti, zona
Cerrar(24)
Sino
Cerrar(24)
Fin si

Escribir"Ingresa otro punto de control?"
Leer (Rta)
Fin mientras
Fin Subrutuna

Subrutina Carga(A,B,C,D)
Entero A(500),B(500,12),D,K,E,F(12)
Caracter(2) G,C(500)
!inicio
Abrir (24,file="transros.txt")
D[pic]0
Mientras (.no. eof(24))
D[pic]D+1
Leer(24,'(I3,12I5,1X,2A)') (E, (F(k),k=1,12), G)
A(D)[pic]E
Para K=1,12
B(D,K)[pic]F(K)
Fin para
C(D)[pic]G
Fin mientras
Cerrar(24)
Finsubrutina

Subrutina Mesmayor(A,B,C)
Logica hay
Entero A(500),B(500,12),C,D,E(12),F,G,i,j,busmes
Caracter H
!inicio
H[pic]"S"
Mientras (H=="S".or.H=="s")
Escribir "Buscar mes es con mayor transito"
Escribir"Ingrese el codigo del punto de control"
Leer (D)
Hay [pic].falso.
Para i=1,C
Si((A(i))==D) Entonces
hay[pic].Verdadero.
Para j=1,12
E(j)[pic]B(i,j)
FinPara
F[pic]maxval(E)
G[pic]busmes(E,F)
Fin si
Fin para
Si (.no. hay) entonces
Escribir “ERROR! NO SE HA ENCONTRADO EL PUNTO DE CONTROL"
Sino
Escribir " En el punto de control", D, " durante el mes ", G, " circularon", F, " vehiculos, siendo este el mes mas transitado"
Fin Si

Escribir "Busca en otro punto de control?"
Leer(H)
Fin mientras
Fin SubrutinaSubrutina Mesmenor(A,B,C)
Logica hay
Entero A(500),B(500,12),C,D,E(12),F,G,i,j,busmes
Caracter H
!inicio
H[pic]"S"
Mientras (H=="S".or.H=="s")
Escribir "Buscar mes es con menor transito"
Escribir "ingrese el codigo del punto de control:"
Leer (D)
hay[pic].falso.
Para i=1,C
Si((A(i))==D) Entonces
hay[pic].true.
Para j=1,12
E(j)[pic]B(i,j)
Fin para
F[pic]minval(E)...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Manual Para Programar En Fortran
  • Fortran
  • Fortran
  • FORTRAN ¿Qué es?
  • Fortran
  • fortran
  • fortran
  • Laboratorio fortran

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS