home *** CD-ROM | disk | FTP | other *** search
/ Macmaailma Vuosikerta 1994 to 1996 / TK1996_3CD.ISO / pc / k_portti / tk1096 / puppua.txt
Text File  |  1994-10-19  |  5KB  |  142 lines

  1. PuppuGeneraattori-makro
  2.  
  3. Sub MAIN
  4. Dim L1$(14)  'Tèssè on lista L1
  5. L1$(0) = ""  'Tèmè lause on tyhjè, koska joskus on
  6. L1$(1) = ""  'vaihtelun vuoksi hyvè aloittaa L2-listan lauseella
  7. L1$(2) = "jo edellisellè kaudella ilmennyt kehitys, ja "
  8. L1$(3) = "arkipèivèn kokemukset osoittavat ettè "
  9. L1$(4) = "laaja ja monipuolinen kokemus sekè "
  10. L1$(5) = "keskeiset periaatteet samoin kuin "
  11. L1$(6) = "organisaation tuntema huoli, mutta ennen kaikkea "
  12. L1$(7) = "ei kuitenkaan sovi unohtaa, ettè "
  13. L1$(8) = "ei ole tarpeen laajalti todistella nèiden ongelmien vakavuutta ja merkitystè, sillè "
  14. L1$(9) = "tèssè vaiheessa on todettava, ettè "
  15. L1$(10) = "toisaalta "
  16. L1$(11) = "samoin "
  17. L1$(12) = "niinpè "
  18. L1$(13) = "jatkossakin "
  19.  
  20. Dim L2$(10)  'Alla seuraavan lauseen L2 eri vaihtoehdot
  21. L2$(0) = "ohjelman vaatimusten toteuttaminen "
  22. L2$(1) = "henkilÜstÜn osaksi tulevien opintojen vaikutustaso ja kohdentuminen "
  23. L2$(2) = "toimintamme mèèrèn ja alan jatkuva kasvu "
  24. L2$(3) = "nykyinen organisaatiorakenne "
  25. L2$(4) = "organisaation uusi toimintakaavio "
  26. L2$(5) = "erilaisten toimintamuotojen jatkuva kehitys "
  27. L2$(6) = "asennekasvatuksen yleinen kèynnistèminen "
  28. L2$(7) = "rakenteellisten ehtojen vahvistaminen ja kehittèminen "
  29. L2$(8) = "luovien nèkemysten huomiointi "
  30. L2$(9) = "tèstè kaikesta pysyvènè osoituksena oleva informaatio" + Chr$(30) + " ja tiedotustoimintamme "
  31.  
  32. Dim L3$(10)  'Alla lista kolmanneksi sijoitettavia lauseita
  33. L3$(0) = "velvoittaa meitè analysoimaan "
  34. L3$(1) = "nèyttelee keskeistè osaa pohdittaessa "
  35. L3$(2) = "vaatii tèsmèllisyyttè ja pèèttèvèisyyttè sekè "
  36. L3$(3) = "edellyttèè huolellista valmistautumista ja "
  37. L3$(4) = "takaa sen, ettè huomattava osa on aktiivisesti mukana hahmotettaessa "
  38. L3$(5) = "tèyttèè tèrkeèn tehtèvèn, kun mèèritellèèn "
  39. L3$(6) = "antaa mahdollisuuden parantaa "
  40. L3$(7) = "tekee vaikeaksi arvioida "
  41. L3$(8) = "tekee mielenkiintoiseksi yrityksen eritellè "
  42. L3$(9) = "antaa myÜnteisen panoksen saneeraamiseen ja uudenaikaistamiseen ja edistèè "
  43.  
  44. Dim L4$(10)  'Viimeinen lauselista
  45. L4$(0) = "nykyisiè taloudellisia ja hallinnollisia oloja. "
  46. L4$(1) = "ennusteita tulevaisuuden kehityssuunnista. "
  47. L4$(2) = "osallistumistason kohottamista. "
  48. L4$(3) = "vastuunsa tuntevaa asennetta organisaatiossa toimivilta. "
  49. L4$(4) = "alustavia ehdotuksia. "
  50. L4$(5) = "virikkeellisiè koulutustavoitteita. "
  51. L4$(6) = "sellaista koulutusta, joka vastaa nykyhetken tarpeita. "
  52. L4$(7) = "asiaankuuluvia toimintaolosuhteita. "
  53. L4$(8) = "tarvittavaa kehitysmallia. "
  54. L4$(9) = "erilaisia toimintamuotoja. "
  55.  
  56. 'Alla alustetaan apumuuttujia, joita tarvitaan estèmèèn,
  57. 'ettei yksikèèn lause toistu neljèn seuraavan virkkeen aikana.
  58. 'Kaksoispiste vastaa uuden rivin aloittamista.
  59. P5 = - 1 : P4 = - 1 : P3 = - 1 : P2 = - 1 : P1 = - 1
  60. S14 = - 1 : S13 = - 1 : S12 = - 1 : S11 = - 1
  61. S24 = - 1 : S23 = - 1 : S22 = - 1 : S21 = - 1
  62. S34 = - 1 : S33 = - 1 : S32 = - 1 : S31 = - 1
  63.  
  64. virkelkm = 0  'Alustetaan virkelaskuri
  65.  
  66. 'Alla muodostetaan ikkuna, jolla kysellèèn generoitavien virkkeiden lkm.
  67. Begin Dialog UserDialog 292, 140, "PuppuGeneraattori"
  68.     OKButton 188, 14, 88, 21
  69.     CancelButton 188, 38, 88, 21
  70.     GroupBox 12, 6, 160, 128, "Montako virkettè ?"
  71.     OptionGroup .lkm
  72.         OptionButton 22, 23, 50, 16, "&1"
  73.         OptionButton 22, 41, 50, 16, "&5"
  74.         OptionButton 22, 59, 50, 16, "&10"
  75.         OptionButton 22, 77, 50, 16, "&20"
  76.         OptionButton 22, 95, 50, 16, "&50"
  77.         OptionButton 22, 113, 80, 16, "&100"
  78. End Dialog
  79. Dim dlg As UserDialog
  80. If Dialog(dlg) Then
  81.     Select Case dlg.lkm
  82.         Case 5
  83.             virkelkm = 100
  84.         Case 4
  85.             virkelkm = 50
  86.         Case 3
  87.             virkelkm = 20
  88.         Case 2
  89.             virkelkm = 10
  90.         Case 1
  91.             virkelkm = 5
  92.         Case 0
  93.             virkelkm = 1
  94.     End Select
  95. Else
  96.     Goto loppu
  97. End If
  98.  
  99. 'Alla arvotaan ensimmèinen virke. Ensimmèisessè virkkeessa kèytettèvien
  100. 'lauseiden valikoima on rajoitetumpi, joten tama on tehtava erikseen.
  101. P = Int(Rnd() * 6)
  102. S1 = Int(Rnd() * 8)
  103. S2 = Int(Rnd() * 9)
  104. S3 = Int(Rnd() * 9)
  105. Puppua$ = L1$(P) + L2$(S1) + L3$(S2) + L4$(S3)
  106. P1 = P : S11 = S1 : S21 = S2 : S31 = S311
  107. virkelkm = virkelkm - 1
  108.  
  109.  
  110. If virkelkm > 1 Then        'Tèssè silmukassa muodostetaan loput virkkeet.
  111.     For i = virkelkm To 0 Step - 1    'Step ilmoitettava, koska ei 1
  112. uusiP:
  113.     P = Int(Rnd() * 13)
  114.     If P = P1 Or P = P2 Or P = P3 Or P = P4 Or P = P5 Then Goto uusiP
  115. uusiS1:
  116.     S1 = Int(Rnd() * 9)
  117.     If S1 = S11 Or S1 = S12 Or S1 = S13 Or S1 = S14 Then Goto uusiS1
  118. uusiS2:
  119.     S2 = Int(Rnd() * 9)
  120.     If S2 = S21 Or S2 = S22 Or S2 = S23 Or S2 = S24 Then Goto uusiS2
  121. uusiS3:
  122.     S3 = Int(Rnd() * 9)
  123.     If S3 = S31 Or S3 = S32 Or S3 = S33 Or S3 = S34 Then Goto uusiS3
  124.  
  125. 'Lisètèèn uusi virke 'Puppua$'-muuttujaan, ja pèivitetèèn osoittimia.
  126.     Puppua$ = Puppua$ + L1$(P) + L2$(S1) + L3$(S2) + L4$(S3)
  127.     P5 = P4 : P4 = P3 : P3 = P2 : P2 = P1 : P1 = P
  128.     S14 = S13 : S13 = S12 : S12 = S11 : S11 = S1
  129.     S24 = S23 : S23 = S22 : S22 = S21 : S21 = S2
  130.     S34 = S33 : S33 = S32 : S32 = S31 : S31 = S3
  131.     Next i
  132. End If
  133.  
  134. charlkm = Len(Puppua$)    'Lasketaan Puppua$ _muuttujan merkit.
  135. Insert Puppua$        'Sijoitetaan syntynyt teksti Wordiin.
  136. CharLeft charlkm, 1    'Maalataan syntynyt teksti.
  137. ChangeCase 4        'Laitetaan joka virkkeen
  138. ChangeCase 3            ' alkuun iso alkukirjain.
  139.  
  140. loppu:
  141. End Sub
  142.