Scratch esempi di programmazione

Scratch esempi di programmazione

In questa lezione su Scratch esempi di programmazione ci eserciteremo con l’istruzione di selezione e le animazioni dello sfondo e dello sprite.

Scratch esempi di programmazione

Data una temperatura T, visualizzare se si tratta di una temperatura: “sotto zero”, “zero” oppure “sopra lo zero”.

Oltre a realizzare l’algoritmo creiamo anche una semplice animazione con gli sfondi e i costumi dello sprite scelto.

Quindi innanzitutto scegliamo quattro sfondi in Scratch a piacere.

Ad esempio io ho scelto: Blue Sky, Artic, Boardwalk e Slopes.

Aggiungeteli uno alla volta cliccando sull’icona in basso a destra come da figura:

sfondo Scratch esempi di programmazione

Dopo averli inseriti cliccate sulla linguetta sfondi in alto a sinistra:

sfondi scratch

Dovreste avere questi 4 sfondi come da figura (se è presente lo sfondo bianco cancellatelo).

Dopo scegliamo uno sprite con dei costumi in modo da poterli cambiare durante l’esecuzione del nostro semplice programma. Io ad esempio ho scelto Giga.

giga scratch


Scratch esempi di programmazione – Sviluppo del codice

Adesso cominciamo ad aggiungere i nostri blocchi allo sprite selezionato.

1. Innanzitutto inseriamo il blocco quando si clicca sulla bandierina verde.

2. Dopo impostiamo il costume e lo sfondo di partenza. Quindi andiamo su Aspetto e scegliamo passa al costume giga-b e anche passa allo sfondo Blue Sky.

3. Dopo chiediamo in input la temperatura e la memorizziamo nella variabile temperatura.

4. Adesso facciamo i confronti. Andiamo dunque su controllo e scegliamo il blocco se allora altrimenti.

5. All’interno dello spazio vuoto trasciniamo il blocco esagonale con il simbolo maggiore e impostiamo la prima condizione: temperatura maggiore di 0. Se la condizione è vera allora scegliamo di fare le seguenti operazioni:

– andiamo su Aspetto e innanzitutto scegliamo il blocco dire per visualizzare in output il messaggio ‘la temperatura è maggiore di 0 ‘. Dopo cambiamo il costume a giga-c e infine passiamo allo sfondo Boardwalk.

Se invece la condizione è falsa allora controlliamo con un altro blocco se allora altrimenti che la temperatura sia minore di zero e se tale condizione è vera:

– andiamo su Aspetto e scegliamo il blocco dire per visualizzare in output il messaggio ‘la temperatura è minore di 0 ‘. Dopo cambiamo il costume a giga-d e infine passiamo allo sfondo Artic.

Altrimenti, l’unica opzione rimasta è che la temperatura sia uguale a zero. Facciamo senza ad inserire dunque un altro se e invece eseguiamo le seguenti operazioni:

– andiamo su Aspetto e scegliamo il  blocco dire per visualizzare in output il messaggio ‘la temperatura è uguale a 0 ‘. Dopo cambiamo il costume a giga-a e infine passiamo allo sfondo Slopes.

6. Inseriamo il blocco Ferma tutto.

 

temperatura scratch

In questa sezione ‘Scratch esempi di programmazione’ abbiamo affrontato un semplice esempio.

Alcuni link utili

Indice tutorial Scratch 3.0

Indice argomenti Scratch 2.0

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch

Numeri perfetti con Algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Sviluppo con Algobuild della successione di Fibonacci

Programmare con Scratch

Programmare con Scratch

Programmare con Scratch è semplice e divertente e allo stesso tempo allena la mente al pensiero logico.

Sviluppiamo dunque dei semplici esercizi per acquisire padronanza con i comandi di selezione.

Programmare con Scratch – primo esempio

Progettare l’algoritmo che, dati base e altezza di un triangolo, calcoli l’area se sono entrambi positivi, oppure stampi il messaggio “Valori di input errati“.

Innanzitutto scegliamo uno sfondo ed uno sprite qualsiasi.

sfondo area

Dopo creiamo le variabili necessarie:

base: rappresenta la base del triangolo e chiaramente deve essere un valore maggiore di zero.

altezza: rappresenta l’altezza del triangolo e deve essere un valore maggiore di zero.

area: è la variabile che memorizza il calcolo dell’area del triangolo.

programmare area

Quindi chiediamo in input la base e l’altezza e, solo se questi valori sono entrambi positivi, calcoliamo l’area del triangolo. Altrimenti visualizziamo un messaggio di errore.

Ecco di seguito il semplice programma con Scratch:

programmare area triangolo

Programmare con Scratch – Secondo esempio

Il secondo esempio è molto simile al primo.

Progettare l’algoritmo che, dati la base maggiore, la base minore e l’altezza di un trapezio, calcoli l’area se tutti i valori sono positivi, altrimenti stampi il messaggio “Valori di input errati“.

