Re: Euromuunto

[vastaus aiempaan viestiin]

Kirjoittaja: Seppo Mustonen
Sähköposti:    -
Päiväys: 1.9.2001 16:51

Olen hieman yleistänyt euromuuntosukroa E niin, että se tuntee
euroille ja markoille erilaisia merkintöjä ja lyhenteitä ja
käyttää muunnetussa arvossa vastaavaa merkintää.
Esimerkkejä:
  100 e (594.57 mk)
  100 euroa (594.57 markkaa)
  100 EUR (594.57 FIM)
  100 mk (16.82 e)
  100 markkaa (16.82 euroa)
  100 FIM (16.82 EUR)

Kuten jo ilmoitin aikaisemmin, E-sukron saa käynnistettyä mukavimmin
näpäyttämällä hiirellä pehmonapiston uutta e-painiketta.
Kohdistimen on oltava tällöin välittömästi muunnettavan lausekkeen
perässä tyyliin 100 mk_

Viimeinen lisäys:
Jos E-sukron käynnistää yksinäisen e-kirjaimen kohdalta (eli
e:n kummallakin puolella vähintään yksi välilyönti ja kohdistin
osoittamassa e:tä), se kirjoittaa tuolle e:lle varjoksi merkin E.
Tällöin paperitulostuksissa tätä yhdistelmää vastaa euro-symboli.

Tässä E-sukron nykyversion listaus:

DELETE / Vie kohdistin kontrollisarakkeeseen ja aktivoi tämä!
*TUTSAVE <Survo>\U\S\E / Sitten talleta sukro E tällä komennolla!
/                                                   8.8.2001/SM (1.9.01)
/  def Weuro=W1 Wyksikkö=W2 Wmäärä=W3
/
*{tempo -1}{init}{Weuro=5.94573}{ref}
+ A: {save char W4}
/
- if W4 '<>' e then goto A1
*{l}{save char W4}
- if W4 '<>' {sp} then goto END
*{r2}{save char W4}
- if W4 '<>' {sp} then goto END
*{l}{d}{u}{pre}S{d}E{l}{u}{pre}S{goto END}
+ A1:
- if W4 '<>' {sp} then goto B
*{l}{save cursor W4,W5}
- if W5 = 1 then goto C else goto A1
+ B: {save word Wyksikkö}
+ D: {l}{save char W4}
- if W4 '=' {sp} then goto E
*{save cursor W4,W5}
- if W5 = 1 then goto C else goto D
+ E: {l}{save char W4}
- if W4 '<>' {sp} then goto F
*{save cursor W4,W5}
- if W5 = 1 then goto C else goto E
+ F: {save word Wmäärä}
- if Wmäärä <= 0 then goto C
- switch Wyksikkö
-   case mk: goto MK1
-   case MK: goto MK2
-   case FIM: goto MK3
-   case fim: goto MK4
-   case markka: goto MK5
-   case markkaa: goto MK5
-   case e: goto EU1
-   case E: goto EU2
-   case EUR: goto EU3
-   case eur: goto EU4
-   case euro: goto EU5
-   case euroa: goto EU5
-   default: goto C
+ MK1: {W6=1}{goto MK}
+ MK2: {W6=2}{goto MK}
+ MK3: {W6=3}{goto MK}
+ MK4: {W6=4}{goto MK}
+ MK5: {W6=5}{goto MK}
+ EU1: {W6=1}{goto EU}
+ EU2: {W6=2}{goto EU}
+ EU3: {W6=3}{goto EU}
+ EU4: {W6=4}{goto EU}
+ EU5: {W6=5}{goto EU}
/
+ MK: {W4=1}{Wmäärä=Wmäärä/Weuro}{goto G}
+ EU: {W4=2}{Wmäärä=Wmäärä*Weuro}
+ G: {d}{u}{ins line}{line start}int(100*{print Wmäärä}+0.5)/100={act}
*{l} {save word Wmäärä}{del line}{ref}{ref}{ins} ({write Wmäärä} {}
- if W4 = 1 then goto MK0
- switch W6
-   case 1: goto mk1
-   case 2: goto mk2
-   case 3: goto mk3
-   case 4: goto mk4
-   case 5: goto mk5
-   default: continue
/
+ mk1: mk{goto H}
+ mk2: MK{goto H}
+ mk3: FIM{goto H}
+ mk4: fim{goto H}
+ mk5: markkaa{goto H}
/
+ MK0: {}
- switch W6
-   case 1: goto eu1
-   case 2: goto eu2
-   case 3: goto eu3
-   case 4: goto eu4
-   case 5: goto eu5
-   default: continue
/
+ eu1: e{goto H}
+ eu2: E{goto H}
+ eu3: EUR{goto H}
+ eu4: eur{goto H}
+ eu5: euroa{goto H}
/
+ H: ){ins}
+ C: {ref}{ref}{goto END}
+ END: {tempo +1}{end}

Vastaukset:
[ei vastauksia]

Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!

Etusivu  |  Keskustelu
Copyright © Survo Systems 2001-2013. All rights reserved.
Updated 2013-06-15.