Articoli recenti

Allocazione dinamica della memoria in C++. Esercitazione "Interi in ordine crescente"

Allocazione dinamica della memoria in C++. Esercitazione "Interi in ordine crescente"

Descrizione del problema Si supponga di avere un file di testo come quello mostrato in figura, in cui sono memorizzati un numero non noto a priori di numeri interi, uno per riga, che termina con un carattere di nuova riga. Si richiede di scrivere un programma in C++ che visualizzi a video in ordine crescente tutti gli interi memorizzati nel file. Soluzione proposta I numeri presenti nel fil[...]
Archivi indexed sequential in C++. Progetto 'Gestione concessionaria'.

Archivi indexed sequential in C++. Progetto 'Gestione concessionaria'.

Che cosa s'intende per organizzazione indexed sequential di un archivio viene già spiegato in un articolo che introduce i principali tipi di organizzazione degli archivi tradizionali, a cui si rimanda (link). In questo articolo, invece, si propone un'esercitazione di laboratorio di approfondimento sui files con C++, in cui viene sviluppato proprio l'esempio di archivio a singolo indice di chiave p[...]
Allocazione dinamica della memoria. Le istruzioni C++.

Allocazione dinamica della memoria. Le istruzioni C++.

Dopo l'articolo introduttivo sull'allocazione dinamica della memoria in C++ (a cui si rimanda link), vediamo la sintassi di alcune funzioni di libreria C++ che ci permettono di operare con essa. Sintassi C++ per l'allocazione e la deallocazione dinamica della memoria Per l'allocazione dinamica di una variabile il linguaggio C++ mette a disposizione due sintassi. La prima consiste nell'u[...]
Introduzione all'allocazione dinamica della memoria in C++

Introduzione all'allocazione dinamica della memoria in C++

Il segmento di memoria che il Sistema Operativo riserva nella RAM ad un processo (un programma in esecuzione), in generale è suddiviso in quattro distinte aree di memoria, così come mostrato nella figura seguente e che sono: l'area del programma, che contiene le istruzioni macchina del programma; l'area globale, che contiene le costanti e le variabili globali; lo stack, che contiene l[...]
File ad accesso diretto in C++. Progetto 'Gestione spese'.

File ad accesso diretto in C++. Progetto 'Gestione spese'.

Descrizione del progetto Si vuole realizzare un programma in C++ per la gestione delle spese domestiche. Esse devono essere memorizzate in un archivio specificando: la data, l’importo in euro e una descrizione. Il programma deve fornire le seguenti funzionalità: Aggiunta di una nuova spesa. Visualizzazione di tutte le spese dell’archivio in ordine crescente di data. Visualizzazione d[...]

Articoli più letti

  • Archivi Dagli archivi tradizionali ai database (4.321)
    In questo post non si ha la pretesa di parlare diffusamente di archivi tradizionali e di database, questo anche per ovvi motivi di spazio visto la vasta portata dell'argomento. Si vuole, invece, solo porre l'accento su alcune caratteristiche fondamentali che li differenziano, per poter evidenziare quali sono le implicazioni più importanti del loro utilizzo nei sistemi<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • matrice-07 Operare con le matrici in C++ (1.899)
    Il concetto di matrice è fondamentale per lo studio di sistemi di equazioni lineari ed è importante non solo nella matematica, ma in un ambito molto più vasto, in quanto essenziale in molte applicazioni della fisica e dell'ingegneria. In questo articolo opereremo con le matrici in C++, prima però sarà necessario introdurre alcune definizioni dell'algebra lineare, che è la branca della matematica che<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • rubrica Archivi sequenziali in C++. Esercizio “Rubrica telefonica”. (1.845)
    VERSIONE A Realizzare un programma in C++ che utilizza un file di testo per memorizzare una rubrica telefonica. Ogni riga del file deve contenere il cognome, il nome e il numero di telefono di un contatto, separati da uno spazio. (Nota: si adotterà l'ipotesi semplificativa che i cognomi, i nomi e i numeri di telefono, siano composti<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • due-righe-windows File di testo e file binari (1.272)
    I file possono essere classificati in due categorie fondamentali: i file di testo e i file binari. Questa classificazione si basa sul concetto di formato di un file, ossia sulla convenzione di codifica che viene utilizzata in fase di SCRITTURA del file, in base alla quale è possibile dare ai byte in esso memorizzati un significato corretto in fase di LETTURA, attraverso<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • flow-chart Problema ‘Stabilire se un numero è primo’ (1.244)
    Problema. Dato un numero intero n > 1, stabilire se è un numero primo. Soluzione proposta. La strategia risolutiva per questo problema può basarsi sulla definizione stessa di numero primo: «un numero primo è un numero naturale maggiore di 1 che sia divisibile solamente per 1 e per se stesso». In altri termini potremmo dire che:<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • piedi_blu I passi elementari di un algoritmo (1.146)
    Progettare un algoritmo non è affatto immediato e richiede esperienza e pratica. Di grande aiuto può essere lo studio di algoritmi già risolti, anche da altri, per problemi simili a quello che si sta affrontando (adozione del cosiddetto metodo delle best practices). Alcuni suggerimenti utili per semplificare questo compito sono forniti in un altro post (link: Progettazione di un<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • fstream File di testo in C++ con approccio OOP (1.122)
    Il modo più semplice per introdurre l'uso dei file di testo in C++ secondo il paradigma della programmazione ad oggetti (OOP), è far riferimento alle ben note operazioni di INPUT e di OUTPUT STANDARD realizzate in C++ tramite gli operatori di LETTURA (>>) e SCRITTURA (<<). Quando si esegue un input da tastiera, l'operatore di LETTURA (>>)<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • c-cpp File binari in C++ con approccio OOP (1.096)
    Che cosa sono i file binari l'abbiamo già visto in un altro articolo (link articolo), ora vediamo com'è possibile operare con essi in C++ secondo il paradigma della programmazione ad oggetti (OOP). Il modo più semplice per capire come si lavora con un file binario, può essere partire da ciò che accade con i file di testo e<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • stream-gerarchia Stream e file in C++. Approfondimento. (947)
    Uno stream è una sequenza di byte che all'interno di un programma può essere gestita utilizzando un oggetto di un'opportuna classe. Ossia all'interno di un programma è possibile interagire con uno stream attraverso l'oggetto ad esso associato e, pertanto, il programmatore può identificare uno stream con l'oggetto stesso. La figura seguente mostra la gerarchia delle classi C++ per gli stream. In<a href="http://www.labsquare.it/?page_id=2278">[...]</a>
  • bug Errori di programmazione e bug (842)
    Quando realizza un programma il programmatore informatico deve stare attento a non introdurre errori. Gli errori di programmazione possono essere distinti in due categorie fondamentali: quella degli errori che il compilatore è in grado di riconoscere ed evidenziare e quella degli errori che, al contrario, esso non riesce a rilevare. Alla prima categoria appartengono gli errori formali, che possono essere<a href="http://www.labsquare.it/?page_id=2278">[...]</a>

Categorie

Archivio

Mappa del sito