home *** CD-ROM | disk | FTP | other *** search
/ 64'er Special 27 / 64er_Magazin_Sonderheft_27_19xx_Markt__Technik_de_Disk_2_of_2_Side_B.d64 / matrix-demo (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  3KB  |  136 lines

  1. 10 rem ********************************
  2. 11 rem *                              *
  3. 12 rem * demo-programm zur wirkungs-  *
  4. 13 rem * weise der basic-erweiterung  *
  5. 14 rem *     - matrixexpress -        *
  6. 15 rem *                              *
  7. 16 rem * dr.u.christ           1986   *
  8. 17 rem *                              *
  9. 18 rem ********************************
  10. 19 rem
  11. 20 ifa=0thena=1:load"matrixass v3",8,1
  12. 22 poke49162,96:sys49152:poke49162,32
  13. 24 rem
  14. 50 read n : rem anzahl der zeilen und spalten
  15. 52 n=n-1  : rem bei n=3 enthaelt matrix 9 elemente
  16. 54 dim ab(n,n),cd(n,n),ef(n,n),d
  17. 56 readk
  18. 58 goto1000
  19. 98 :
  20. 100 rem seite 0
  21. 102 rem -------
  22. 104 printchr$(147)
  23. 110 poke50928,96:sys50884:poke50928,169
  24. 120 return
  25. 198 ;
  26. 200 rem seite 1
  27. 202 rem -------
  28. 204 t1$="im beispiel eingesetzte matrizen:"
  29. 210 gosub100
  30. 212 poke211,0:poke214,3:sys58640
  31. 214 printt1$:print
  32. 218 print" matrix (ab) ":print
  33. 222 fori=0ton:printab(i,0),ab(i,1),ab(i,2):nexti
  34. 224 print"[195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195]"
  35. 226 poke211,0:poke214,11:sys58640
  36. 228 print" matrix (cd) ":print
  37. 230 fori=0ton:printcd(i,0),cd(i,1),cd(i,2):nexti
  38. 232 print"[195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195][195]"
  39. 234 poke211,0:poke214,17:sys58640
  40. 236 print" matrix (ef) ":print
  41. 238 fori=0ton:printef(i,0),ef(i,1),ef(i,2):nexti
  42. 240 t3$=" bitte eine taste druecken "
  43. 241 st$=chr$(18):z=z+1:ifz=20thenz=0:ifz<5thenst$=chr$(146)
  44. 242 poke211,5:poke214,23:sys58640
  45. 243 printst$t3$
  46. 244 geta$:ifa$=""then241
  47. 250 return
  48. 252 :
  49. 300 rem seite 2
  50. 302 rem -------
  51. 304 gosub100
  52. 310 poke51148,96:sys50884:poke51148,32
  53. 312 poke211,0:poke214,22:sys58640
  54. 314 print"  bitte waehlen sie einen befehl aus "
  55. 322 fori=1to7:poke211,34:poke214,5+2*i:sys58640
  56. 324 printchr$(18)i
  57. 326 nexti
  58. 330 geta$:ifa$=""then330
  59. 332 a=asc(a$):ifa<49ora>55then330
  60. 340 return
  61. 342 :
  62. 400 rem seite 3
  63. 402 rem -------
  64. 410 t1$=" loesung von :"+t5$
  65. 412 gosub210:readx:readx:goto1000
  66. 430 return
  67. 996 :
  68. 998 rem -------------------------------
  69. 1000 rem hauptprogramm
  70. 1002 rem -------------
  71. 1004 fori=0ton:forj=0ton:readab(i,j):nextj:nexti
  72. 1006 fori=0ton:forj=0ton:readcd(i,j):ef(i,j)=0:nextj:nexti
  73. 1010 restore
  74. 1012 gosub200
  75. 1014 gosub300
  76. 1020 ona-48goto1030,1040,1050,1060,1080,1090,1100
  77. 1026 :
  78. 1028 rem ******* equivalenz ***********
  79. 1030 @equ,ab,cd
  80. 1031 t5$="  (cd)=(ab)  "
  81. 1032 gosub400
  82. 1036 :
  83. 1038 rem ******** addition ************
  84. 1040 @add,ab,cd,ef
  85. 1041 t5$="  (ef)=(ab)+(cd) "
  86. 1042 gosub400
  87. 1046 :
  88. 1048 rem ******* subtraktion***********
  89. 1050 @sub,ab,cd,ef
  90. 1051 t5$="  (ef)=(ab)-(cd) "
  91. 1052 gosub400
  92. 1056 :
  93. 1058 rem ***** produkt mit skalar *****
  94. 1060 gosub100
  95. 1062 print:print:print"fuer die multiplikation wurde folgende"
  96. 1064 print"konstante gewaehlt"
  97. 1066 print:print:print"       k =",k
  98. 1067 gosub240
  99. 1070 @skp,ab,k
  100. 1071 t5$="  (ab)=k*(ab) "
  101. 1072 gosub400
  102. 1076 :
  103. 1078 rem ****** multiplikation ********
  104. 1080 @mul,ab,cd,ef
  105. 1081 t5$="  (ef)=(ab)*(cd) "
  106. 1082 gosub400
  107. 1086 :
  108. 1088 rem ******* determinante *********
  109. 1090 @det,ab,d
  110. 1092 gosub100
  111. 1094 print:print:print"der wert der determinante ist"
  112. 1095 print:print"      d=",d
  113. 1096 t5$=" determinantenrechnung "
  114. 1097 gosub240:gosub400
  115. 1098 :
  116. 1099 rem *** adjungierte u. inverse ***
  117. 1100 @inv,ab,cd,ef
  118. 1101 t5$="(ef)=inv(ab),(cd)=adj(ab)"
  119. 1102 gosub400
  120. 1200 end
  121. 1996 :
  122. 1998 :----------------------------------
  123. 2000 data 3    : rem anzahl der zeilen und spalten
  124. 2002 :
  125. 2004 data 3.41 : rem konstante
  126. 2006 :
  127. 2008 rem elemente der matrix (ab)
  128. 2010 data 1, 2, 2
  129. 2012 data 3, 1, 0
  130. 2014 data 1, 1, 1
  131. 2016 :
  132. 2020 rem elemente der matrix (cd)
  133. 2022 data 1, 2, 3
  134. 2024 data 2,-1, 4
  135. 2026 data 0,-1, 1
  136.