Cifrario di Cesare da file

Cifrario di Cesare da file

In questa lezione implementeremo il cifrario di Cesare da file. Nella scorsa lezione abbiamo implementato semplicemente l’algoritmo per il cifrario di Cesare inserendo un testo da tastiera lungo massimo 100 caratteri, potete consultare la lezione al link: cifrario di Cesare. Oggi ci occuperemo invece di scrivere un programma che simuli il cifrario di Cesare sia […]

Cifrario di Cesare in C

Cifrario di Cesare in C

In questa lezione implementeremo un algoritmo per il cifrario di Cesare in C. Il cifrario di Giulio Cesare è un facile esempio di crittografia a sostituzione, cioè dove ciascun elemento del testo è trasformato in un altro elemento. All’epoca di Giulio Cesare era un algoritmo efficace e veniva usato per inviare le sue corrispondenze. Quindi […]

gestione della coda in C

Gestione di una coda in C

In questa lezione studieremo la gestione di una coda in C. Una coda (o queue) è una struttura dati astratta che, al contrario della pila, utilizza una politica di tipo FIFO. Ovvero il primo elemento ad entrare è anche il primo ad uscire. Nella coda quindi l’inserimento avviene ad una estremità (coda), mentre la cancellazione […]

Gestione di una pila mediante un array

Gestione di una pila mediante un array

In questo articolo implementeremo la gestione di una pila mediante un array in C. Nella lezione precedente abbiamo già visto un metodo per la gestione di una pila in C, utilizzando le variabili globali Pila[MAX] e testa di tipo intero. Nell’esempio queste variabili rappresentano l’array e l’indice testa che va da 0 a MAX. Dunque […]

Pila in C

Pila in C

In questa lezione svilupperemo un semplice esercizio sull’uso della pila in C. Creiamo dunque un programma per la gestione di una pila che permette di inserire dei valori, eliminarli, stamparli e cancellarli tutti in una volta. Serviranno dunque le funzioni: Push per l’inseriemento dei dati; Pop per l’estrazione dei dati; Clear per cancellare tutti i […]

stack

Stack

In questa lezione studieremo lo stack (o pila), cioè un elenco di dati avente la caratteristica di permettere l’inserimento di nuovi elementi e l’estrazione degli elementi introdotti ma solo da un’unica estremità. Un elemento nella pila è inserito con una funzione detta Push, mentre un elemento si estrae con la funzione Pop. La regola è […]

ftell

ftell

In questa lezione parleremo di ftell in C, cioè della funzione che consente di restituire la posizione corrente del file pointer rispetto all’inizio del file. La posizione corrente è espressa come numero di byte. La sintassi della funzione ftell in C è la seguente: long ftell(FILE *fp) La funzione ftell in C restituisce dunque un […]

fseek in C

fseek in C

In questa lezione parleremo di fseek in C, cioè della funzione che consente di muovere il puntatore di lettura e/o scrittura in una posizione qualunque all’interno del file, dopo la sua apertura con fopen. Finora l’accesso al file è stato di tipo sequenziale, ovvero per aggiungere o leggere un elemento ci siamo posizionati esattemante sotto […]

rewind in C

rewind in C

In questa lezione parleremo di rewind in C, cioè della funzione che permette di riposizionarsi nuovamente all’inizio di un file. La sintassi della funzione rewind in C è dunque questa: void rewind(FILE *fp); Dove FILE *fp è il puntatore a FILE ottenuto dalla precedente chiamata fopen. Esempio d’uso di rewind in C Leggiamo un file […]

Esercizi sui file in C

Esercizi sui file in C

Proponiamo ancora degli esercizi sui file in C ed in particolare sulle funzioni fopen, fwrite, fread e fclose. Propongo questo esempio a scopo di introdurre, prossiamente, altre funzioni che ci permetteranno di posizionarci in una posizione qualunque del file e che quindi garantiscono un accesso diretto e non più sequenziale. Esercizi sui file in C […]