SIMULADOR DEL"FRIJOLARIUM"

 

 

10
REM SIMULADOR DEL"FRIJOLARIUM"
20
REM PARA CRECIMIENTO UNIESPECÍFICO
30
REM O INTERACCIONES BIESPECÍFICAS
40
REM ESTE PROGRAMA PUEDE SER COPIADO
50
O MODIFICADO A VOLUNTAD
60
REM
70
REM ------------------------
80
REM DECLARACIONES
90
REM N Y M REPRESENTAN LAS POBLACIONES TOTALES DE CADA ESPECIE.
100
REM A1 Y A2 SON ARREGLOS QUE REPRESENTAN LA CANTIDAD DE INDIVIDUOS
110
DIM N(50), M(50), A1(64), A2(64)
120
REM Q ES EL NÚMERO DE COLUMNAS DE LA PANTALLA O LA IMPRESORA
130
Q=40
140
REM MENÚ DE ENTRADA
150
GOSUB 1460
160
REM ASIGNACIÓN DE PARÁMETROS
170
ON C1 GOSUB 2110, 2150, 2190, 2240, 2290, 2360, 2420
180
REM
190
IF C1>4 THEN C=2:ELSE C=1
200
PRINT "CUÁNTAS GENERACIONES VAS A SIMULAR?"
210
INPUT G
220
IF C>1 THEN 260
230
PRINT "CUÁL ES EL VALOR INICIAL DE TU POBLACIÓN?"
240
INPUT N (1)
250
GOTO 290
260
PRINT "CUÁLES SON LOS VALORES"
270
PRINT "INICIALES DE TUS POBLACIONES"
280
INPUT N(1), M(1)
290
IF G > 50 THEN 200
300
REM
310
REM
320
REM
330
REM SE INICIA LA SIMULACIÓN
340
FOR T=1 TO G
350
IF C=1 THEN PRINT T, N(T): ELSE PRINT T, N(T); M (T)
360
REM LIMPIA TABLEROS
370
GOSUB 1810
380
REM ARROJA FRIJOLES
390
ON C GOSUB 1640, 1720
400
REM HACE CUENTAS Y SACA BALANCES
410
ON C1 GOSUB 460, 540, 620, 710, 820, 1010, 1240
420
NEXT T
430
GOSUB 1880
440
END
450
REM
460
REM EXPONENCIAL
470
S1=0
480
FOR I=1 TO 32
490
S1=S1+A1 (I)
500
NEXT I
510
N(T+1)=S1*F1
520
RETURN
530
REM
540
REM LOGÍSTICO ASINTÓTICO
550
S1=0
560
FOR I=1 TO 64
570
IF A1(I) <= L1 THEN S1=S1+A1(I)
580
REM IF A1 (I) L1 THEN S1=S1+L1
590
NEXT I
600
N (T+1)=S1*F1
610
RETURN
620
REM
630
REM LOGÍSTICO OSCILATORIO
640
S1=0
650
FOR I=1 TO 64
660
IF A1(I) < L1 THEN S1= S1+A1 (I)*F1
670
IF A1(I) = L1 THEN S1=S1+A1(I)
680
NEXT I
690
N (T+1)=S1
700
RETURN
710
REM
720
REM RÉGIMEN CAÓTICO
730
S1=0
740
FOR I=1 TO 64
750
IF A1(I) < L1 THEN S1=S1+A1(I) *F1
760
IF A1(I) = L1 THEN S1= S1+A1(I)
770
NEXT I
780
N(T+1)= S1
790
IF N (T+1) =0 THEN N(T+1) =1
800
RETURN
810
REM
820
REM COMPETENCIA INTERESPECÍFICA
830
S1=0
840
S2=0
850
FOR I=1 TO 64
860
IF A2 (I) >0 THEN 900
870
REM ESPECIE 1 SOLA
880
IF A1(I) <= L1 THEN S1=S1+A1(I)*F1
890
GO TO 970
900
IF A1(I) >0 THEN 940
910
REM ESPECIE 2 SOLA
920
IF A2(I) <= L2 THEN S2=S2+A2(I)*F2
930
GO TO 970
940
REM LAS DOS ESPECIES JUNTAS
950
IF A1(I) >A2(I) THEN S1=S1+A1(I)
960
IF A1(I) <A2(I) THEN S2=S2+A2(I)
970
NEXT I
980
N (T+1)=S1
990
M (T+1)=S2
1000
RETURN
1010
REM
1020
REM DEPREDADOR-PRESA
1030
REM A1 REPRESENTA LAS PRESAS Y A2 A LOS DEPREDADORES.
1040
S1=0
1050
S2=0
1060
FOR I=1 TO 64
1070
IF A2(I) >0 THEN 1120
1080
REM PRESAS SOLAS
1090
IF A1(I) < L1 THEN S1=S1+A1(I)*F1
1100
IF A1(I)=L1 THEN S1=S1+A1(I)
1110
GO TO 1190
1120
IF A1(I) >0 THEN 1160
1130
REM DEPREDADORES SOLOS
1140
IF A2(I)=1 THEN S2=S2+1
1150
GO TO 1190
1160
REM JUNTOS DEPREDADORES Y PRESAS
1170
IF A1(I) >= A2(I) THEN S2=S2+A2(I)*F2
1180
IF A1 (I) <A2(I) THEN S2=S2+A1(I)*F2
1190
NEXT I
1200
N(T+1)=S1
1210
M(T+1)=S2
1220
RETURN
1230
REM
1240
REM DEPREDADOR PRUDENTE
1250
S1=0
1260
S2=0
1270
FOR I=1 TO 64
1280
IF A2(I) >0 THEN 1330
1290
REM PRESAS SOLAS
1300
IF A1 (I) <L1 THEN S1=S1+A1(I) *F1
1310
IF A1 (I) =L1 THEN S1=S1+A1(I)
1320
GO TO 1420
1330
IF A1(I) >0 THEN 1370
1340
REM DEPREDADORES SOLOS
1350
IF A2 (I)=1 THEN S2=S2+1
1360
GO TO 1420
1370
REM JUNTOS DEPREDADORES Y PRESAS
1380
IF A1(I) <= A2(I) THEN S2=S2+A1(I)
1390
IF A1(I) <= A2(I) THEN 1420
1400
S1=S1+A1(I)-A2(I) *F1
1410
S2=S2+A2(I) *F2
1420
NEXT I
1430
N (T+1)=S1
1440
M (T+1)=S2
1450
RETURN
1460
REM MENÚ DE ENTRADA
1470
PRINT " NO SE PUEDEN SIMULAR MÁS DE 50 GENERACIONES"
1480
PRINT
1490
PRINT " SE PUEDEN SIMULAR VARIOS TIPOS DE CRECIMIENTOS"
1500
PRINT " POBLACIONES MONO Y BI-ESPECÍFICOS
1510
PRINT
1520
PRINT
1530
PRINT " (1)------EXPONENCIAL
1540
PRINT " (2)------APROXIMACIÓN ASINTÓTICA AL EQUILIBRIO"
1550
PRINT " (3)------OSCILACIONES ALREDEDOR DEL EQUILIBRIO"
1560
PRINT " (4)------RÉGIMEN CAÓTICO"
1570
PRINT " (5)------COMPETENCIA"
1580
PRINT " (6)------DEPREDADOR-PRESA"
1590
PRINT " (7)------DEPREDADOR PRUDENTE"
1600
PRINT
1610
PRINT " CUÁL QUIERES?"
1620
INPUT C1
1630
RETURN
1640
REM
1650
REM LANZADO DE UNA SOLA ESPECIE
1660
IF N (T) =0 THEN 1710
1670
FOR K=1 TO N(T)
1680
J=INT (RND (1) *64+1)
1690
A1(J) =A1(J)+1
1700
NEXT K
1710
RETURN
1720
REM
1730
REM LANZADO DE DOS ESPECIES
1740
GOSUB 1640
1760
FOR K=1 TO M (T)
1770
J=INT (RND (1) *64+1)
1780
A2 (J) =A2(J)+1
1790
NEXT K
1800
RETURN
1810
REM
1820
REM LIMPIADO DE TABLEROS
1830
FOR I=1 TO 64
1840
A1 (I) =0
1850
A2(I) =0
1860
NEXT I
1870
RETURN
1880
REM
1890
REM CALCULA EL VALOR MÁXIMO PARA GRAFICAR
1900
B=0
1910
FOR T=1 TO G
1920
IF N(T) >B THEN B=N (T)
1930
NEXT T
1940
IF C=1 THEN 1980
1950
FOR T=1 TO G
1960
IF M (T) >B THEN B=M (T)
1970
NEXT T
1980
REM
1990
REM GRAFICACIÓN DE RESULTADOS
2000
PRINT TAB(Q ); B
2010
PRINT "------------------------------------->"
2020
FOR T=1 TO G
2030
PRINT "!" TAB (Q*N(T) /B) "+"
2040
IF C=1 THEN 2060
2050
PRINT "!" TAB (Q*M(T) /B) "*"
2060
NEXT T
2070
RETURN
2080
REM
2090
REM ASIGNACIÓN DE PARÁMETROS
2100
REM
2110
REM EXPONENCIAL
2120
F1=3
2130
RETURN
2140
REM
2150
REM LOGÍSTICA ASINTÓTICA
2160
F1=2
2170
L1=2
2180
RETURN
2190
REM LOGÍSTICA OSCILATORIA
2200
F1=7
2210
L1=2
2220
RETURN
2230
REM
2240
REM LOGÍSTICA CAÓTICA
2250
F1=12
2260
L1=3
2270
RETURN
2280
REM
2290
REM COMPETENCIA
2300
F1=3
2310
F2=3
2320
L1=2
2330
L2=3
2340
RETURN
2350
REM
2360
REM DEPREDADOR-PRESA
2370
F1=3
2380
F2=3
2390
L1=2
2400
RETURN
2410
REM
2420
REM DEPREDADOR PRUDENTE
2430
F1=3
2440
F2=3
2450
L1=2
2460
RETURN
 
READY.
 

 

InicioAnteriorPrevioSiguiente