{"id":649,"date":"2014-12-31T22:26:13","date_gmt":"2014-12-31T21:26:13","guid":{"rendered":"http:\/\/www.valcon.it\/pascal\/?p=649"},"modified":"2014-12-31T22:29:05","modified_gmt":"2014-12-31T21:29:05","slug":"funzioni","status":"publish","type":"post","link":"https:\/\/www.valcon.it\/pascal\/funzioni\/","title":{"rendered":"Funzioni"},"content":{"rendered":"<h3>Notazioni<\/h3>\n<table class=\"data\">\n<tbody>\n<tr>\n<td>Prefissa<\/td>\n<td><tt>-x<\/tt><\/td>\n<\/tr>\n<tr>\n<td>Infissa<\/td>\n<td><tt>x+y<\/tt><\/td>\n<\/tr>\n<tr>\n<td>Postfissa<\/td>\n<td><tt>x!<br \/>\nxy+<\/tt><\/td>\n<\/tr>\n<tr>\n<td>Funzionale<\/td>\n<td><tt>Succ(x)<\/tt><\/td>\n<\/tr>\n<tr>\n<td>Altre&#8230;<\/td>\n<td><tt>x<sup>2<\/sup><\/tt><br \/>\n<tt>x<sup>y<\/sup><\/tt><br \/>\n<tt>log<sub>a<\/sub>b<\/tt><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Notazione funzionale<\/h3>\n<p>Un&#8217;espressione come la seguente<\/p>\n<div class=\"indent\" style=\"padding-left: 30px;\"><tt>Z <-- (a+b)*(c-d)<\/tt><\/div>\n<p>utilizzando le espressioni con gli operatori propri del linguaggio (+, -, * \u2026) diventa in modo quasi automatico<\/p>\n<div style=\"padding-left: 30px;\"><tt>Z:=(a+b)*(c-d);<\/tt><\/div>\n<p>Se le operazioni da svolgere non sono previste dal linguaggio (UNO, DUE, TRE...)<\/p>\n<div class=\"indent\" style=\"padding-left: 30px;\"><tt>Z <-- (a UNO b) TRE (c DUE d)<\/tt><\/div>\n<p>possiamo utilizzare le procedure per ottenere<\/p>\n<div style=\"padding-left: 30px;\"><tt>UNO(a, b, X);<br \/>\nDUE(c, d, Y);<br \/>\nTRE(X, Y, Z);<\/tt><\/div>\n<p>dove X e Y sono delle variabili di appoggio per i risultati intermedi.<\/p>\n<p>Se fosse almeno possibile utilizzare la notazione funzionale della matematica<\/p>\n<div style=\"padding-left: 30px;\"><tt>Z:=TRE(UNO(a, b), SUB(c, d));<\/tt><\/div>\n<p>ci sarebbe un notevole miglioramento...<\/p>\n<h3>Funzioni<\/h3>\n<p>Dovendo svolgere delle azioni e dare infine una risposta si usa una notazione simile a quella delle procedure<\/p>\n<pre class=\"\">Function NOME(lista argomenti...): TIPO;<\/pre>\n<p>nella quale compare il TIPO della risposta che la funzione restituisce nel punto dove \u00e8 stata chiamata.<\/p>\n<p>Per realizzare questo, \u00e8 obbligatoria almeno un\u2019istruzione del tipo<\/p>\n<pre>NOME:=\"Espressione\";<\/pre>\n<p>nel blocco delle istruzioni della funzione stessa.<\/p>\n<p>Gli operatori binari infissi non sono definibili da programma per realizzare i nostri algoritmi (invece con l\u2019<em>overloading<\/em> del C++...) e quindi dobbiamo accontentarci della notazione funzionale.<\/p>\n<h3>Esercizi<\/h3>\n<p>Funzioni con e senza parametri da realizzare, anche imitando le versioni <em>originali<\/em>.<\/p>\n<ul>\n<li>Funzioni SENZA parametri:\u00a0<em>RandRIGA, RandCOL, RandCIFRA,\u00a0RandALFA<\/em><\/li>\n<li>Funzioni CON parametri:\u00a0<em>Media(X, Y), Minimo(X, Y), Massimo(X, Y),\u00a0ByteAlto(), ByteBasso(), BytesSwap(),\u00a0Tangente(x), Potenza(X, Y), Log10(), Pari(), MediaGeometrica(X, Y), InteroSuperiore(),\u00a0Maiuscolo(), Minuscolo()<\/em><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Notazioni Prefissa -x Infissa x+y Postfissa x! xy+ Funzionale Succ(x) Altre&#8230; x2 xy logab Notazione funzionale Un&#8217;espressione come la seguente Z<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/posts\/649"}],"collection":[{"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/comments?post=649"}],"version-history":[{"count":4,"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/posts\/649\/revisions"}],"predecessor-version":[{"id":653,"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/posts\/649\/revisions\/653"}],"wp:attachment":[{"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/media?parent=649"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/categories?post=649"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.valcon.it\/pascal\/wp-json\/wp\/v2\/tags?post=649"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}