Innanzitutto scegliamo uno sfondo ed uno sprite qualsiasi e costruiamo il nostro script sullo sprite scelto.

L’algoritmo si risolve in maniera molto simile al precedente, ma questa volta occorre una variabile in più, cioè la base maggiore.

base: rappresenta la base minore del trapezio e deve essere un valore maggiore di zero.

BASE: rappresenta la base maggiore del trapezio e deve essere un valore maggiore di zero.

altezza: rappresenta l’altezza del trapezio e deve essere un valore maggiore di zero.

area: variabile che memorizza il calcolo dell’area del trapezio.

N.B. La variabile base è diversa da BASE.

Quindi non ci resta che costruire il nostro semplice programma in Scratch.

calcolo area trapezio

Chiaramente sarebbe utile anche controllare che la BASE sia maggiore di base. Aggiungete pure il controllo e discutiamone nei commenti sotto.

Abbiamo iniziato a programmare con Scratch realizzando, per il momento, dei semplici algoritmi di selezione.

Alcuni link utili

Indice tutorial scratch 3.0

Indice argomenti scratch 2.0

Numeri primi in Scratch

Massimo fra tre numeri in Scratch

Minimo tra 3 numeri in Scratch

Numeri perfetti con algobuild

Numeri amicabili

Selecion sort in Scratch

Esempio di successione di Fibonacci con Algobuild

La successione di Fibonacci in C++

Sviluppo con Algobuild della successione di Fibonacci

Redirect 301

Redirect 301

In questo articolo parleremo di redirect 301 e dunque di come impostare il redirect di un sito web dal file .htaccess.

Redirect 301 in dettaglio

Il codice 301 è un codice di stato del protocollo http che indica al client, che ha effettuato la richiesta al server, che la pagina è stata spostata in maniera definitiva.

Il codice di stato 302 del protocollo http indica invece che lo spostamento della pagina è provvisorio.

Quindi con il codice 301 il server comunica al client che la pagina web non si trova più, in maniera definitiva e permanente, al link originale.

Il motore di ricerca in questo modo ha le informazioni necessarie per modificare il proprio database, aggiornando la nuova URL e gli indici che indicano la nuova posizione della URL nelle SERP.

Pertanto gestire correttamente i redirect è un’operazione importante per la SEO, altrimenti il sito non viene indicizzato correttamente.

Quindi quando, per qualsiasi motivo, il sito deve essere spostato in maniera permanente e definitiva devo usare il redirect 301.

In questo modo si evita anche l’errore 404 ovvero pagina non trovata.

Ci sono vari modi per realizzare un redirect 301, vi ricordo infatti che si può fare semplicemente utilizzando il codice php.

Ecco dunque un esempio:

<?php
header("HTTP/1.1 301"); 
header("Location: https://www.nuovaurl.it"); 
?>

Dove la nuovaurl indica chiaramente l’URL del sito a cui reindirizzare il vecchio indirizzo.

Ma la soluzione ottimale di un redirect si realizza attraverso il file htaccess.


Redirect dell’intero sito con htaccess

Il redirect dell’intero sito in un altro dominio si può realizzare semplicemente scrivendo:

Redirect 301 / https://www.nuovaurl.com/

Se invece si vuole reindirizzare una singola pagina allora possiamo scrivere:

Redirect 301 /old.php https://www.miodominio.com/new.php

Ma attenzione, questo è solo uno dei possibili modi per fare il redirect con htaccess, nella prossima lezione parleremo di mod_rewrite.


Alcuni link utili

Indice tutorial JavaScript

Tutorial HTML 5

Tutorial CSS 3

htaccess directory

htaccess directory

htaccess directory – In questa lezione vedremo come limitare o consentire l’accesso solo ad alcune directory, sotto-directory, ad un singolo file o ad un gruppo di file.

Nella scorsa lezione abbiamo utilizzato le direttive limit, order, deny, allow per limitare o permettere l’accesso ad un sito web da parte di alcuni domini o indirizzi ip.

Adesso utilizzeremo ancora queste direttive per limitare gli accessi ai contenuti del nostro sito web, tramite il file htaccess.

htaccess directory – Bloccare l’accesso ad una directory

Per limitare l’accesso alla directory con htaccess utilizzo il blocco <directory> e all’interno inserisco le specifiche da seguire.

Facciamo dunque un semplice esempio:

