Random hardware
Random demo
Random software
  • Entry name:
     Vypocet cocek 
  • Category:
    Other
  • Publisher/Developer:
    Flop 4
  • Programming language:
    Atari BASIC
  • Entry name:
    Vypocet cocek
  • Category:
    Other
  • Publisher/Developer:
    Flop 4
Vypocet cocek Vypocet cocek Vypocet cocek Vypocet cocek Vypocet cocek Vypocet cocek Vypocet cocek Vypocet cocek
Listing 1
10 DEG
20 GRAPHICS 8
30 COLOR 1
40 SETCOLOR 2,​0,​0
50 A=200
60 B=80
70 R=80
80 A1=100
90 B1=80
100 R1=75
110 PLOT 20,​80:​DRAWTO 300,​80
120 FOR ALFA=0 TO 45
130 X1=INT(R1*COS(ALFA)+0.5)
140 Y1=INT(R1*SIN(ALFA)+0.5)
150 PLOT A-X1,​B-Y1
160 PLOT A-X1,​B-Y1
170 PLOT A-X1,​B+Y1
180 PLOT A-Y1,​B-X1
190 PLOT A-Y1,​B+X1
200 X1=INT(R*COS(ALFA)+0.5)
210 Y1=INT(R*SIN(ALFA)+0.5)
220 PLOT A1+X1,​B1-Y1
230 PLOT A1+X1,​B1+Y1
240 PLOT A1+Y1,​B1-X1
250 PLOT A1+Y1,​B1+X1
260 NEXT ALFA
270 PLOT 140,​40:​DRAWTO 140,​156
280 PLOT 165,​40:​DRAWTO 165,​156
290 PLOT 20,​60:​DRAWTO 165,​60:​DRAWTO 300,​85
300 PLOT 40,​75:​DRAWTO 40,​156
310 PLOT 275,​75:​DRAWTO 275,​156
320 ? " F H H' F'"
330 ? ""
340 FOR T=0 TO 2000:​NEXT T
350 GRAPHICS 0
360 DIM R$(5)
370 I=0:​F=0:​P=0
380 ? ""
390 ?:​? ""
400 ? ""
410 ? ""
420 ? ""
430 ?:​?:​? "K vypoctu cocky je treba zadat index"
440 ?:​? "lomu ,​oba polomery krivosti r1,​r2"
450 ?:​? "(v souladu se znamenkovou konvenci)"
460 ?:​? "a tloustku -d- projektovane cocky;"
470 ?:​? ""
480 ?:​? "predpoklada se n=n'=1 (tzn.,​ze cocka"
490 ? "je obklopena z obou stran vzduchem)":​?
500 FOR T=0 TO 4000:​NEXT T
510 ? ""
520 R1=0:​R2=0:​D=0:​P=0:​F=0
530 ?:​? "-zadej index lomu skla cocky ";
540 INPUT N
550 IF N>2 OR N<=1 THEN 960
560 ?:​? "Zadej polomery krivosti:​"
570 ?:​? "r1= ";
580 INPUT R1
590 ?:​? "r2= ";
600 INPUT R2
610 ?:​? "Zadej tloustku cocky "
620 ?:​? "d= ";:​INPUT D
630 IF R1>0 AND R2>0 THEN 870
640 IF R1<0 AND R2<0 THEN 870
650 F=(N*R1*R2)/((N-1)*(N*(R2-R1)+(N-1)*D))
660 F=INT(F*10000)/10000
670 M=1/(F/1000):​M=INT(M*100)/100
680 H=((R1-R2-D)*(N-1)*D)/(N*(R1-R2)-(N-1)*D)
690 SH1=R2*D/(N*(R1-R2)-(N-1)*D)
700 SH1=INT(SH1*10000)/10000
710 SH2=R1*D/(N*(R1-R2)-(N-1)*D)
720 SH2=INT(SH2*10000)/10000
730 H=INT(H*10000)/10000
740 IF F<0 THEN 860
750 IF F>0 THEN 970
760 ?:​? ""
770 ?:​? "Ohniskova vzdalenost/lamavost"
780 ?:​? "f'= ";F;" mm / ";M;" dioptrii;"
790 ?:​? "vzdalenost predmetove hl.r.od vrcholu "
800 ? "sH = ";SH2;" mm"
810 ?:​? "vzdalenost obrazove hl.rov.od vrcholu "
820 ? "s'H'= ";SH1;" mm"
830 ?:​? "vzdalenost obou hlavnich rovin od sebe "
840 ? "i = ";H;" mm"
850 FOR T=0 TO 5000:​NEXT T:​GOTO 1030
860 ?:​? "pocitana cocka je ;":​GOTO 760
870 ?:​? "pocitana cocka je ;":​GOTO 650
880 GOTO 1030
890 ?:​? "Chces ve vypoctech pokracovat ";
900 INPUT R$
910 IF R$="ANO" THEN 510
920 ? "":​?:​? "Dekuji za pozornost -"
930 ?:​? "- Tvuj  je k optickym vypoctum"
940 ?:​? " VZDY PRIPRAVEN !"
950 END
960 ?:​? "Zadal jsi spatne index lomu !":​GOTO 530
970 Q=ABS(R1)
980 X=ABS(D*(D/2-R2)/(D-R2+R1))
990 P=SQR(8*Q*X-4*X^2):​P=INT(P*10)/10
1000 ?:​? "Pocitana cocka je ;pro zadane"
1010 ?:​? "rozmery muze mit max.prumer ";P;" mm;"
1020 GOTO 760
1030 IF ABS(R1)<=40 OR ABS(R2)<=40 THEN GOTO 1680
1040 REM 
1050 GRAPHICS 7:​COLOR 3:​SETCOLOR 2,​8,​4
1060 IF R1<0 THEN R2=-R2
1070 IF R1<0 THEN D=-D
1080 FOR Z=5 TO 155
1090 POSITION Z,​40:​? #6;"A"
1100 NEXT Z
1110 IF F>0 AND P<=80 THEN 1130
1120 IF F<0 OR P>80 THEN GOTO 1140
1130 FOR Y=-INT(P/2) TO INT(P/2):​GOTO 1150
1140 FOR Y=-38 TO 38
1150 X1=-SQR(R1^2-Y^2)
1160 R3=ABS(R1)
1170 U=80+R3-D/2
1180 POSITION X1+U,​Y+40:​? #6;"B"
1190 NEXT Y
1200 IF F>0 AND P<=80 THEN 1340
1210 IF F<0 OR P>80 THEN GOTO 1220
1220 FOR X4=INT(-SQR(R1^2-1600)+80+ABS(R1)-D/2) TO INT(80-SQR(R2^2-1600)+D/2+R2)
1230 IF R2<0 THEN 1250
1240 GOTO 1260
1250 FOR X4=INT(-SQR(R1^2-1600)+80+ABS(R1)-D/2) TO INT(80+SQR(R2^2-1600)+D/2+R2)
1260 POSITION X4,​2:​? #6;"B":​NEXT X4
1270 FOR X4=INT(-SQR(R1^2-1600)+80+ABS(R1)-D/2) TO INT(80-SQR(R2^2-1600)+D/2+R2)
1280 IF R2<0 THEN 1300
1290 GOTO 1310
1300 FOR X4=INT(-SQR(R1^2-1600)+80+ABS(R1)-D/2) TO INT(80+SQR(R2^2-1600)+D/2+R2)
1310 POSITION X4,​78:​? #6;"B":​NEXT X4
1320 FOR Y=-38 TO 38
1330 GOTO 1350
1340 FOR Y=-INT(P/2) TO INT(P/2)
1350 X2=-SQR(R2^2-Y^2)
1360 IF R2<0 THEN 1380
1370 IF R2>0 THEN 1390
1380 X2=-X2
1390 POSITION X2+R2+80+D/2,​Y+40:​? #6;"B"
1400 NEXT Y
1410 FOR Y=10 TO 70
1420 POSITION 80-D/2+SH2,​Y:​? #6;"A"
1430 POSITION 80+D/2+SH1,​Y:​? #6;"A"
1440 NEXT Y
1450 IF P<30 AND F>0 THEN GOTO 1510
1460 IF F<0 THEN 1570
1470 FOR X=5 TO (80+D/2+SH1)
1480 POSITION X,​25:​? #6;"C"
1490 NEXT X
1500 DRAWTO 155,​45
1510 FOR Y=35 TO 75
1520 POSITION 138,​Y:​? #6;"A":​POSITION 22,​Y:​? #6;"A"
1530 NEXT Y
1540 ? " F F'"
1550 ? "predmetovy <- prostor +> obrazovy"
1560 ? "":​GOTO 1640
1570 FOR X=5 TO (80+D/2+SH1)
1580 POSITION X,​25:​? #6;"C":​NEXT X
1590 DRAWTO 155,​5
1600 FOR Y=35 TO 75
1610 POSITION 38,​Y:​? #6;"A":​NEXT Y
1620 ? " (F)"
1630 ? ""
1640 IF R1<0 THEN 1700
1650 FOR T=0 TO 1000:​NEXT T
1660 GRAPHICS 0
1670 GOTO 1710
1680 ? "":​?:​? "Bohuzel cocku nemohu pri svych gra-"
1690 ?:​? "fickych moznostech nakreslit -":​?:​?:​?:​GOTO 890
1700 ? "Cocka je znazornena v obracene poloze":​GOTO 1650
1710 ? "Chces tutez cocku prepocitat pro":​? "jine sklo ";
1720 INPUT R$
1730 IF R$="ANO" THEN 1750
1740 IF R$="NE" THEN 1760
1750 ?:​? "Zadej novy index lomu = ";:​INPUT N:​GOTO 1830
1760 ? "Chces cocku prepocitat na jinou tloustku ?":​INPUT R$
1770 IF R$="ANO" THEN 610
1780 IF R$="NE" THEN 1790
1790 ? "Chces cocku prepocitat pro jiny tvar?"
1800 INPUT R$
1810 IF R$="ANO" THEN 560
1820 IF R$="NE" THEN 890
1830 IF N>2 OR N<=1 THEN 1850
1840 GOTO 630
1850 ?:​? "Zadal jsi spatne  - znova !":​GOTO 1750	

This is non-commercial site, its content is based on Atari 8-bit home computer contents and references.
If you feel your rights are violated by showing/using any part of contents of your product represented on this page, please contact me immediatelly so I can remove it!