home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format 74 / af074a.adf / archives / af74a2.lzx / ARcalcV2.0 / Docs / Italiano / ARcalc.doc < prev    next >
Encoding:
Text File  |  1995-06-08  |  31.8 KB  |  794 lines

  1.  
  2.  
  3.  
  4.  
  5. Introduzione
  6. ************
  7.  
  8.    `ARcalc' è un programma che simula una calcolatrice scientifica,
  9. sviluppato per i computer della serie Amiga. `ARcalc' può essere
  10. utilizzata con qualunque modello di Amiga che disponga di una versione
  11. di sistema operativo superiore alla 1.3.
  12.  
  13.    La versione 2.1 del Workbench introduce la localizzazione, cioè la
  14. possibilità di scrivere programmi che comunichino con l'utente nella
  15. lingua che questi ha scelto: `ARcalc' è in grado di sfruttare questa
  16. caratteristica, ed è distribuito con i files necessari alla
  17. localizzazione in numerose lingue. Sono localizzate le voci di menu,e i
  18. messaggi di errore della calcolatrice, mentre si è deciso di non
  19. localizzare le etichette dei tasti , in quanto generalmente anche sulle
  20. calcolatrici reali queste restano invariate di paese in paese.
  21.  
  22.    Le funzionalità messe a disposizione da `ARcalc' sono quelle di
  23. calcolo in virgola mobile tipiche di una calcolatrice scientifica,
  24. inclusa la capacità di eseguire calcoli interi in base binaria, ottale
  25. ed esadecimale.  Le operazioni trigonometriche implementate possono
  26. essere eseguite su valori misurati in gradi, radianti o gradi decimali,
  27. e i numeri possono essere rappresentati in notazione esponenziale, con
  28. punto decimale fisso (indicando il n. di cifre decimali desiderate), o
  29. in un modo misto.  Indipendentemente dal formato di rappresentazione
  30. usato, tutti i calcoli sono svolti in doppia precisione.
  31.  
  32.    `ARcalc' è attualmente alla versione 2.0.
  33.  
  34.    La versione 1.0, peraltro mai rilasciata, era priva di
  35. localizzazione. Nella versione 1.11 erano stati eliminati alcuni bug.
  36. La versione 1.11 aggiungeva la possibilità di iconizzare il programma
  37. (mediante il pulsante "Icn" che rimpiazzava l'"Inf" presente nella
  38. versione 1.0).
  39.  
  40.    La versione 2.0 consente di aprire `ARcalc' su qualunque schermo
  41. pubblico, o di spostarla su un altro schermo una volta aperta. E' ora
  42. possibile utilizzare il programma da shell o da script come un comando
  43. che valuta direttamente l'espressione passata come argomento e ne
  44. restituisce in output il risultato. Tramite la nuova porta ARexx il
  45. motore di calcolo di `ARcalc' può essere usato da altre applicazioni o
  46. da script ARexx. E` inoltre implementato il parsing degli argomenti
  47. mediante le funzioni standard di AmigaDOS.
  48.  
  49.    Ricordate che `ARcalc' non funziona nelle versioni di sistema
  50. operativo inferiore alla 2.0; se cercate di farla partire in tale caso,
  51. semplicemente non accade nulla.
  52.  
  53.  
  54. Uso di ARcalc
  55. *************
  56.  
  57.    Il programma può essere lanciato tanto da Workbench quanto da
  58. Shell,e si presenta visivamente come una calcolatrice posta su uno
  59. schermo pubblico, in cui si possono facilmente distinguere il display e
  60. la tastiera. D'ora in poi, per evitare confusione, chiameremo `tasti'
  61. quelli della tastiera dell'Amiga, mentre per riferirci a quelli della
  62. calcolatrice parleremo di `pulsanti'.
  63.  
  64.    Puoi lanciare `ARcalc' da shell con il seguente template:
  65.  
  66.    `ARcalc FONT/K,SIZE/K/N,SCREEN/K,EVAL/K'
  67.  
  68.    Nota che l'uso della convenzione di parsing standard di AmigaDOS è
  69. una caratteristica introdotta nella versione 2.0 di `ARcalc'.
  70.  
  71.    `ARcalc' è stata progettata in modo da essere font-sensitive: essa
  72. cioè può essere visualizzata con qualunque font e dimensione l'utente
  73. decida, adattandosi ad esso. Al lancio, il font con cui visualizzare la
  74. calcolatrice, così come altre caratteristiche che vedremo più avanti,
  75. viene determinato grazie ad un file di configurazione presente nella
  76. stessa directory di `ARcalc', di nome `ARcalc.config'; se tale file è
  77. assente, è utilizzato per default lo stesso font usato dal Workbench.
  78. Lanciando la calcolatrice da shell si può scegliere il font da usare
  79. digitando:
  80.  
  81.    `ARcalc FONT=<nome font> SIZE=<dimensione Y>'
  82.  
  83.    In questo caso `ARcalc' cercherà di usare questo font, anche se
  84. fosse presente il file di configurazione.  Il font scelto (che può
  85. essere di bitmap o compugraphic, proporzionale o meno) viene utilizzato
  86. per le label associate ai tasti e per il display, ma non per i menu;
  87. esso può essere modificato anche dopo il lancio, tramite la scelta
  88. `Cambia font...' nel sottomenu `Parametri' del menu `Progetto' (*Note I
  89. menu di ARcalc::.  ).
  90.  
  91.    Puoi aprire la calcolatrice su uno schermo pubblico differente dal
  92. Workbench usando il parametro SCREEN, come nel seguente esempio:
  93.  
  94.    `ARcalc SCREEN mioschermo'
  95.  
  96.    Se devi fare un rapido calcolo da shell, puoi usare il parametro
  97. EVAL. Digitando
  98.  
  99.    `ARcalc EVAL <expression>'
  100.  
  101.    il risultato della valutazione sara mostrato sulla shell senza
  102. aprire l'interfaccia di `ARcalc'.
  103.  
  104.    Il lancio di `ARcalc' può fallire per diversi motivi (mancanza di
  105. memoria, scelta di un font troppo grande, errori in apertura di
  106. librerie...); in tal caso l'utente viene avvertito tramite un
  107. appropriato messaggio di errore.
  108.  
  109.    Una delle peculiarità di `ARcalc' è che permette di introdurre
  110. espressioni complesse esattamente come vengono scritte normalmente.
  111. Tale operazione può essere fatta sia digitando manualmente
  112. l'espressione usando la tastiera del computer, che agendo mediante il
  113. mouse sui pulsanti della calcolatrice.  Nella parte superiore del
  114. display, che chiameremo in seguito "area di editing", è visibile
  115. l'espressione che si sta introducendo, ed essa può essere editata
  116. facendo uso dei tipici shortcut degli string gadget Amiga, o mediante
  117. gli appositi pulsanti di editing.
  118.  
  119.    Per calcolare il valore dell'espressione impostata, è sufficiente
  120. premere il tasto `RETURN' di Amiga, o il pulsante `=' della
  121. calcolatrice; il risultato comparirà nella parte inferiore destra del
  122. display, che chiameremo "area risultati". Nell'area risultati, oltre ai
  123. valori della computazione, possono essere anche visualizzati eventuali
  124. errori di sintassi o di calcolo.  Se si verifica un errore di sintassi,
  125. il cursore dell'area di editing si posiziona sul punto dell'espressione
  126. dove si è riscontrato l'errore, permettendo così di correggerlo; la
  127. posizione del cursore non è invece significativa in caso di errore di
  128. calcolo.  Per un elenco completo degli errori di sintassi e di calcolo
  129. si rimanda alla sezione 5 di questo manuale (*Note I menu di ARcalc::.
  130. ).
  131.  
  132.  
  133. Descrizione dettagliata dei pulsanti di ARcalc
  134. **********************************************
  135.  
  136.    Si darà ora una descrizione dettagliata della funzione svolta dai
  137. pulsanti della calcolatrice.  I pulsanti si dividono nelle seguenti
  138. classi:
  139.  
  140.  
  141. Pulsanti di editing
  142. ===================
  143.  
  144.    I pulsanti di editing si trovano nella parte superiore destra della
  145. calcolatrice, e servono ad eseguire le più comuni operazioni di
  146. editing. I pulsanti di editing sono i seguenti:
  147.  
  148. `<='
  149.      (freccia sinistra): questo pulsante permette di spostare a
  150.      sinistra di un carattere il cursore dell'area di editing. Analoga
  151.      funzione può essere ottenuta mediante la freccia sinistra della
  152.      tastiera di Amiga.
  153.  
  154. `=>'
  155.      (freccia destra): questo pulsante permette di spostare a destra di
  156.      un carattere il cursore dell'area di editing. Analoga funzione
  157.      può essere ottenuta mediante la freccia destra della tastiera di
  158.      Amiga.
  159.  
  160. `Del'
  161.      (Delete): questo pulsante permette di cancellare il carattere su
  162.      cui si trova il cursore dell'area di editing. Analoga funzione
  163.      può essere ottenuta mediante il tasto Del di Amiga.
  164.  
  165. `Bck'
  166.      (Backspace): questo pulsante permette di cancellare il carattere
  167.      alla immediata sinistra del cursore nell'area di editing. Analoga
  168.      funzione può essere ottenuta mediante il tasto <- di Amiga.
  169.  
  170. `Clr'
  171.      (Clear): questo pulsante permette di cancellare tutta
  172.      l'espressione. Analoga funzione può essere ottenuta mediante la
  173.      pressione dei tasti Amiga-Left X
  174.  
  175.  
  176. Pulsanti di stato
  177. =================
  178.  
  179.    I pulsantii di stato sono caratterizzati dal fatto di modificare lo
  180. stato della calcolatrice. Lo stato complessivo della calcolatrice è
  181. visibile nella parte inferiore sinistra del display, rappresentato da
  182. alcune sigle: per comodità chiameremo "area di stato" l'area del
  183. display in cui tali sigle compaiono.  Si noti che lo stato complessivo
  184. al lancio del programma dipende dal contenuto del file di
  185. configurazione `ARcalc.config'; se questo non è presente, vengono
  186. assunti dei valori di default, indicati nel seguito.
  187.  
  188.    I pulsanti di stato sono i seguenti:
  189.  
  190. `Bse'
  191.      (numeric BaSE): questo pulsante permette di scegliere la base in
  192.      cui si desidera lavorare.  La base attuale è visibile nell'area
  193.      di stato, mediante uno dei seguenti simboli:
  194.  
  195.     `dec'
  196.           base decimale
  197.  
  198.     `hex'
  199.           base esadecimale
  200.  
  201.     `oct'
  202.           base ottale
  203.  
  204.     `bin'
  205.           base binaria
  206.  
  207.      La pressione del pulsante `Bse' produce il passaggio da una base
  208.      alla successiva nel seguente ordine:
  209.  
  210.      `... -> dec -> hex -> bin -> oct -> ...'
  211.  
  212.      Il cambio di base da luogo automaticamente all'annullamento
  213.      dell'espressione eventualmente presente nell'area di editing,
  214.      perchè ogni numero nella espressione cambierebbe valore nella
  215.      nuova base. Si noti che quandola base non è quella esadecimale
  216.      alcuni dei pulsanti della calcolatrice, pur continuando a
  217.      funzionare, perdono di significato (p.e. i tasti `A', `B', `C',
  218.      `D', `E', `F' in base decimale non sono utili, anche se continano a
  219.      funzionare).  `ARcalc' inoltre non è in grado di utilizzare
  220.      numeri non interi in basi diverse da quella decimale: ciò
  221.      comporta anche il fatto che alcune funzioni non siano più
  222.      significative pur continuando ad essere utilizzabili (p.e.  la
  223.      funzione `sin(X)', pur funzionando perfettamente in ogni base, può
  224.      restituire solo i valori 0 o 1 se la base non è decimale).  Se
  225.      non è presente il file `ARcalc.config', al lancio del programma
  226.      viene usata la base decimale.
  227.  
  228. `Fse'
  229.      (Fixed,Scientific,normal): questo pulsante permette di scegliere
  230.      la notazione di visualizzazione dei risultati tra le seguenti tre
  231.      modalità:
  232.  
  233.      `Fissa': indicato dal sibolo `fix' nell'area di stato, tale
  234.      formato prevede la visualizzazione del risultato con un numero
  235.      fissato di cifre decimali. Il numero di cifre decimali è
  236.      definibile mediante il tasto `Fix'.
  237.  
  238.      `Scientifica': indicato dal simbolo `sci' nell'area di stato, tale
  239.      formato prevede la visualizzazione del risultato in notazione
  240.      scientifica.  Si noti che in tale formato il numero di cifre
  241.      significative fissato con il pulsante `Fix' non è più riferito
  242.      alle cifre decimali, ma alle cifre componenti la base del numero
  243.      in notazione scientifica.
  244.  
  245.      `Normale': indicato dal simbolo `nor' nell'area di stato, tale
  246.      formato è un misto dei due precedenti: il risultato verrà
  247.      visualizzato nel formato che produrrà la stringa più piccola,
  248.      tra quello scientifico e quello a virgola fissa.
  249.  
  250.      Si noti che nel passaggio da un formato all'altro il risultato
  251.      dell'ultima espressione viene rivisualizzato nel nuovo formato.
  252.      Se non è presente il file `ARcalc.config', al lancio del
  253.      programma viene usata la notazione normale.
  254.  
  255. `Drg'
  256.      (Degrees,Radiant,decimal degrees (Grad) ): Questo pulsante
  257.      permette di scegliere l'unità di misura degli archi per le
  258.      funzioni trigonometriche. Le possibili unità di misura sono:
  259.  
  260.         * `Gradi': caratterizzati dal simbolo `deg' nell'area di stato
  261.  
  262.         * `Radianti': caratterizzati dal simbolo `rad' nell'area di
  263.           stato
  264.  
  265.         * `Gradi decimali': caratterizzati dal simbolo `Grad' nell'area
  266.           di stato
  267.  
  268.      Se non è presente il file `ARcalc.config', al lancio del
  269.      programma gli archi si considerano misurati in radianti.
  270.  
  271. `Fix'
  272.      (Fix significant digits): questo pulsante permette di fissare, a
  273.      seconda della notazione attualmente in uso, il numero di cifre
  274.      dopo la virgola (notazione fissa) o il numero di cifre
  275.      significative (notazione scientifica o normale). Quando questo
  276.      pulsante viene premuto, nella parte inferiore del display compare
  277.      la seguente scritta:
  278.  
  279.      `Numero di cifre (0-9)'
  280.  
  281.      a questo punto l'utente dovrebbe premere uno dei pulsanti numerici
  282.      della calcolatrice tra 0 e 9, indicando così il numero di cifre
  283.      desiderato: qualunque altro pulsante venga premuto comporta
  284.      l'annullamento della operazione, mantenendo invariato il numero di
  285.      cifre.  Si ricorda che qualunque sia il numero di cifre fissato,
  286.      tutti i calcoli vengono svolti in doppia precisione.  Se non è
  287.      presente il file `ARcalc.config', al lancio del programma viene
  288.      usato il numero massimo di cifre, cioè nove.
  289.  
  290. `Inv'
  291.      (Inverse function): questo pulsante premette di ottenere le
  292.      funzioni inverse delle funzioni presenti nella tastiera della
  293.      calcolatrice. Quando viene premuto, nell'area di stato compare il
  294.      simbolo `Inv': se il prossimo tasto premuto sarà un tasto
  295.      indicante una funzione, allora nell'espressione verrà introdotta
  296.      la funzione inversa corrispondente, a patto che questa sia
  297.      definita (p.e. non è definita la f.ne inversa della funzione
  298.      fattoriale *Fact*). La pressione del pulsante Inv non produce
  299.      nessun risultato se il pulsante successivo non è associato ad una
  300.      funzione, o se tale funzione non ammette funzione inversa.
  301.  
  302. `Hyp'
  303.      (Hyperbolic function): questo pulsante permette di ottenere le
  304.      funzioni iperboliche.  Quando viene premuto, nell'area di stato
  305.      compare il simbolo `Hyp': se il successivo pulsante premuto sarà
  306.      relativo ad una funzione trigonometrica, verrà inserita
  307.      nell'espressione la corrispondente funzione iperbolica. Il tasto
  308.      Inv può essere usato insieme a questo tasto per ottenere le
  309.      funzioni inverse delle funzioni iperboliche. La pressione del
  310.      pulsante `Hyp' non produce alcun effetto se il successivo premuto
  311.      non è associato ad una funzione trigonometrica.
  312.  
  313.  
  314. Pulsanti di testo
  315. =================
  316.  
  317.    I pulsanti di testo permettono di inserire nella espressione in
  318. editing cifre, funzioni, operatori etc. Tutto ciò che viene inserito
  319. mediante i pulsanti di testo può essere digitato anche tramite la
  320. tastiera di Amiga, ma tali pulsanti offrono una comoda scorciatoia. Si
  321. noti che il parser delle espressioni non è case sensitive, e quindi
  322. queste si possono digitare senza preoccuparsi di usare caratteri
  323. maiuscoli o minuscoli.  Diamo di seguito l'elenco dei pulsanti di testo
  324. presenti nella calcolatrice:
  325.  
  326. `log'
  327.      da solo produce la stringa `Log(', indicante la funzione
  328.      *logaritmo* in base 10; in congiunzione con `Inv' produce la
  329.      stringa `10^', dove `^' è il simbolo di elevamento a potenza.
  330.  
  331. `ln'
  332.      da solo produce la stringa `Ln(', indicante la funzione
  333.      *logaritmo* in base e (numero di nepero); in congiunzione con
  334.      `Inv' produce la stringa `e^'.
  335.  
  336. `x2'
  337.      da solo produce la stringa `^2', indicante l'elevamento alla
  338.      seconda potenza; in congiunzione con `Inv' produce la stringa
  339.      `Sqrt(',indicante la funzione *radice quadrata*.
  340.  
  341. `mod'
  342.      produce la stringa `Mod(', indicante la funzione *modulo*, cioè
  343.      il resto nella divisione del primo argomento per il secondo
  344.      (`Mod(11,3) restituisce 2')
  345.  
  346. `sin'
  347.      da solo produce la stringa `Sin(', indicante la funzione
  348.      trigonometrica *seno*. In congiunzone con `Inv' produce la stringa
  349.      `ArcSin(', indicante la funzione *arcoseno*. ATTENZIONE: il
  350.      risultato dell'applicazione di tali funzione dipende dall'unità
  351.      di misura scelta per l'arco (RAD, DEG, GRAD).  In congiunzione con
  352.      `Hyp' produce la stringa `Sh(', indicante la funzione *seno
  353.      iperbolico*. Se anche `Inv' era stato premuto viene prodotta la
  354.      stringa `ArcSh(', indicante la funzione *settore seno iperbolico*
  355.  
  356. `cos'
  357.      da solo produce la stringa `Cos(', indicante la funzione
  358.      trigonometrica *coseno*. In congiunzone con `Inv' produce la
  359.      stringa `ArcCos(', indicante la funzione *arcocoseno*. ATTENZIONE:
  360.      il risultato dell'applicazione di tali funzione dipende
  361.      dall'unità di misura scelta per l'arco (RAD, DEG, GRAD).  In
  362.      congiunzione con `Hyp' produce la stringa `Ch(', indicante la
  363.      funzione *coseno iperbolico*. Se anche `Inv' era stato premuto
  364.      viene prodotta la stringa `ArcCh(', indicante la funzione *settore
  365.      coseno iperbolico*
  366.  
  367. `tan'
  368.      da solo produce la stringa `Tan(', indicante la funzione
  369.      trigonometrica *tangente*. In congiunzone con `Inv' produce la
  370.      stringa `ArcTan(', indicante la funzione *arcotangente*.
  371.      ATTENZIONE: il risultato dell'applicazione di tali funzione
  372.      dipende dall'unità di misura scelta per l'arco (RAD, DEG, GRAD).
  373.      In congiunzione con `Hyp' produce la stringa `Th(', indicante la
  374.      funzione *tangente iperbolica*. Se anche `Inv' era stato premuto
  375.      viene prodotta la stringa `ArcTh(', indicante la funzione *ettore
  376.      tangente iperbolica*
  377.  
  378. `and'
  379.      produce la stringa `and', indicante l'operatore infisso di *and*
  380.      bit a bit. L'uso di questo operatore forza gli argomenti ad interi
  381.      a 32 bit.
  382.  
  383. `or'
  384.      produce la stringa `or', indicante l'operatore infisso di *or* bit
  385.      a bit. L'uso di questo operatore forza gli argomenti ad interi a
  386.      32 bit.
  387.  
  388. `not'
  389.      produce la stringa `not', indicante l'operatore prefisso di *not*
  390.      bit a bit. L'uso di questo operatore forza l'argomento ad intero a
  391.      32 bit.
  392.  
  393. `xor'
  394.      produce la stringa `xor', indicante l'operatore infisso di *xor*
  395.      bit a bit. L'uso di questo operatore forza gli argomenti ad interi
  396.      a 32 bit.
  397.  
  398. `fct'
  399.      produce la stringa `Fact(', indicante la funzione *fattoriale*.
  400.  
  401. `rnd'
  402.      produce la stringa `Rnd(', indicante una funzione *ad un
  403.      argomento* per la generazione di un numero pseudocasuale. Se x e`
  404.      il valore dell'argomento, il numero pseudo casuale viene generato
  405.      nell'intervallo `[0,X]' se X`>0', nell'intervallo `[X,0]'
  406.      altrimenti.
  407.  
  408. `( e )'
  409.      (pulsanti parentesi aperta e chiusa): producono i corrispondenti
  410.      caratteri.
  411.  
  412. `Pi'
  413.      produce la stringa `Pi', che raprresenta la costante simbolica
  414.      *Pi-greco*.  In fase di calcolo tale costante assume il valore
  415.      corrispondente in doppia precisione
  416.  
  417. `e'
  418.      produce la stringa `e', che rappresenta la costante simbolica
  419.      *numero e* (di Nepero). In fase di calcolo tale costante assume il
  420.      valore corrispondente in doppia precisione.
  421.  
  422. `0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F'
  423.      producono il carattere corrispondente, indicante una cifra.
  424.      L'interpretazione dei numeri presenti nell'espressione dipende
  425.      ovviamente dalla base settata; questi tasti restano comunque tutti
  426.      utilizzabili in ogni base, anche se l'uso di alcuni di essi in
  427.      basi diverse da quelle esadecimali è inutile.
  428.  
  429. `Exp'
  430.      produce il carattere `E', che si usa nella scrittura di un numero
  431.      in forma esponenziale. Si noti che nella analisi sintattica
  432.      dell'espressione non si considerano differenti i caratteri `E',
  433.      prodotto dal tasto `Exp', ed `e', prodotto dal tasto `e' (costante
  434.      di Nepero); questi possono apparire in entrambi i casi maiuscoli o
  435.      minuscoli, e il significato che viene ad essi attribuiti dipende
  436.      dal contesto.
  437.  
  438. `,'
  439.      (virgola): produce il carattere corrispondente. L'unico utilizzo
  440.      di questo tasto è nella scrittura della funzione `mod(A,B)';
  441.      poichè tale funzione ha due parametri, è necessario separarli
  442.      mediante una ",". La presenza di un apposito tasto garantisce la
  443.      completa usablità della calcolatrice via mouse.
  444.  
  445. `+,-,*,/,^'
  446.      producono il corrispondente carattere, indicante rispettivamente
  447.      l'operatore *somma*, *differenza*, *prodotto*, *rapporto*,
  448.      *elevamento a potenza*. Si noti che il `-' può essere anche
  449.      utilizzato come preoperatore per modificare il segno dell'operando.
  450.  
  451. `v,w,x,y,z'
  452.      questi pulsanti rappresentano delle variabili utilizzabili nelle
  453.      espressioni.  se Premuti, producono il carattere corrispondente,
  454.      indicante appunto una variabile. Per l'assegnamento di un valore a
  455.      queste variabili, vedere il pulsante speciale `sto'.
  456.  
  457.  
  458. Pulsanti speciali
  459. =================
  460.  
  461.    Raggruppiamo in questa classe tutti quei pulsanti la cui pressione
  462. produce qualche particolare azione non direttamente legata all'editing
  463. di un'espressione.  Tali pulsanti sono:
  464.  
  465. `sto'
  466.      consente di memorizzare il valore dell'espressione attuale in una
  467.      variabile.  Quando questo tasto viene premuto, nella parte
  468.      inferiore del display viene stampato un messaggio, che richiede di
  469.      scegliere la variable in cui memorizzare il valore:
  470.  
  471.      `Scegli la variabile:'
  472.  
  473.      a questo punto l'utente dovrebbe premere uno dei tasti-variabile
  474.      persenti alla sinistra della tastiera numerica: l'espressione
  475.      attualmente in editing verrà valutata, e il valore computato
  476.      sarà assegnato alla variabile scelta.  Quando questa variabile
  477.      verrà inclusa in un'espressione, il suo valore sarà utilizzato
  478.      in fase di calcolo.
  479.  
  480. `cpy'
  481.      permette di inserire nell'espressione, alla posizione indicata dal
  482.      cursore, il valore precedentemente calcolato, presente nella area
  483.      risultati.
  484.  
  485. `get'
  486.      permette di copiare dalla clipboard Amiga un'espressione
  487.      eventualmente postavi da un altra applicazione. Eventuali
  488.      caratteri con codice ASCII minore di 32 o maggiore di 126 vengono
  489.      eliminati dalla stringa.
  490.  
  491. `put'
  492.      permette di copiare il risultato di una espressione nella clipboard
  493.      Amiga, rendendola disponibile ad un'altra applicazione.
  494.  
  495. `='
  496.      (uguale): la pressione di questo tasto produce la valutazione
  497.      dell'espressione attuale, e la visualizzazione del risultato (o di
  498.      un messaggio di errore) nella area risultati.  Dopo la
  499.      computazione, l'espressione nell'area di editing può essere
  500.      automaticamente cancellata o meno, in funzione dello stato del flag
  501.      `AutoCLR', settabile dall'utente grazie al sottomenu `Parametri'
  502.      *Note I menu di ARcalc::.
  503.  
  504.  
  505. I menu di ARcalc
  506. ****************
  507.  
  508.    `ARcalc' dispone di due menu, che nella localizzazione italiana sono
  509. indicati come `Progetto' e `Clipboard'.  Il menu `Progetto' ha le
  510. seguenti voci:
  511.  
  512. `Parametri'
  513.      questo è un sottomenu, mediante il quale è possibile  modificare
  514.      o fissare alcune delle caratteristiche della calcolatrice.   Le
  515.      voci del sottomenu sono le seguenti:
  516.  
  517.     `Cambia font ...'
  518.           permette di modificare il font con cui la calcolatrice è
  519.           rappresentata, mediante l'uso di un font requester standard
  520.           Amiga.  Se il font scelto risultasse troppo grande, o non
  521.           esistente, verrebbe visualizzato un appropriato messaggio di
  522.           errore, e la calcolatrice non varierebbe; in caso contrario
  523.           verrebbe rivisualizzata utilizzando il nuovo font.
  524.  
  525.     `Usa font WB'
  526.           consente di modificare il font come per la voce precedente,
  527.           ma utilizzando il font di default dello schermo del Workbench.
  528.  
  529.     `AutoCLR'
  530.           questa voce permette di attivare o disattivare la funzione di
  531.           *auto-clear* della calcolatrice. Quando l'utente preme
  532.           return, il pulsante `=',il pulsante `sto', o il tasto RETURN,
  533.           l'espressione viene computata e, se la funzione di
  534.           *auto-clear* è attiva, il testo dell'espressione viene
  535.           cancellato, in modo da permettere immediatamente un nuovo
  536.           inserimento.  Se la funzione di *auto-clear* è invece
  537.           disattivata, il testo della espressione precedente non viene
  538.           cancellato, e può essere ritoccato.  La funzione di
  539.           *auto-clear* è attivata quando la voce del menu è preceduta
  540.           dal simbolo `checkmark Amiga'.
  541.  
  542.     `Salva parametri'
  543.           Permette di salvare lo stato e i settings della calcolatrice
  544.           in un file nominato `ARcalc.config'. Quando la calcolatrice
  545.           viene lanciata, cerca questo file e, se lo trova, si apre con
  546.           le caratteristiche in esso fissate. Le caratteristiche che
  547.           vengono fissate all'atto della scelta della voce `Salva
  548.           parametri' sono le seguenti:
  549.  
  550.              * posizione della calcolatrice sullo screen;
  551.  
  552.              * font utilizzato;
  553.  
  554.              * stato del flag AutoCLR.
  555.  
  556.              * stato della calcolatrice, cioè base numerica, unità di
  557.                misura dell'arco, formato di rappresentazione, numero di
  558.                cifre significative.
  559.  
  560. `Jump'
  561.      aggiunto nella versione 2.0 di `ARcalc', sposta la calcolatrice
  562.      sul successivo schermo pubblico aperto.
  563.  
  564. `Informazioni ...'
  565.      mostra un quadro con le informazioni sul programma e sul suo
  566.      autore. Analogo risultato si ottiene con la pressione del tasto
  567.      `Inf' della calcolatrice.
  568.  
  569. `Termina'
  570.      termina l'uso della calcolatrice. Analogo risultato si ottiene
  571.      premendo il gadget di chiusura della finestra della calcolatrice.
  572.  
  573.    Il menu `Clipboard' ha le seguenti voci:
  574.  
  575. `Taglia risultato'
  576.      copia il risultato dell'ultimo calcolo eseguito nella clipboard
  577.      Amiga. Analogo risultato si ottiene con la pressione del pulsante
  578.      `put' della calcolatrice.
  579.  
  580. `Incolla espressione'
  581.      copia il contenuto della clipboard Amiga nell'area di editing
  582.      dell'espressione corrente, eliminando eventuali caratteri non
  583.      leggibili (come i newline). Analogo risultato si ottiene con la
  584.      pressione del pulsante `get' della calcolatrice.
  585.  
  586.  
  587. I messaggi di errore
  588. ********************
  589.  
  590.    Diamo qui un elenco dettagliato dei messaggi di errore che possono
  591. comparire nell'area risultati del display, in seguito alla pressione
  592. del pulsante `=', `sto', o del tasto RETURN. Per una descrizione
  593. generale del fenomeno, *Note Uso di ARcalc::.
  594.  
  595.  
  596. Errori di sintassi
  597. ==================
  598.  
  599.    * `Operatore non valido': dopo un operando valido, è presente una
  600.      sequenza di simboli non riconosciuta come operatore.
  601.  
  602.    * `mancano cifre nel numero': visualizzato quando dopo il punto
  603.      indicante il termine della parte intera, non sono state digitate
  604.      le cifre decimali di un numero.
  605.  
  606.    * `Esponente non valido': visualizzato quando l'esponente di un
  607.      numero espresso in forma esponenziale, supera il valore massimo
  608.      consentito ( 300 ), o manca, o comunque non è corretto.
  609.  
  610.    * `Mancano parentesi': mancano parentesi nell'espressione. Parentesi
  611.      che erano state aperte, non sono mai state chiuse.
  612.  
  613.    * `Operando sconosciuto': dove dovrebbe esserci un operando, vi è
  614.      una sequenza di simboli non interpretabile come tale.
  615.  
  616.    * `Manca un operando': l'espressione termina con un operatore, cui
  617.      non segue un operando.
  618.  
  619.    * `Troppe cifre': nel numero sono presenti troppe cifre.
  620.  
  621.  
  622. Errori di calcolo
  623. =================
  624.  
  625.    * `Underflow': una qualche operazione ha prodotto un risultato così
  626.      piccolo da non essere rappresentabile in doppia precisione.
  627.  
  628.    * `Overflow' o `numero non valido': una qualche operazione ha
  629.      prodotto un risultato tanto grande da essere al di fuori del range
  630.      di numeri rappresentabili in doppia precisione
  631.  
  632.    * `Divisione per zero': si è prodotta una divisione per zero.
  633.  
  634.    * `Divisione per zero nel modulo': poichè non si può dividere un
  635.      numero per zero, tantomeno se ne può ottenere il modulo nella
  636.      divisione per zero.
  637.  
  638.    * `Argomento di ArcSin() fuori dal dominio': l'argomento di questa
  639.      funzione deve cadere nell'intervallo [-1,1]
  640.  
  641.    * `Argomento di ArcCos() fuori dal dominio': l'argomento di questa
  642.      funzione deve cadere nell'intervallo [-1,1]
  643.  
  644.    * `Argomento di ArcCh() fuori dal dominio': l'argomento di questa
  645.      funzione deve essere >= 1
  646.  
  647.    * `Argomento di ArcTh() fuori dal dominio': l'argomento di questa
  648.      funzione deve cadere nell'intervallo (-1,1) (gli estremi sono
  649.      esclusi).
  650.  
  651.    * `L'argomento del logaritmo deve essere positivo': Indica che è
  652.      stata applicata la funzione ln(x) o log(x) ad un valore negativo o
  653.      nullo, quando entrambe queste funzioni sono definite solo per
  654.      valori positivi dell'argomento.
  655.  
  656.    * `L'argomento di Sqrt() non può essere negativo': la funzione
  657.      Sqrt() (radice quadrata) è definita solo per valori non negativi.
  658.  
  659.    * `L'argomento di Fact() non può essere negativo': la funzione
  660.      fattoriale è definita solo per valori non negativi dell'argomento.
  661.  
  662.  
  663. Supporto ARexx
  664. **************
  665.  
  666.    A partire dalla versione 2.0 `ARcalc' dispone di una porta ARexx di
  667. nome "ARCALCPORT".  Puoi scrivere script ARexx o programmi (per es.
  668. plotter di funzioni) usando `ARcalc' come motore per la valutazione
  669. delle funzioni.
  670.  
  671.    `ARcalc' ignora qualunque comando spedito alla sua porta se non
  672. viene richiesto l'invio di risultati (in caso di script, se non viene
  673. specificato il flag "OPTIONS RESULT").
  674.  
  675.    Alcuni comandi ARexx possono fallire. Un comando fallisce se la
  676. variabile RC contiene il valore 0. Se il comando è inviato da uno
  677. script ARexx il messaggio di errore si trova nella variabile
  678. ARCALC_ERROR dello script.
  679.  
  680.    Puoi trovare qualche piccolo script di esempio nella directory AREXX
  681. dell'archivio di distribuzione.
  682.  
  683.    I comandi supportati da `ARcalc' sono i seguenti:
  684.  
  685.    `EVAL' <espressione>     Calcola il valore dell'espressione
  686. data. Se RC è zero il risultato si trova nella variabile
  687. RESULT; in caso contrario l'errore verificatosi è indicato nella
  688. variabile ARCALC_ERROR
  689.  
  690.    `SETVAR' <variabile> <espressione>     Valuta l'espressione data e pone
  691. il risultato nella variabile <variabile>, che può     essere una delle
  692. seguenti lettere: "u", "v", "w", "x", "y", "z".      Puoi usare queste
  693. variabili per memorizzare valori temporanei in una computazione
  694. complessa.      Come per il comando precedente, in caso di errore
  695. puoi esaminare il contenuto della variabile     ARCALC_ERROR
  696.  
  697.    `GETVAR' <variabile>     Restituisce il valore della variabile
  698. data nella variabile RESULT dello script.
  699.  
  700.    `SETBASE' <base>     Setta la base numerica. <base> può essere "dec",
  701. "hex", "oct" o "bin". Dopo aver settato     una base tutti i numeri
  702. implicati nelle espressioni (e i risultati) sono espressi in tale     base.
  703.  
  704.    `SETDRG' <drg>     Setta l'unita di misura degli archi per le funzioni
  705. trigonometriche.      <drg> può essere "deg","rad" or "grad".
  706.  
  707.    `SETFIX' <n.cifre>     Setta il numero di cifre decimali. <n.cifre> è
  708. un numero tra 0 e 9.
  709.  
  710.    `SETFSE' <modo>     Setta la notazione per la visualizzazione dei
  711. risultati. <modo> può essere "nor","fix" o "sci".
  712.  
  713.    `QUIT'     Termina `ARcalc'
  714.  
  715.  
  716. Sviluppi futuri
  717. ***************
  718.  
  719.    La versione 2.0 implementa la porta ARexx menzionata in questo
  720. capitolo nella versione precedente, e la capacità di spostarsi su
  721. schermi pubblici richiesta da alcuni utenti. Ora... qualunque altro
  722. suggerimento è il benvenuto!
  723.  
  724.  
  725. Ringraziamenti
  726. **************
  727.  
  728.    Ringrazio alcune persone, per l'aiuto che mi hanno dato:
  729.  
  730.    * Marco Caimi, Federica Colla, Paolo Silvera, Marco Zandonadi, per
  731.      il beta test del programma;
  732.  
  733.    * Steve McKinty per la revisione della documentazione in inglese (ho
  734.      modificato qualcosa dopo la sua revisione, per cui forse non è
  735.      ancora perfetto)
  736.  
  737.    * Reinhard Spisser per la documentazione TexInfo e AmigaGuide;
  738.  
  739.    * Tutti i miei *localizzatori ufficiali*, che hanno reso possibile la
  740.      distribuzione di `ARcalc' con una tale varietà di linguaggi:
  741.  
  742.         * Steve McKinty (inglese)
  743.  
  744.         * Reinhard Spisser (tedesco)
  745.  
  746.         * Frank Bignone (francese)
  747.  
  748.         * Fer de Jong (olandese)
  749.  
  750.         * Hannu Helminen (finlandese)
  751.  
  752.         * Anders Hammarquist (svedese)
  753.  
  754.         * Soeren Berg Hansen (danese)
  755.  
  756.    * Tutta la "comunità Amiga" del Dipartimento di Scienze
  757.      dell'Informazione della Universita` di Milano, per il loro
  758.      contagiante entusiasmo, che mi ha aiutato a portare a termine
  759.      questo progetto.
  760.  
  761.  
  762. Note di distribuzione
  763. *********************
  764.  
  765.    `ARcalc' è un programma shareware copyright (C) 1992,1993 di
  766. Roberto Attias.  Potete ridistribuire questo programma liberamente, a
  767. patto che tutti i suoi files siano inclusi nella copia nella loro forma
  768. originale, senza subire alcuna modifica, e che vi sia un ricarico solo
  769. nominale per la sua distribuzione; se vi piace e lo ritenete utile,
  770. avete l'obbligo morale di corrispondere all'autore la cifra di $10. Se
  771. non ritenete che questo programma sia sufficientemente utile per
  772. pagarlo, per favore, mandatemi un e-mail (o una lettera) per farmi
  773. conoscere le vostre opinioni.
  774.  
  775.    Questo programma è distribuito privo di garanzie di qualunque tipo,
  776. esplicite o implicite. Nell'usare `ARcalc' voi accettate qualunque
  777. rischio riguardante la qualità o le prestazioni dello stesso.
  778.  
  779.    Qualunque suggerimento, commento o lamentela e` gradito.
  780.  
  781.  
  782. Come raggiungere l'autore
  783. *************************
  784.  
  785.      e-mail: attias@ghost.sm.dsi.unimi.it
  786.      FIDO: 2:331/301.8
  787.  
  788.      Posta:Roberto Attias
  789.      Via Lissoni, 5
  790.      20162 Milano (MI)
  791.      Italia
  792.  
  793.      Tel:(02)-6470375