• Non ci sono risultati.

CORSO di LAUREA in INGEGNERIA delle TELECOMUNICAZIONI

N/A
N/A
Protected

Academic year: 2021

Condividi "CORSO di LAUREA in INGEGNERIA delle TELECOMUNICAZIONI"

Copied!
1
0
0

Testo completo

(1)

U N I V E R S I T À D E G L I S T U D I D I P I S A F A C O L T À D I I N G E G N E R I A

CORSO di LAUREA in INGEGNERIA delle TELECOMUNICAZIONI

ESAME DI FONDAMENTI DI INFORMATICA - SIMONCINI – 16/09/2005 - C++

1. Sia dato il file città.dat che contiene in ciascuna riga un nome di una città (stringa di al più 24 caratteri) e il relativo numero di abitanti. Si scriva una funzione estrai() che calcola la media aritmetica M_A degli abitanti delle città contenute nel file e crea un nuovo file città_piccole.dat che contiene le sole città presenti in città.dat il cui numero di abitanti è minore di M_A.

2. Sia data una lista semplice l a valori interi non vuota. Si scriva una funzione modifica_lista(l) che riceve in ingresso la lista l e la rende circolare se il campo informativo della testa è uguale al campo informativo dell’ultimo elemento. Altrimenti, l’intera lista viene deallocata

3. Dati due array A1 e A2 a valori interi di dimensione N1 e N2 rispettivamente, si scriva una funzione booleana confronta(A1, A2) che riceve in ingresso gli array A1 e A2 e restituisce true se tutti gli elementi di A1 sono più piccoli di quelli di A2, false altrimenti.

4. Dati i numeri decimali A=-99, B=127 e C=-128, si determini il minimo numero di bit necessari per rappresentare contemporaneamente i suddetti numeri in complemento a 2 e se ne dia la rappresentazione. Utilizzando poi lo stesso numero di bit, si esegua l'operazione D=B-C e si discuta se il risultato ottenuto è o no significativo.

Punteggio:

Es.1 Es.2 Es.3 Es.4

10 10 10 3

Risultati e Soluzione del compito:http://www.iei.pi.cnr.it/~glami/elenco-compiti.htm

(2)

U N I V E R S I T À D E G L I S T U D I D I P I S A F A C O L T À D I I N G E G N E R I A

CORSO di LAUREA in INGEGNERIA ELETTRONICA

1.

#include <fstream.h>

const int N=25 ;

void estrai ()

{ int n, m;

int cont=0;

int totale =0 ; char C[N];

fstream f, g ;

f.open(‘citta.dat’, ios::in);

while(f>>C>>n)

{ totale+=n;

cont++;

}

if(cont==0) return;

m=totale/cont;

f.close() ;

f.open(‘citta.dat’, ios::in);

g.open(‘città_piccole.dat’, ios ::out) ; while(f>>C>>n)

if(n>=m);

else g<<C<<n<<”\n”;

f.close();

g.close();

}

2.

void modifica_lista (elem *&l) {

elem *aux, aux1;

aux=l ; aux1=aux ;

while(aux1->next !=0) aux1=aux1->next;

if(aux->info == aux1->info) aux1->next = l ; else { while(aux !=0)

{

aux1=aux->next;

delete aux ; aux=aux1 ; }

}

(3)

U N I V E R S I T À D E G L I S T U D I D I P I S A F A C O L T À D I I N G E G N E R I A

CORSO di LAUREA in INGEGNERIA ELETTRONICA

3.

const int N1=10 ; const int N2=13 ;

boolean confronta(int A1[N1], int A2[N2]) { int max;

max=A1[0] ;

for(int i=1 ; i<N1 ; i++) { if(A1[i]>max)

max=A1[i];

}

for(i=0; i<N2; i++)

if(A2[i]<=max) return false;

return true;

}

Riferimenti

Documenti correlati

Un parcheggio per automobili è rappresentabile mediante un array P a valori binari dove ciascun elemento dell’array rappresenta un posto auto nel parcheggio e

Si scriva una funzione booleana scegli_sala(int n, int p) che cerca nel file la sala che contenga almeno n persone e il cui costo di affitto sia minimo (comunque inferiore a

La gestione della fila al banco del check-in di un aeroporto è organizzato mediante il seguente criterio: i passeggeri vengono accettati secondo un ordine cronologico,

Scrivere una funzione cerca_estremi() che legge il file e stampa sul monitor il numero più grande e quello più piccolo contenuti in esso.. Si scriva una funzione rendi_pari(l)

Si scriva una funzione raggruppa() che costruisce un nuovo file F3.dat che contiene tutti i valori pari contenuti in F1.dat e F2.dat e, a seguire, tutti i

Dati due array B1 e B2 di dimensione N a valori booleani, si scriva una funzione booleana unione(B1, B2) che riceve in ingresso i due array e costruisce un nuovo array B3

Scrivere una funzione int missing() che confronta i due file e restituisce il numero di caratteri omessi in T2.txt.. Sia data una lista l semplice a valori interi composta

Sia dato un file non vuoto azienda.dat contenente su ciascuna riga le seguenti informazioni: la ragione sociale di una azienda (stringa di al più 28 caratteri), il