home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Macmaailma Vuosikerta 1994 to 1996
/
TK1996_3CD.ISO
/
pc
/
k_portti
/
tk1096
/
puppua.txt
Wrap
Text File
|
1994-10-19
|
5KB
|
142 lines
PuppuGeneraattori-makro
Sub MAIN
Dim L1$(14) 'Tèssè on lista L1
L1$(0) = "" 'Tèmè lause on tyhjè, koska joskus on
L1$(1) = "" 'vaihtelun vuoksi hyvè aloittaa L2-listan lauseella
L1$(2) = "jo edellisellè kaudella ilmennyt kehitys, ja "
L1$(3) = "arkipèivèn kokemukset osoittavat ettè "
L1$(4) = "laaja ja monipuolinen kokemus sekè "
L1$(5) = "keskeiset periaatteet samoin kuin "
L1$(6) = "organisaation tuntema huoli, mutta ennen kaikkea "
L1$(7) = "ei kuitenkaan sovi unohtaa, ettè "
L1$(8) = "ei ole tarpeen laajalti todistella nèiden ongelmien vakavuutta ja merkitystè, sillè "
L1$(9) = "tèssè vaiheessa on todettava, ettè "
L1$(10) = "toisaalta "
L1$(11) = "samoin "
L1$(12) = "niinpè "
L1$(13) = "jatkossakin "
Dim L2$(10) 'Alla seuraavan lauseen L2 eri vaihtoehdot
L2$(0) = "ohjelman vaatimusten toteuttaminen "
L2$(1) = "henkilÜstÜn osaksi tulevien opintojen vaikutustaso ja kohdentuminen "
L2$(2) = "toimintamme mèèrèn ja alan jatkuva kasvu "
L2$(3) = "nykyinen organisaatiorakenne "
L2$(4) = "organisaation uusi toimintakaavio "
L2$(5) = "erilaisten toimintamuotojen jatkuva kehitys "
L2$(6) = "asennekasvatuksen yleinen kèynnistèminen "
L2$(7) = "rakenteellisten ehtojen vahvistaminen ja kehittèminen "
L2$(8) = "luovien nèkemysten huomiointi "
L2$(9) = "tèstè kaikesta pysyvènè osoituksena oleva informaatio" + Chr$(30) + " ja tiedotustoimintamme "
Dim L3$(10) 'Alla lista kolmanneksi sijoitettavia lauseita
L3$(0) = "velvoittaa meitè analysoimaan "
L3$(1) = "nèyttelee keskeistè osaa pohdittaessa "
L3$(2) = "vaatii tèsmèllisyyttè ja pèèttèvèisyyttè sekè "
L3$(3) = "edellyttèè huolellista valmistautumista ja "
L3$(4) = "takaa sen, ettè huomattava osa on aktiivisesti mukana hahmotettaessa "
L3$(5) = "tèyttèè tèrkeèn tehtèvèn, kun mèèritellèèn "
L3$(6) = "antaa mahdollisuuden parantaa "
L3$(7) = "tekee vaikeaksi arvioida "
L3$(8) = "tekee mielenkiintoiseksi yrityksen eritellè "
L3$(9) = "antaa myÜnteisen panoksen saneeraamiseen ja uudenaikaistamiseen ja edistèè "
Dim L4$(10) 'Viimeinen lauselista
L4$(0) = "nykyisiè taloudellisia ja hallinnollisia oloja. "
L4$(1) = "ennusteita tulevaisuuden kehityssuunnista. "
L4$(2) = "osallistumistason kohottamista. "
L4$(3) = "vastuunsa tuntevaa asennetta organisaatiossa toimivilta. "
L4$(4) = "alustavia ehdotuksia. "
L4$(5) = "virikkeellisiè koulutustavoitteita. "
L4$(6) = "sellaista koulutusta, joka vastaa nykyhetken tarpeita. "
L4$(7) = "asiaankuuluvia toimintaolosuhteita. "
L4$(8) = "tarvittavaa kehitysmallia. "
L4$(9) = "erilaisia toimintamuotoja. "
'Alla alustetaan apumuuttujia, joita tarvitaan estèmèèn,
'ettei yksikèèn lause toistu neljèn seuraavan virkkeen aikana.
'Kaksoispiste vastaa uuden rivin aloittamista.
P5 = - 1 : P4 = - 1 : P3 = - 1 : P2 = - 1 : P1 = - 1
S14 = - 1 : S13 = - 1 : S12 = - 1 : S11 = - 1
S24 = - 1 : S23 = - 1 : S22 = - 1 : S21 = - 1
S34 = - 1 : S33 = - 1 : S32 = - 1 : S31 = - 1
virkelkm = 0 'Alustetaan virkelaskuri
'Alla muodostetaan ikkuna, jolla kysellèèn generoitavien virkkeiden lkm.
Begin Dialog UserDialog 292, 140, "PuppuGeneraattori"
OKButton 188, 14, 88, 21
CancelButton 188, 38, 88, 21
GroupBox 12, 6, 160, 128, "Montako virkettè ?"
OptionGroup .lkm
OptionButton 22, 23, 50, 16, "&1"
OptionButton 22, 41, 50, 16, "&5"
OptionButton 22, 59, 50, 16, "&10"
OptionButton 22, 77, 50, 16, "&20"
OptionButton 22, 95, 50, 16, "&50"
OptionButton 22, 113, 80, 16, "&100"
End Dialog
Dim dlg As UserDialog
If Dialog(dlg) Then
Select Case dlg.lkm
Case 5
virkelkm = 100
Case 4
virkelkm = 50
Case 3
virkelkm = 20
Case 2
virkelkm = 10
Case 1
virkelkm = 5
Case 0
virkelkm = 1
End Select
Else
Goto loppu
End If
'Alla arvotaan ensimmèinen virke. Ensimmèisessè virkkeessa kèytettèvien
'lauseiden valikoima on rajoitetumpi, joten tama on tehtava erikseen.
P = Int(Rnd() * 6)
S1 = Int(Rnd() * 8)
S2 = Int(Rnd() * 9)
S3 = Int(Rnd() * 9)
Puppua$ = L1$(P) + L2$(S1) + L3$(S2) + L4$(S3)
P1 = P : S11 = S1 : S21 = S2 : S31 = S311
virkelkm = virkelkm - 1
If virkelkm > 1 Then 'Tèssè silmukassa muodostetaan loput virkkeet.
For i = virkelkm To 0 Step - 1 'Step ilmoitettava, koska ei 1
uusiP:
P = Int(Rnd() * 13)
If P = P1 Or P = P2 Or P = P3 Or P = P4 Or P = P5 Then Goto uusiP
uusiS1:
S1 = Int(Rnd() * 9)
If S1 = S11 Or S1 = S12 Or S1 = S13 Or S1 = S14 Then Goto uusiS1
uusiS2:
S2 = Int(Rnd() * 9)
If S2 = S21 Or S2 = S22 Or S2 = S23 Or S2 = S24 Then Goto uusiS2
uusiS3:
S3 = Int(Rnd() * 9)
If S3 = S31 Or S3 = S32 Or S3 = S33 Or S3 = S34 Then Goto uusiS3
'Lisètèèn uusi virke 'Puppua$'-muuttujaan, ja pèivitetèèn osoittimia.
Puppua$ = Puppua$ + L1$(P) + L2$(S1) + L3$(S2) + L4$(S3)
P5 = P4 : P4 = P3 : P3 = P2 : P2 = P1 : P1 = P
S14 = S13 : S13 = S12 : S12 = S11 : S11 = S1
S24 = S23 : S23 = S22 : S22 = S21 : S21 = S2
S34 = S33 : S33 = S32 : S32 = S31 : S31 = S3
Next i
End If
charlkm = Len(Puppua$) 'Lasketaan Puppua$ _muuttujan merkit.
Insert Puppua$ 'Sijoitetaan syntynyt teksti Wordiin.
CharLeft charlkm, 1 'Maalataan syntynyt teksti.
ChangeCase 4 'Laitetaan joka virkkeen
ChangeCase 3 ' alkuun iso alkukirjain.
loppu:
End Sub