DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen RC3600/RC7000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen RC3600/RC7000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦2df80c62b⟧ TextFile

    Length: 8704 (0x2200)
    Types: TextFile
    Names: »B27«

Derivation

└─⟦6dbcc9c03⟧ Bits:30000463 DOMUS disk image
    └─ ⟦this⟧ »/B27« 

TextFile

 0010 REM KOSTBEREGNING AF JENS DØSSING OG PETER B YDE
 0020 REM VERSION FRA 26/5/78
 0030 REM RC 701 VERSION AF F G KNUDSEN, RISMØLLESKOLEN
 0040 REM FEBRUAR 80.
 0050 REM MINDRE MODIFIKATIONEN VED ERLING SCHMIDT
 0055 ON ESC CHAIN "MENU"
 0060 DIM BUFFER$(128),BILLED$(7),SVAR$(1)
 0070 DIM STIP$(75),LINIE$(75)
 0080 D=15; MR=5; MI=6; L=18
 0090 STIP$="..................:......:......:......:......:"
 0100 STIP$=STIP$+"......:......:......:......:"
 0110 LINIE$="--------------------------------------"
 0120 LINIE$=LINIE$+"-------------------------------------"
 0130 DIM RNAVN$(MR,L),X$(L),SUM(6,D),V(D)
 0140 DIM VARE(MR,MI),MÆNGDE(MR,MI),SUMMÆNG(MR)
 0150 DIM INGR(MI),GEM(MR*MI,D)
 0160 DIM VNAVN$(MI*MR,L)
 0170 OPEN "DATKOST",IND,BUFFER$,20
 0180 EXEC TALIND
 0190 EXEC FILFIND
 0200 EXEC UDSKRIFT
 0210 EXEC VURDER
 0220 END KOSTBEREGNING
 0230 REM //----------//
 0240 PROC TALIND
 0250   PRINT CHR(12)
 0260   REPEAT 
 0270     INPUT "  ANTAL RETTER : ",RET
 0280     IF RET>MR THEN 
 0290       PRINT "DER MÅ HØJST ANGIVES"; MR; "RETTER."
 0300     ENDIF 
 0310     PRINT 
 0320   UNTIL RET<=MR
 0330   FOR T=1 TO RET
 0340     PRINT 
 0350     PRINT "  HVAD HEDDER RET NR.:"; T; 
 0360     INPUT RNAVN$(T)
 0370     REPEAT 
 0380       INPUT "  HVOR MANGE INGREDIENSER ER DER I RETTEN: ",INGR(T)
 0390       IF INGR(T)>MI THEN 
 0400         PRINT "DER MÅ HØJST VÆRE"; MI; "INGREDIENSER."
 0410       ENDIF 
 0420       PRINT 
 0430     UNTIL INGR(T)<=MI
 0440     IF T=1 THEN 
 0450       PRINT "  NU SKAL DU ANGIVE FØDEVARENUMMER IFØLGE FØDEVARE-"
 0460       PRINT "  LISTEN SAMT DEN ANVENDTE MÆNGDE AF HVER VARE."
 0470     ELSE 
 0480       PRINT "  FØDEVARENUMMER OG MÆNGDE ANGIVES."
 0490     ENDIF 
 0500     PRINT 
 0510     FOR Z=1 TO INGR(T)
 0520       INPUT "  FØDEVARE NR.: ",VARE(T,Z)
 0530       IF VARE(T,Z)<1 OR VARE(T,Z)>205 THEN GO TO 0520
 0540       GET IND,VARE(T,Z)*4-2 : VNAVN$(1)
 0550       PRINT VNAVN$(1),
 0560       INPUT "OK? ",VNAVN$(2)
 0570       IF VNAVN$(2)<>"" AND VNAVN$(2)<>"JA" THEN GO TO 0520
 0580       INPUT "  ANTAL GRAM  : ",MÆNGDE(T,Z)
 0590       SUMMÆNG(T)=SUMMÆNG(T)+MÆNGDE(T,Z)
 0600     NEXT Z
 0610     MAX1=MAX1+SUMMÆNG(T)
 0620     PRINT 
 0630   NEXT T
 0640 ENDPROC TALIND
 0650 REM //----------//
 0660 PROC FILFIND
 0670   FOR T=1 TO RET
 0680     FOR Z=1 TO INGR(T)
 0690       Z1=VARE(T,Z)*4-2
 0700       Z2=(T-1)*MI+Z
 0710       GET IND,Z1 : VNAVN$(Z2)
 0720       GET IND,Z1+1 : V(1),V(2),V(3),V(4),V(5)
 0730       GET IND,Z1+2 : V(6),V(7),V(8),V(9),V(10)
 0740       GET IND,Z1+3 : V(11),V(12),V(13),V(14),V(15)
 0750       FOR Y=1 TO D
 0760         P=V(Y)*MÆNGDE(T,Z)/100
 0770         SUM(T,Y)=SUM(T,Y)+P
 0780         SUM(6,Y)=SUM(6,Y)+P
 0790         GEM((T-1)*MI+Z,Y)=P
 0800       NEXT Y
 0810     NEXT Z
 0820   NEXT T
 0830   CLOSE IND
 0840 ENDPROC FILFIND
 0850 REM //----------//
 0860 PROC UDSKRIFT
 0870   FOR T=1 TO RET
 0880     EXEC FORTSÆT
 0890     VKOL=2; HKOL=7
 0900     PRINT "   "; RNAVN$(T)
 0910     PRINT 
 0920     EXEC ENERGI
 0930     EXEC TALUD
 0940     EXEC FORTSÆT
 0950     PRINT "   "; RNAVN$(T)
 0960     VKOL=8; HKOL=15
 0970     EXEC VITAMINERAL
 0980     EXEC TALUD
 0990   NEXT T
 1000   EXEC FORTSÆT
 1010   T=6
 1020 ENDPROC UDSKRIFT
 1030 REM //----------//
 1040 PROC TALUD
 1050   Z=0
 1060   REPEAT 
 1070     Z=Z+1
 1080     PRINT VNAVN$((T-1)*MI+Z); TAB(18); ":"; 
 1090     IF VKOL=2 THEN 
 1100       UD=MÆNGDE(T,Z)
 1110       EXEC USIN(UD)
 1120       UD=GEM((T-1)*MI+Z,1)
 1130       EXEC USIN(UD)
 1140     ENDIF 
 1150     FOR Y=VKOL TO HKOL
 1160       UD=GEM((T-1)*MI+Z,Y)
 1170       EXEC USIN(UD)
 1180     NEXT Y
 1190     PRINT 
 1200   UNTIL Z=INGR(T)
 1210   PRINT STIP$
 1220   PRINT "INDHOLD IALT"; TAB(18); ":"; 
 1230   EXEC SUMMEN
 1240   IF VKOL=2 THEN EXEC PROCENT
 1250   PRINT LINIE$
 1260 ENDPROC TALUD
 1270 REM //----------//
 1280 PROC ENERGI
 1290   PRINT TAB(18); ":      :      :  FEDTSTOF   :  KULHYDRAT  :"; 
 1300   PRINT "   PROTEIN   :"
 1310   PRINT TAB(18); ":NETTO :KILO- : IALT :POLY- : IALT :"; 
 1320   PRINT "SLAG- : IALT :ESSENT:"
 1330   PRINT TAB(18); ":      :JOULE :      :UMÆTT.:      :"; 
 1340   PRINT "GER   :      :AMINOS:"
 1350   IF T<=5 THEN 
 1360     PRINT "FØDEVARENAVN"; 
 1370   ELSE 
 1380     PRINT "RET"; 
 1390   ENDIF 
 1400   PRINT TAB(18); ": GRAM :  KJ  : GRAM : GRAM : GRAM :"; 
 1410   PRINT " GRAM : GRAM : GRAM :"
 1420   PRINT LINIE$
 1430 ENDPROC ENERGI
 1440 REM //----------//
 1450 PROC VITAMINERAL
 1460   PRINT TAB(18); ":"; TAB(35); "VITAMINER"; 
 1470   PRINT TAB(60); ":  MINERALER  :"
 1480   PRINT TAB(18); ":  A   :  D   :  E   :  C   :  B1  :"; 
 1490   PRINT "  B2  :  CA  :  FE  :"
 1500   PRINT TAB(18); ":MIKRO-:MIKRO-:MILLI-:MILLI-:"; 
 1510   PRINT "MIKRO-:MIKRO-:MILLI-:MILLI-:"
 1520   IF T<=5 THEN 
 1530     PRINT "FØDEVARENAVN"; 
 1540   ELSE 
 1550     PRINT "RET"; 
 1560   ENDIF 
 1570   PRINT TAB(18); ": GRAM : GRAM : GRAM : GRAM :"; 
 1580   PRINT " GRAM : GRAM : GRAM : GRAM :"
 1590   PRINT LINIE$
 1600 ENDPROC VITAMINERAL
 1610 REM //----------//
 1620 PROC SUMMEN
 1630   IF VKOL=2 THEN 
 1640     UD=SUMMÆNG(T)
 1650     EXEC USIN(UD)
 1660     UD=SUM(T,1)
 1670     EXEC USIN(UD)
 1680   ENDIF 
 1690   FOR Y=VKOL TO HKOL
 1700     UD=SUM(T,Y)
 1710     EXEC USIN(UD)
 1720   NEXT Y
 1730   PRINT 
 1740 ENDPROC SUMMEN
 1750 REM //----------//
 1760 PROC PROCENT
 1770   PRINT "ENERGI-PROCENT"; TAB(32); ":"; 
 1780   F=100/(SUM(T,2)*9.3+(SUM(T,4)+SUM(T,6))*4.1)
 1790   FOR Y=VKOL TO HKOL
 1800     IF Y<4 THEN 
 1810       PRO=SUM(T,Y)*9.3*F
 1820     ELSE 
 1830       PRO=SUM(T,Y)*4.1*F
 1840     ENDIF 
 1850     EXEC USIN(PRO)
 1860   NEXT Y
 1870   PRINT 
 1880 ENDPROC PROCENT
 1890 REM //----------//
 1900 PROC VURDER
 1910   PRINT CHR(12)
 1920   VKOL=2; HKOL=7
 1930   PRINT "   S A M L E T  V U R D E R I N G"
 1940   PRINT 
 1950   FOR Q=1 TO 2
 1960     IF VKOL=2 THEN EXEC ENERGI
 1970     IF VKOL=8 THEN EXEC VITAMINERAL
 1980     FOR T=1 TO RET
 1990       PRINT RNAVN$(T); TAB(18); ":"; 
 2000       EXEC SUMMEN
 2010     NEXT T
 2020     T=6
 2030     PRINT STIP$
 2040     PRINT "INDHOLD IALT      :"; 
 2050     IF VKOL=2 THEN 
 2060       UD=MAX1
 2070       EXEC USIN(UD)
 2080       UD=SUM(6,1)
 2090       EXEC USIN(UD)
 2100     ENDIF 
 2110     FOR Y=VKOL TO HKOL
 2120       UD=SUM(6,Y)
 2130       EXEC USIN(UD)
 2140     NEXT Y
 2150     PRINT 
 2160     PRINT "INDHOLD/1000 KJ   :"; 
 2170     F=1000/SUM(6,1)
 2180     IF VKOL=2 THEN 
 2190       UD=MAX1*F
 2200       EXEC USIN(UD)
 2210       PRINT "  1000:"; 
 2220     ENDIF 
 2230     FOR Y=VKOL TO HKOL
 2240       UD=SUM(6,Y)*F
 2250       EXEC USIN(UD)
 2260     NEXT Y
 2270     PRINT 
 2280     PRINT "NORMER /1000 KJ   :"; 
 2290     IF VKOL=2 THEN 
 2300       PRINT "      :  1000:   8.5:   1.0:"; 
 2310       PRINT "  33.0:   1.0:   7.0:   2.0:"
 2320       PRINT STIP$
 2330       EXEC PROCENT
 2340     ELSE 
 2350       PRINT " 100.0:   1.3:   1.3:   6.0:"; 
 2360       PRINT " 140.0: 170.0: 100.0:   1.7:"
 2370     ENDIF 
 2380     PRINT LINIE$
 2390     IF Q=1 THEN EXEC FORTSÆT
 2400     VKOL=8; HKOL=15
 2410   NEXT Q
 2420 ENDPROC VURDER
 2430 REM //----------//
 2440 PROC FORTSÆT
 2450   PRINT 
 2460   INPUT "  TRYK RETURN FOR AT FORTSÆTTE : ",SVAR$
 2470   PRINT CHR(12)
 2480 ENDPROC FORTSÆTTE
 2490 REM //----------//
 2500 PROC USIN(UTAL)
 2510   REM 6 PLADSER + STREG
 2520   BILLED$="      :"
 2530   UHEL=0
 2540   IF UTAL<1000000 AND UTAL=INT(UTAL) THEN UHEL=1
 2550   UTAL=INT(UTAL*10+.5)/10
 2560   IF UTAL<10000 OR UHEL=1 THEN 
 2570     UX=6
 2580     IF UHEL=0 THEN 
 2590       UDEL=(UTAL-INT(UTAL))*10; UTAL=UTAL-UDEL/10
 2600       BILLED$(5 : 2)="."+CHR(UDEL+48)
 2610       UX=4
 2620     ENDIF 
 2630     WHILE UTAL>0 DO 
 2640       UDEL=UTAL-INT(UTAL/10)*10; UTAL=INT(UTAL/10)
 2650       BILLED$(UX : 1)=CHR(UDEL+48)
 2660       UX=UX-1
 2670     ENDWHILE 
 2680     IF BILLED$(4 : 2)=" ." THEN BILLED$(4 : 1)="0"
 2690   ELSE 
 2700     BILLED$="??????:"
 2710   ENDIF 
 2720   PRINT BILLED$; 
 2730 ENDPROC 
«eof»