
















Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Una introduzione alla programmazione informatica, spiegando cosa è un programma e come programmare. Inoltre, viene presentato l'aspetto delle operazioni booleane, con l'esame dei simboli e delle istruzioni utilizzati in un diagramma di flusso. Il documento include anche una breve introduzione all'algoritmo metodico e alla classificazione dei problemi.
Tipologia: Sintesi del corso
1 / 24
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!

















Un programma è un insieme di istruzioni che indica a un calcolatore cosa deve fare. L’informatica è lo studio sistematico dei processi algoritmici che descrivono e trasformano l'informazione: la loro teoria, analisi, progettazione, efficienza, implementazione e applicazione. Nei computer moderni le informazioni sono Codificate come BIT [(0,1) SISTEMA BINARIO ], I bit sono semplicemente simboli il cui significato dipende dall’applicazione. L’informatica è dunque un insieme di conoscenze scientifiche e tecnologiche che permette di realizzare il metodo algoritmo o informatico. Inoltre, programmare vuol dire svolgere una serie di istruzioni o un programma che è in grado di dire al processore come operare sulla memoria e leggere le informazioni sui dispositivi di input e avere i risultati nei dispositivi di output. OPERAZIONI BOOLEANE Il bit 0 rappresenti il valore falso , mentre il bit 1 rappresenti il valore vero. In pratica manipolare 0 e 1 significa manipolare vero/falso. Le operazioni booleane sono le operazioni che trattano i bit cioè la manipolazione di vero/ falso. Le operazioni sono: And = in Java l’operatore logico AND è rappresentato da &&. L’operatore viene chiamato operatore di congiunzione. L’operatore combina due espressioni booleane in una nuova espressione
booleana, il cui valore di ritorno è true se è solo se il valore di ritorno di entrambe le espressioni congiunti è true. Or = l’operatore di disgiunzione inclusivo. In java viene rappresentato come ||. Il valore di ritorno è false se è solo se il valore di ritorno di entrambe le espressioni è false. Xor = l’operatore di disgiunzione esclusivo. In java si indica con ^. L’operatore combina due espressioni booleane in una nuova espressione, il cui valore di ritorno è true se è solo se il valore delle due espressioni disgiunte sono diversi. Not = l’operatore di Negazione e in java viene rappresentato !. il valore di ritorno è true se è solo se il valore dell’espressione negata è false.
Il diagramma di flusso è un metodo di modellazione che permette di rappresentare graficamente, le operazioni di un algoritmo tramite uno schema visivo. Il diagramma si può anche chiamare flow chart. I principali simboli sono ordine delle istruzioni da eseguire = condizione test Le varie istruzioni che devono essere realizzate vengono scritte dentro al rettangolo quando poi bisogna verificare una condizione si inserisce il simbolo del rombo, scrivendo entro la condizione posta. Esempio quando bisogna passare dall’algoritmo al flow chart bisogna essere formali ai vari simboli che assegniamo nel diagramma di flusso, corrispondono a specifiche istruzioni reali nello specifico il linguaggio di programmazione scelto. istruzioni Istruzioni 2 Istruzioni 1 fallimento Istruzioni 3 ok vera
Esso consiste nel formulare algoritmi nel trasformare questi algoritmi in sequenze di istruzioni (programma) per le macchine e di verificarne la correttezza e l’efficacia di tali programmi analizzandoli ed eseguendoli.
Le torri Hanoi mostrano che anche se un problema è risolvibile con un algoritmo non è assicurato che lo si possa fare in tempi brevi. Il tempo di esecuzione del programma è esponenziale nella dimensione n dell’input. Il tempo di esecuzione è espresso in: nanosecondi(ns), microsecondi (ys), millisecondi(ms), minuti(m). Questo è un andamento esponenziale. Es: Andamento polinomiale La funzione quadratica cresce molto più lentamente nell’andamento polinomiale che in quello esponenziale: I problemi quindi si classificano in: Trattabili : risolvibili in tempo polinomiale. Intrattabili : risolvibili in tempo esponenziale.
Componenti di un pc Un calcolatore è un dispositivo in grado di effettuare operazioni matematiche e di prende decisioni in modo molto veloce. Essa diversi componenti Hardware = sono gli elementi fisici di Un calcolatore, e si include l'unità di elaborazione centrale, essa include la memoria principale e ausiliaria, l'hardware include anche la macchina calcolatrice. Tutti i computer di oggi hanno dei dispositivi Input = (come, ad esempio, tastiera e mouse) sono dispositivi che permettono l'inserimento dei dati all'interno del calcolatore. Output = consentono di comunicare dei dati verso l'esterno del calcolatore. Ad esempio monitor stampante. Inoltre un insieme di istruzioni e detto programma Software = istruzioni raccolte in programma. L’insieme dei programmi e dei dati che in generale costituiscono il motore del PC. Il software di base è costituito da programmi, in questo insieme rientrano i sistemi operativi e i tools ed anche gli ambienti di sviluppo. Esiste anche il software applicativo in questo insieme rientrano tutti i programmi utilizzati dall’utente come Word, Excell, PPT….
Il sistema operativo= il sistema operativo è il primo programma che parte quando accendiamo un pc; i sistemi più noti sono: windows, macos, ios, android, lunix ecc… La storia dei calcolatori Il primissimo calcolatore della storia è l’abaco. Nel XVII il matematico pascal inventò la prima calcolatrice. Nel 1800 il matematica Babbage elaborò due macchine calcolatrici: Macchina differenziale= può eseguire calcoli più complicati come il quadrato Macchina analitica = prima calcolatrice programmabile. essa è costituita da unità centrale per il calcolatore ed ha una memoria principale per conservare i dati
La sigla ASCII sta per (American Standard Code for Information Interchange) ed indica un codice introdotto nel 1968 che permette la codifica dei caratteri a 7 bit usando 127 cifre. È stata fatta anche un'estensione a 8 bit. Il codice permette la rappresentazione numerica dei carattere alfanumerici, della punteggiatura e simboli. Un testo salvato in ASCII è letto facilmente da qualsiasi sistema operativo e programma infatti il suo uso è al livello mondiale e ogni computer è in grado di riconoscerlo.
Decodifica del sistema binario Per eseguire della decodifica in binario, basta moltiplicare il valore di ogni cifra associato alla sua posizione e poi sommiamo i risultati. La notazione che si usa nel sistema binario è il complemento a 2. Bit e Byte I dati le informazioni non calcolatore sono codificati in forma binaria, cioè sequenze di bit. Un bit può assumere solo due valori 0 e 1. Il byte è uguale a 8 bit e cioè di conservare 8 cifre binarie. Il numero di Byte è detto istruzioni. La memoria principale è quella ausiliario sono misurate in B. La locazione di memoria e la sequenza di Byte adiacenti associata al dato in cui L'indirizzo è indirizzo del primo byte di sequenza. Il Calcolatore utilizza il sistema di numerazione binaria. Come quella decimale la posizione di una cifra indica il valore relativo il sistema binario utilizza le funzioni crescenti di due. Linguaggio di programmazione La programmazione è un algoritmo scritto in un linguaggio di programmazione. Nel linguaggio di programmazione bisogna seguire una sintassi cioè l’insieme delle regole su come il linguaggio deve essere scritto.
Il programma opera su dati input(variabili), e output che esso è il risultato prodotto una volta che il calcolatore a terminato le esecuzioni delle istruzioni del programma. Il programma quindi una volta operato in dati input(int) e dati di supporto (s). Nei nostri computer il programma centrale è il sistema operativo senza di questo il compilatore non funziona. Nei nostri pc abbiamo anche il programma di scrittura. Esistono diversi tipi di linguaggi di programmazione: Linguaggio a macchina= eseguito dal calcolatore ed esso è scritto in binario. Linguaggio assembler= rende il linguaggio a macchina comprensibile all’umano. Linguaggio alto livello= java, c, c++, pascal, ada, phyton. Compilatore vs Interprete Il compilatore ma dice che può essere interpretato da una macchina. il risultato è il programma con cui facciamo doppio click. esso traduce il programma in un linguaggio ad alto livello in programma in linguaggio a macchina. il programma compilato è eseguito da ogni sistema operativo. l'interprete un programma che viene interpretato riga per riga. in sintesi l'interprete traduce ed esegue un dopo l'altra le istruzioni dei programmi sorgenti.
I programmi si basano su Dati = i dati rappresentano i valori che poi possiamo dare all’interno del nostro programma. I valori che noi diamo sono associati al tipo di Dato. Le espressioni sono degli operatori che applicati ad altri operatori producono operatori. Le espressioni contengono le variabili. ISTRUZIONI ESSE SI BASANO SU: istruzioni base : in esse troviamo, l’input, l’assegnamento dichiarazione delle variabili e l’output. Un codice che dice al calcolatore di eseguire un compito. Istruzione di controllo = è un gruppo di istruzioni con un punto di ingresso e uno d’uscita. Esse servono a specificare come si deve comportare un programma, cioè permettono il controllo e l’esecuzione dell’algoritmo. In esse notiaamo la selezione e l’interazione Sotto-programma
Ogni linguaggio di programmazione definisce i propri valori base. I valori consistono in: valori numerici= 1,2,3,4….. caratteri= à, l’accento, la virgola, l’apostrofo stringhe= sequenza di caratteri con un ordine stabilito. Ogni valore viene indentificato da un letterale ossia una sequenza di simboli e caratteri. TIPI DI DATO Ad ogni valore viene associato un tipo di dato o semplicemente tipo. Un tipo rappresenta quindi un insieme di valori ed è caratterizzato da un insieme operatore che possono essere fatte. Ogni linguaggio di programmazione è caratterizzato da un insieme di tipo differenti e un modo diverso di gestirli quindi ad ogni tipo viene associato. Un insieme di valori Un insieme di operatori Modi per rappresentare l’informazione in memoria: Le operazioni che io faccio sono operazioni che avvengono in memoria su quella rappresentazione.
Ogni ni rappresenta un valore tra 0 e b-1 in modo tale che valga l’uguaglianza. Gli interi negativi Per rappresentare gli interi negativi abbiamo bisognoo di una notazione che ci consenta: mantenere i vantaggi della notazione posizionale. utilizzare le operazioni aritmetiche standard. Per favore questo viene utilizzato il complemento a due. Complemento a due Dato un numero binario bkbk-1…. B1 b0, il complemento a 2 si ottiene: trasformando tutti gli 1 in 0 e tutti 0 in 1. Sommando 1 al risultato che si ottiene. Es 1 0 0 11 000 0 11 0 0 11 1
Osservazioni Tutti i negativi con 1 mentre quelli positivi iniziano con bit 0. Con k bit possiamo rappresentare i numeri da -2k-1 a 2k-1- Manteniamo la somma algebrica L’overflow è un elaborazione eccedente i limiti di memoria. Passaggio di base Per eseguire un passaggio di base basta eseguire la divisione tra interi. Essa consiste in: La divisione tra due interi a e b consiste nel trovare una coppia di numeri q(quoziente) ed r(Resto) tale che a=b*q+r Per ottenere la rappresentazione del numero n in base b, consideriamo la sequenza di coppie di valori (qi ; ri ) ottenuti attraverso successive divisioni(tra interi) di b. Ossia: N = b _ q0 + r Qi = b _ qi+1 + ri+ Possiamo notare che ad un certo punto, per qualche indice j , qj diventerà 0! E tutti i valori successivi saranno 0. La rappresentazione di n in base b (con k cifre) si ottiene considerando la Sequenza: Rk rk1 : : : ri r Se k non è dato ci fermiamo quando qi è 0! I numeri e la virgola