Start To Code! - Primi passi nella programmazione

  1. #1
    Utente Esperto L'avatar di d23
    Data Registrazione
    Dec 2013
    Messaggi
    337
    Salve ragazzi, sono d23, il vostro insegnante di programmazione. Se siete arrivati fin qui significa che volete imparare a programmare! E si lo so è un lavoro affascinante quello del programmatore, ma anche molto difficile e non potete immaginare che pazienza ci voglia! Ma iniziamo a parlare delle basi.


    1) Parliamo di algoritmo


    Ora lo so che vorreste già immergervi nel codice di un qualsiasi linguaggio e iniziare a scrivere, ma scrivere cosa? Con che ordine?


    Vi faccio un esempio:


    Ho fame, voglio cucinare un bel piatto di spaghetti:
    - prendo la pentola e la riempio d'acqua;
    - poso la pentola sul fornello;
    - accendo il fornello;
    - appena la temperatura dell'acqua arriva a 100 gradi butto la pasta;
    - passato il tempo di cottura spengo il fornello e scolo la pasta;


    Questo ragazzi miei è un algoritmo, cioè una sequenza di passi finiti che servono per risolvere un determinato problema. Un algoritmo deve essere anche generale, cioè risolvere tutti i casi di quel determinato problema, come il nostro può cuocere tutti i tipi di pasta xD.


    Tu: Ok allora adesso sono pronto per il linguaggio di programmazione!!!
    Io: NO


    2) Il FlowChart


    Parola oscura, in realtà il FlowChart è un semplice sistema elementare per scrivere un algoritmo su carta. Serve per entrare nella logica della programmazione. E' costituito da:


    - ellisse: Dentro a questo ci scriverete "Inizio" o "Fine" e saranno il primo e l'ultimo disegnino che metterete nel vostro algoritmo.
    - parallelogramma: Dentro qua metterete "Scrivi("frase da scrivere")" o "Leggi(lafrasechehascritto)", dove "frase da scrivere" sarà un output cioè sarà ciò che il programma farà vedere all'utente mentre "lafrasechehascritto" è un input memorizzato in una casellina di memoria che abbiamo chiamato appunto così lafrasechehascritto e noi programmatori la chiamiamo variabile. "Leggi" quindi non fa altro che far apparire quel cursore lampeggiante che indica SCRIVIMI QUALCOSA SUSU!
    - rettangolo: qui si elaboreranno i dati, esempio abbiamo chiesto 2 numeri che abbiamo memorizzato in NUM1 e NUM2 e vogliamo sommarli, quindi creeremo un'altra variabile che chiamiamo SOMMA assegnandogli la somma dei due numeri in questo modo "SOMMA <- NUM1 + NUM2"
    - rombo: qui si genera una condizione, cioè??? Mi spiego con un esempio, abbiamo chiesto 2 numeri memorizzati in NUM1 e NUM2 come prima, ma vogliamo vedere quale dei 2 è più grande, quindi qui scriviamo una condizione e partiranno 2 frecce una a sinistra (vera) e una a destra (falsa), la nostra condizione è NUM1 > NUM2 quindi se NUM1 è più grande di NUM2 andiamo a sinistra, altrimenti andiamo nel blocco a destra, e dopodichè con un parallelogramma scriviamo il numero più grande (se è andato a sinistra è NUM1, altrimenti se è andato a destra è NUM2)


    Ma questa è la base per programmare, e non starò qui a spiegarvi le condizioni e come si fanno sul FlowChart, le rimando alla pseudocodifica che è il nostro prossimo punto!


    Intanto per esercitarti puoi creare l'algoritmo che chiede 2 numeri all'utente li memorizza in 2 variabili chiamate che chiami come vuoi tu, mi dica quale dei 2 numeri è più grande e ne fa l'addizione. Un esercizietto EASY proprio per capire.


    3) Pseudocodifica


    Fa sentire potenti a pronunciarla, la pseudocodifica non è altro che il primo approccio alle regole di semantica e sintassi che hanno tutti i linguaggi di programmazione. Esistono molte varianti della pseudocodifica (anche perchè ogni pseudocodifica è nella lingua di chi la impara), io ve ne insegno una che vi aiuterà molto con la maggior parte dei linguaggi esistenti.


    1 - Analizziamo il problema
    Dati input: -> Le variabili di input, cioè quelle che dovrà darci l'utente.
    Dati output: -> Le variabili di output, cioè quelle che conterranno il risultato finale, la soluzione al problema.
    Dati lavoro: -> Opzionale, se ci sono altre variabili che utilizziamo per arrivare alla soluzione finale.


    I commenti:
    I commenti non sono altro che appunti che scriviamo nel nostro progetto per ricordarci cosa faccia quella cosa o altro.


    Codice PHP:
    // commento su linea
    /*commento
    su
    più
    linee*/ 

    2 - INIZIO e dichiarazione delle variabili


    Codice PHP:
    INIZIO
           int a
    // dichiaro la variabile [i]a[/i] di tipo [i]int[/i]
    FINE 

    INIZIO, FINE li abbiamo già visti nel FlowChart. Analizziamo int a;
    int è un tipo, cioè indica cosa sarà contenuto nella variabile (oltre alla memoria ram da allocare ma questo ora non ci interessa)


    Tipi di variabile:


    int - numero intero, positivo o negativo
    float - numero reale, positivo o negativo
    short - numero intero, positivo o negativo*
    long - numero intero, positivo o negativo*
    double - numero reale, positivo o negativo*
    unsigned int/float/short/long/double - solo valori positivi
    *la differenza sta nel range di valori che possiamo memorizzare e nello spazio occupato in memoria, ma a questo punto della guida non ci interessa.


    char - carattere alfanumerico, per indicare un carattere lo si scrive tra ' (apice) ES: 'a'
    string - stringa alfanumerica, per indicare una stringa lo si scrive tra "(doppi apici) ES: "ciao"


    Esistono molti altri tipi di variabili, ma per il momento utilizzeremo int/float/char e string. Gli altri li vedrete più avanti durante i vostri studi dei linguaggi di programmazione.


    Istruzione di selezione


    Codice PHP:
    SE (condizione)
            
    //si rientra perchè l'indentatura aiuta a leggere il codice regaz, non dimenticatelo ;)ALTRIMENTI
    /*comunque indentando si indica che queste istruzioni vanno fatto
    solo se la condizione è vera, l'altrimenti non ci va per forza, ma
    solo se c'è bisogno di eseguire altre istruzione se la condizione
    è falsa, una volta finito il SE (opzionale ALTRIMENTI) il programma
    va avanti con le istruzioni dopo.*/ 

    Istruzioni di iterazione


    Altrimenti chiamate cicli, servono per ripetere un blocco di istruzioni più volte, a seconda se la condizione sia vera o falsa. Di solito nei linguaggi di programmazione il ciclo continua a ripetere le istruzioni finché la condizione è vera, è il caso del C, C++, C#, Visual Basic


    Esistono 3 tipi di cicli, all'apparenza vi sembreranno identici ma in realtà quando programmerete sentirete la necessità di usarne uno al posto di un'altro perché vi risulta più semplice da applicare.


    Mentre
    Codice PHP:
    Mentre (condizione)
            
    //istruzioni
    //se la condizione nel mentre non è vera le istruzioni contenute nel ciclo non verranno mai eseguite. [b]Nemmeno 1 volta![/b]. 

    Fai, Mentre


    Codice PHP:
    Fai
            
    //istruzioni
    Mentre (condizione)
    //se la condizione nel mentre non è vera le istruzioni contenute nel ciclo [b]vengono eseguite solo 1 volta[/b]. 

    Per


    Codice PHP:
    Per (int cont 0condizionecont++)
            
    // istruzioni
    /* Qua si inizializza un contatore e gli si assegna un valore, nell'esempio 0.
    Finchè la condizione è vera questo contatore continuerà ad aumentare, nel nostro caso di 1 (cont++ è uguale a dire a cont = cont +1).
    Di solito il Per si usa quando [b]si sa già in partenza quante volte si vuole far ripetere l'istruzione[/b].*/ 

    Esercizio: crea un programma che faccia la moltiplicazione tra 2 numeri interi positivi con il metodo della somma ripetuta. In poche parole se devi fare 3x5 il programma deve fare 3+3+3+3+3.


    Soluzione:



    4) Scegliete il linguaggio


    Bene ragazzi, esercitatevi molto per capire la logica degli algoritmi mi raccomando. Dopodiché se vorrete imparare un vero e proprio linguaggio e conoscere gli strumenti di cui avete bisogno tra poco stilerò un paio di guide di programmazione.


    Grazie per aver letto e Start To Code!


    --- La guida verrà aggiornata se alcuni concetti vi risulteranno poco chiari.


    Ultima modifica di d23; 07-12-2013 alle 19:28

Termini piu ricercati:

Nessuno è atterrato su questa pagina da un motore di ricerca. Almeno, non per ora...