• 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!
3
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

Risultati e Soluzione del compito: http://www.isti.cnr.it/~glami/

ESAME DI FONDAMENTI DI INFORMATICA 13/01/2010

1. Dati due file dati1.dat e dati2.dat contenenti entrambi un insieme di valori interi. Si scirva una funzione booleana verifica() che, leggendo i due file, restituisce true se tutti i valori contenuti in dati1.dat sono minori di ciascun valore del file dati2.dat, false altrimenti.

2. Scrivere una funzione elimina(l, n) che riceve in ingresso una lista semplice l a valori interi e un valore intero n>0. La funzione, se l è composta da almeno n elementi, elimina l’n-esimo elemento di l, altrimenti lascia la lista l invariata.

3. Si scriva una funzione int conta_uguali(s1, s2) che riceve in ingresso due stringhe di lunghezza qualsiasi s1 e s2. La funzione restituisce il numero di caratteri di s1 che compaiono anche in s2.

4. Dati i numeri decimali A=130, B=129 e C=-248, 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=A+B e si discuta se il risultato ottenuto è o no significativo.

Punteggio:

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

10 10 10 3

(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>

boolean verifica() { int x1, x2;

int max1, min2;

fstream f, g;

//calcolo il Massimo valore contenuto in dati1.dat f.open(dati1.dat, ios::in);

if(f>>max1);

else { cout<<”file dati1.dat vuoto”; return false;}

while(f>>x1)

if(x1>max1) { max1=x1;}

f.close();

//calcolo il minimo valore contenuto in dati2.dat g.open(dati2.dat, ios::in);

if(g>>min2);

else { cout<<”file dati2.dat vuoto”; return false;}

while(g>>x2)

if(x2<min2) {min2=x2; } g.close();

if(max1<min2) return true;

return false;

}

2.

void inserisci (elem *& l, int n) { elem * aux;

if (l==0) return;

if (n==1) { //eliminazione della testa aux=l;

l=l->next;

delete aux;

return; }

int cont=0;

for(aux=l; aux!=0; aux=aux->next) cont++;

if(cont<n) return;

aux=l;

elem *aux1=l->next;

for(int i=1; i<n-1; i++) { aux=aux1;

aux1=aux1->next; }

aux->next=aux1->next;

delete 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.

int conta_uguali( char s1[], char s2[]) {

int cont=0;

for(int i=0; s1[i]!=’\0’; i++)

for(int j=0; s2[j]!=’\0’; j++)

{ if(s1[i] == s2[j]) { cont++:

break;}

} return cont;

}

Riferimenti

Documenti correlati

Si scriva una funzione crea_file() che legge l’ultimo valore del file numeri.dat e costruisce un nuovo file solo_maggiori.dat contenente i soli elementi di numeri.dat maggiori

Si scriva una funzione booleana incluso() che restituisce true se tutti gli elementi di F1.dat sono contenuti in F2.dat, false altrimenti.. Sia data una lista semplice circolare

Un file chiamato dati.txt contiene per ciascuna riga una stringa di lunghezza massima 24 caratteri che rappresenta il nome di uno studente e un valore intero che

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