From 3a74dd15f6bfac1b164e73a723a48188aed5fc9e Mon Sep 17 00:00:00 2001 From: dakkar Date: Wed, 6 Aug 2008 13:02:17 +0000 Subject: qualche altra pagina git-svn-id: svn://luxion/repos/intro-perl@349 fcb26f47-9200-0410-b104-b98ab5b095f3 --- corso.content.tex | 139 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 139 insertions(+) diff --git a/corso.content.tex b/corso.content.tex index d20938b..0dddf50 100644 --- a/corso.content.tex +++ b/corso.content.tex @@ -207,10 +207,149 @@ use warnings; \section{Scalari} +\begin{frame}\frametitle{Cos'è uno scalare?} +\begin{itemize} +\item un singolo valore +\item \Perl\ distingue tra {\em singolare} e {\em plurale} +\item numeri e stringhe sono scalari +\end{itemize} +\end{frame} + \subsection{Numeri} +\begin{frame}\frametitle{Semantica dei numeri} +\begin{itemize} +\item i numeri sono trattati in intero o in virgola mobile, in modo trasparente +\item non è un problema vostro +\item<2-> a meno che non dobbiate preoccuparvi della precisione, ma per ora lasciate perdere +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Sintassi dei numeri} +\begin{itemize} +\item \lstinline!0!, \lstinline!-1!, \lstinline!1234645564!, \lstinline!1_234_645_564! +\item \lstinline!1.25!, \lstinline!-0.007!, \lstinline!1e12!, \lstinline!-3.5e-7! +\item \lstinline!0240!, \lstinline!0xA0!, \lstinline!0b10100000! +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Operazioni sui numeri} +\begin{itemize} +\item \lstinline!2+3! +\item \lstinline!5-7.5! +\item \lstinline!4*12e3! +\item \lstinline!7/3! +\item \lstinline!5%2! +\item \lstinline!3**7! +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Confronto tra numeri} +\begin{itemize} +\item \lstinline!2 < 3! +\item \lstinline!7.5 > 5! +\item \lstinline!4 != 12e3! +\item \lstinline!3 <= 7! +\item \lstinline!5 >= 2! +\item \lstinline!3 == 3! +\end{itemize} +\end{frame} + \subsection{Stringhe} +\begin{frame}[fragile]\frametitle{Sintassi delle stringhe (1)} + +Stringhe racchiuse tra virgolette singole: + +\begin{itemize} +\item \lstinline!'gino'! +\item \lstinline!''! +\item \lstinline!'con l\'apostrofo'! +\item \lstinline!'su!\\ +\lstinline!tre!\\ +\lstinline!righe'! +\item \lstinline!'con \\ backslash'! +\item \lstinline!'backslash, poi n: \n'! +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Sintassi delle stringhe (2)} + +Stringhe racchiuse tra virgolette doppie: + +\begin{itemize} +\item \lstinline!"gino"! +\item \lstinline!"con \"virgolette\"..."! +\item \lstinline!"con \"a capo\" alla fine\n"! +\item \lstinline!"con\ttabulazioni"! +\item \lstinline!"multiple!\\ +\lstinline!righe"! +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Operazioni sulle stringhe} +\begin{itemize} +\item \lstinline!'gino' . 'pino'! +\item \lstinline!'nano' x 7! +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Confronto tra stringhe} +\begin{itemize} +\item \lstinline!'gino' lt 'pino'! +\item \lstinline!'nano' gt 'mano'! +\item \lstinline!'str1' ne 'str2'! +\item \lstinline!'abcd' le 'wxyz'! +\item \lstinline!'piri' ge 'piri'! +\item \lstinline!'buh' eq 'buh'! +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Conversioni implicite} + +\Perl\ converte tra numeri e stringhe a seconda di come vengono usati: + +\begin{itemize} +\item \lstinline!'5'+3! \visible<2->{$\rightarrow$ \lstinline!8!} +\item \lstinline!4 x 5! \visible<2->{$\rightarrow$ \lstinline!'44444'!} +\end{itemize} +\end{frame} + +\begin{frame}[fragile]\frametitle{Conversioni e avvertimenti} +\begin{itemize} +\item mettete {\em sempre} \lstinline!use warnings;! all'inizio dei vostri programmi +\item così, se scrivere \lstinline!'12gino'+3!, otterrete un messaggio di avvertimento: + +\texttt{Argument "12gino" isn't numeric in addition (+)} +\end{itemize} + +\visible<2->{Otterrete anche molti altri avvertimenti utili. Usate {\em sempre} \lstinline!use strict;use warnings;!} + +\end{frame} + +\subsection{Variabili scalari} + +\begin{frame}[fragile]\frametitle{Nomi di variabile} +\begin{itemize} +\item i nomi di variabile scalare cominciano con \lstinline!$! %$ +\item \lstinline!$gino! %$ +\item \lstinline!$nome_1! %$ +\item \lstinline!$ultima_riga_letta! %$ +\end{itemize} + +\visible<2->{Cercate di dare nomi sensati alle variabili. \lstinline!$a! {\em non} è un nome sensato. \lstinline!$prezzo! è meglio.} + +\end{frame} + +\begin{frame}[fragile]\frametitle{Assegnamento} +\begin{itemize} +\item \lstinline!$prezzo_finale = $prezzo * (1+$iva/100)! +\item \lstinline!$nome = 'gino'! +\item \lstinline!$totale += $prezzo_finale! +\item \lstinline!$nome .= ' ' . $cognome! +\end{itemize} +\end{frame} + \subsection{Input/Output} % print, <>, chomp \subsection{\texttt{if} e \texttt{while}} % else, elsif -- cgit v1.2.3