<Directory /nome-cartella/*>
   Order deny,allow
   Deny from all
</Directory>

Chiaramente sostituite nome-cartella con il nome della vostra cartella.

Con questo codice sto definendo innanzitutto l’ordine di inserimento delle nostre istruzioni: prima deny e poi allow. Poi blocco l’accesso a tutto il contenuto della cartella, l’asterisco infatti estende il blocco a tutti i file e alle sotto-cartelle.

Quindi ad esempio se digito www.nome-sito.it/nome-cartella i contenuti all’interno della cartella non sono visibili a nessuno.


Bloccare l’accesso ad un file

Possiamo decidere anche di bloccare un solo file all’interno di una cartella. Ad esempio posso proteggere un ipotetico file password.php che contiene informazioni riservate. Per fare ciò utilizzo il blocco <Files>.

<Files password.php>
   Order deny,allow
   Deny from all
</Files>

Il codice sopra impedisce a tutti di accedere al file password.php e di leggerne o scaricarne il contenuto.

Bloccare l’accesso ad alcuni tipi di file

Posso anche bloccare una serie di file. Ad esempio decido di bloccare i file che hanno estensione pdf, ico o mp4. Per fare questo devo utilizzare il blocco <FilesMatch>.

<FilesMatch \.(ico|pdf|mp4)>
   Order deny,allow
   Deny from all
</FilesMatch>

Il codice qui sopra impedisce a chiunque, (Deny from all) l’accesso ai file che finiscono con .ico oppure .pdf oppure .mp4.

Chiaramente anche qui potete modificare le estensioni in base alle vostre esigenze.

Infatti un classico utilizzo è nel limitare gli accessi ai file con estensione .inc oppure .conf, cioè le estensioni dei file di configurazione.

Inoltre posso anche aggiungere chi invece può accedere ai file.

<FilesMatch \.(inc|.conf)>
   Order allow,deny
   Deny from all
   Allow from 123.123.123.123
</FilesMatch>

Chiaramente cambiate l’indirizzo IP con quello desiderato.

Ma attenzione se non si ha un indirizzo IP statico non ha senso adottare questa soluzione.

Si può in tal caso ricorrere alla sintassi CIDR indicando ad esempio:

 Allow from 123.123.123.0/16

oppure:

 Allow from 123.123.0/16

In modo da raggruppare un intervallo di indirizzi.


Alcuni link utili

Indice tutorial JavaScript

Tutorial HTML 5

Tutorial CSS 3

htaccess

htaccess

htaccess (Hypertext Access) – In questa lezione vedremo come configurare il file .htaccess per specificare le direttive di Apache. Infatti quando il web server riceve una richiesta, come ad esempio il caricamento di una pagina web, verifica se è presente un file .htaccess.

Questo file di solito si trova nella directory principale del sito web e può contenere varie indicazioni.

Il file .htaccess non è altro che un file di testo quindi si può modificare semplicemente con il blocco notes.

La documentazione ufficiale di Apache inerente i file htaccess la trovare al link: Apache htaccess.


Ecco quindi alcune delle indicazioni più comuni che è possibile dare:

Limitare accessi alle cartelle

– Impostare il redirect di un sito web

– Gestire l’URL rewriting

– Attivare il caching delle immagini

– Gestire le compressioni Gzip

– Proteggere le immagini dall’hot-linking

– Gestire pagine di errore personalizzate

Configurare PHP


Vediamo in dettaglio i vari punti specificati sopra.


Limitare accessi alle cartelle con htaccess

Può essere utile limitare gli accessi a tutto il sito o ad una o più cartelle o sotto cartelle del nostro sito web. Ad esempio per bloccare bot e visite indesiderate.

Quindi potremmo proprio utilizzare le direttive di Apache per controllare l’accesso non autorizzato a tali cartelle.

Dobbiamo quindi accedere al nostro file htaccess, cliccare con il tasto destro e modificarlo utilizzando delle direttive.

Le direttive che in questo caso ci serviranno sono:

Limit

Deny/Allow

Order

Quindi facciamo degli esempi di utilizzo:

<Limit GET HEAD OPTIONS POST PUT>
   Order Allow,Deny
   Allow from All
   Deny from 123.123.123.123
</Limit>

Con questo codice sto bloccando le visite dall’indirizzo IP specificato.

Infatti abbiamo innanzitutto impostato la direttiva limit per tutte le chiamate GET, HEAD, OPTIONS, POST e PUT.

Poi abbiamo definito l’ordine di inserimento delle nostre istruzioni: prima allow e poi deny.

Quindi prima con allow permettiamo l’accesso a tutti (ALL) e poi con deny neghiamo l’accesso ad un determinato indirizzo ip.

N-B. Si possono inserire anche più istruzioni deny di seguito.

Facciamo ancora un altro esempio:

<Limit GET HEAD OPTIONS POST PUT>
   order deny, allow
   deny from all
   allow from .dominimo-ok.com
</Limit>

In questo caso sto bloccando tutte le visite tranne quelle del dominio specificato. Potrei inserire al posto del nome di dominio anche un indirizzo ip. Inoltre si possono inserire anche più istruzioni allow di seguito.

Nella prossima lezione vedremo come limitare l’accesso solo a determinati file o cartelle.


Alcuni link utili

Indice tutorial JavaScript

Tutorial HTML 5

Tutorial CSS 3