Informazioni sul documento
- Università
- Università degli Studi di Bari Aldo Moro
- Corso di laurea
- Informatica
- Materia
- Programmazione
- Classificazione
- Altro materiale
- Formato originale
- Testo
- Testo ricercabile
Altro di Programmazione per il corso di Informatica presso Università degli Studi di Bari Aldo Moro. Materiale proveniente dall’archivio storico Studwiz e classificato per la consultazione online.
Altro di Programmazione per il corso di Informatica presso Università degli Studi di Bari Aldo Moro. Materiale proveniente dall’archivio storico Studwiz e classificato per la consultazione online.
Qualità dell’importazione: il testo è stato estratto direttamente dal documento originale.
Passaggi rappresentativi riconosciuti nelle diverse parti del materiale. Il testo completo resta presente nella pagina per la ricerca, mentre l’anteprima compatta rende più semplice la lettura.
Esercizio “elimina duplicati array” Funzione che elimina duplicati da un array ordinato: int eliminaDuplicati (int a[], int n) /* Vettore ordinato */ { int i; int k = 1; for (i = 1; i < n; i++) /* per tutti gli elementi a partire dal secondo */ { if (a[i] != a[i-1]) /* se nuovo elemento (non copia del precedente) */ { a[k] = a[i]; k++; } } return k; } La stessa funziona, per un array non ordinato: typedef enum {FALSO, VERO} boolean; int eliminaDuplicati (int a[], int n) /* Vettore NON ordinato */ { int i, j; boolean duplicato; int k = 1; for (i = 1; i < n; i++) /* per tutti gli elementi a partire dal secondo */ { duplicato= FALSE; for (j=o; j<i; j++) { if (a[i] == a[j]) duplicato = TRUE; } /* se il nuovo elemento non era già presente nell'array destinazione, */ /* lo aggiunge */ if (!duplicato) { a[k] = a[i]; k++; } } return k; } Il programma principale: #include <stdio.h> void main() { int b[] = { 1, 3, 3, 3, 5, 7, 7, 9, 9}; /* inizializzazione statica */ int dimb = 9; int i, nuova_dimb; /* stampa vettore inserito */ for (i = 0; i < dimb; i++) printf("%d ", b[i]); printf("\n"); nuova_dimb = eliminaDuplicati(b, dimb); /* stampa vettore dopo la chiamata */ for (i = 0; i < nuova_dimb; i++) printf("%d ", b[i]); printf("\n"); }
Prima pagina del documento.