Coding @ coworking

34
Coding @ Coworking Europe Code Week

Transcript of Coding @ coworking

Coding @ CoworkingEurope Code Week

Come è fatto un computer

Schema di funzionamento del computer

Come funziona la tastieraun tasto corrisponde ad una riga ed una colonna

Come funziona la RAM

Come funziona l’hard disk

Cosa serve per iniziare?

Pensiero Computazionale

Editor contro IDE

Compilatore contro Interprete

Linguaggi di programmazione

Nota: non sempre la distinzione è netta, Java e i linguaggi .NET p.e. vengono convertiti in bytecode ed eseguiti da un programma detto macchina virtuale specifico per ogni sistema operativo. Ci possono essere diverse produzioni dello stesso linguaggio, p.e. alcuni Basic sono compilati e altri interpretati.

Scratch (scratch.mit.edu)

Esempio di programma in Scratch

CODE Studio (https://code.org/)

QB64 (http://www.qb64.net/)

Download e installazione

Il primo programma

Tipi di dato specifici per QB64INTEGER va da -32768 a 32767

LONG va da -2147483648 a 2147483647

SINGLE va da ±2.802597E-45 a ±3.402823E+38

DOUBLE va da ±4.490656458412465E-324 a ±1.797693134862310E+308

STRING va da 0 a 2,147,483,647 caratteri

_BIT, _BIT * n, _BYTE, _INTEGER64, _FLOAT, _OFFSET, _MEM

con _UNSIGNED davanti saranno considerati senza segno

DIM variabile AS tipo

DIM variabile AS UNSIGNED tipo

oppure

variabile AS _UNSIGNED tipoDIM serve a definire la variabile

Gli Array

Diagramma di flusso

Le prime istruzioni da conoscereetichetta:

CLS

DIM testo AS STRING

PRINT “testo”

INPUT “testo: ”, testo$

SOUND 2000, 5

GOTO etichetta

DIM numero AS INTEGER

PRINT numero

Istruzione IF / ELSE (istruz. condizionale)

a = 1

IF a = 0 THENPRINT “0”

ELSEPRINT “1”

ENDIF

Istruzione FOR (istruzione ciclica)

FOR Conta = 1 to 10

PRINT Conta

NEXT Conta

Istruzione DO / LOOP (istruzione ciclica)

DO<istruzioni>

LOOP

DO WHILE <condizione><istruzioni>

LOOP

DO UNTIL <condizione><istruzioni>

LOOP

DO<istruzioni>

LOOP WHILE <condizione>

DO<istruzioni>

LOOP UNTIL <condizione>

ciclo infinito se non gestito dalle istruzioni

Nota: tutte i cicli che iniziano con il solo DO eseguono le istruzioni almeno una volta. DO WHILE e DO UNTIL possono essere scritti senza DO, WHILE e UNTIL sono infatti comandi del linguaggio.

Istruzione TYPE e suo funzionamento

Il nostro primo programma

Indovina il numeroDIM Risposta AS INTEGERDIM Numero AS INTEGERDIM Conteggio AS INTEGERDIM Gioco AS STRING

DO CLS

DO PRINT "Indovina il numero:" PRINT PRINT "A) 10" PRINT "B) 100" PRINT "C) 1000" PRINT INPUT "Con quanti numeri vuoi giocare? ", Gioco Gioco = UCASE$(Gioco)

LOOP UNTIL Gioco = "A" OR Gioco = "B" OR Gioco = "C"

CLS

RANDOMIZE TIMER

SELECT CASE Gioco CASE "A" Risposta = (RND * 9) + 1 PRINT "Numeri da 1 a 10"

CASE "B" Risposta = (RND * 99) + 1 PRINT "Numeri da 1 a 100" CASE "C" Risposta = (RND * 999) + 1 PRINT "Numeri da 1 a 1000" END SELECT

Numero = 0: Conteggio = 0

DO INPUT "Digita un numero: ", Numero Conteggio = Conteggio + 1

IF Numero < Risposta THEN PRINT "Troppo basso!" ELSEIF Numero > Risposta THEN PRINT "Troppo alto!" ELSE PRINT "Hai trovato il numero in"; Conteggio; "tentativi" END IF LOOP UNTIL Numero = Risposta

PRINT

DO INPUT "Giochi ancora S/N ", Gioco Gioco = UCASE$(Gioco) LOOP UNTIL Gioco = "S" OR Gioco = "N"

LOOP UNTIL Gioco = "N"

Funzione grafica

PSET permette di stampare a video un pixel a determinate coordinate (x, y) e attribuendogli un colore ( ,n).

Come funziona il WEB

Cosa serve

Ambiente completo, installa tutto

Esempio di web server locale

Esempio di HTML (lato browser)

<html><head>

<title>Titolo pagina</title></head>

<body>CIAO! Questo è un esempio dipagina in <b>HTML</b>

</body></html>

NOTA: il file deve avere estensione .html ed essere salvato nella cartella dove punta il web server.

Esempio di PHP (lato server)<html>

<head><title>Titolo pagina</title>

</head>

<body><?php echo "Hello World!<p>"; ?>

</body></html>

<?php

echo "Hello World" . "\n";

?>

NOTA: il file deve avere estensione .php e deve essere salvato nella cartella dove punta il web server.