• 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 – 13/01/2006 - C++

1. Sia dato un file non vuoto elenco.txt che contiene in ciascuna riga il nome di una persona (stringa di lunghezza massima 16 caratteri), un valore V1 e un valore V2 (entrambi interi). Si scriva una funzione medie() che calcola la media aritmetica M1 dei valori V1 e la media aritmetica M2 dei valori V2 del file. La funzione, costruisce poi un nuovo file elenco2.txt composto dai soli nomi del file elenco.txt che sono in corrispondenza a un valore V1 minore di M1 e a un valore di V2 maggiore di M2.

2. Sia data una lista semplice a valori interi l composta da almeno 2 elementi. Si scriva una funzione scambia(l) che modifica la lista l scambiando l’ultimo elemento con il penultimo.

3. Scrivere una funzione booleana verifica(A1, A2) che riceve in ingresso due array A1 e A2 entrambi di lunghezza N=30 e a valori interi e restituisce il valore true se il valore massimo contenuto in A1 è minore del valore minimo contenuto in A2, false altrimenti.

4. Dati i numeri decimali A=-199, B=64 e C=-70, 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-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

Es. 1

#include <fstream.h>

void medie() { fstream f, g;

f.open (“elenco.txt”, ios::in);

char s1[17];

int v1, v2, m1, m2;

int somma1=0;

int somma2=0;

int cont=0;

while(f>>s1>>v1>>v2) {

somma1+=v1;

somma2+=v2;

cont++;

}

m1=somma1/cont;

m2=somma2/cont;

f.close();

f.open (“elenco.txt”, ios::in);

g.open (“elenco-2.txt”, ios::out);

while(f>>s1>>v1>>v2) {

if(v1<m1 && v2>m2) g>>s1>>”\n”;

} f.close();

g.close();

}

Es. 2

struct elem { int info;

elem *next};

void scambia(elem *& l) {

elem * aux1, aux2, aux3;

aux1=l;

aux2=l->next;

if(aux2->next==0) {

aux2->next=aux1;

aux1->next=0;

l=aux2;

return;

}

aux3=aux2->next;

while(aux3->next!=0) {

aux1=aux1->next;

aux2=aux2->next;

aux3=aux3->next;

}

aux1->next=aux3;

aux3->next=aux2;

aux2->next=0;

}

(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

Es. 3

const int N=30;

boolean verifica(int A1[N], A2[N]) {

M1=A1[0];

m2=A2[0];

for(int i=1; i<N; i++) {

if(M1<A1[i]) M1=A1[i];

if(m2>A2[i]) m2=A2[i];

}

if(M1>=m2) return false;

return true;

}

--- //versione compatta const int N=30;

boolean verifica(int A1[N], A2[N]) {

for (int i=0; i<N; i++)

for (int j=0; j<N; j++)

if(A1[i]>=A2[j]) return false;

return true;

}

Riferimenti

Documenti correlati

PROSPETTO VERIFICA RISPETTO DEI VINCOLI DI FINANZA PUBBLICA (da allegare al bilancio di previsione e alle variazioni di bilancio ) Allegato &#34;C&#34; proposta variazione

PROSPETTO VERIFICA RISPETTO DEI VINCOLI DI FINANZA PUBBLICA (da allegare al bilancio di previsione e alle variazioni di bilancio ) - PROSPETTO PROVVISORIO IN ATTESA

“Pareggio bilancio e Patto stabilità” e all'interno dell'applicativo del pareggio al modello VARPATTI. Nelle more della formalizzazione dei patti regionali e nazionali, non

Questi comandi possono essere concatenati in sequenze in modo da permettere al robot di compiere vari percorsi; per esempio la sequenza di comandi descritta dalla

In ciascuna definizione si usa il fatto che ad ogni elemento della matrice si pu` o associare un determinante 2 × 2, quello della matrice ottenuta cancellando la riga e la

Spazio Vettoriale 3-dimensionale Euclideo Diciamo spazio vettoriale 3-dimensionale euclideo, ed indichiamo con Eo3 , spazio vettoriale 3-dimensionale Go3 dei vettori applicati in

Geometricamente: f e’ iniettiva, suriettiva, biiettiva se e solo se ogni retta parallela all’asse x che interseca B interseca il grafico di f in al piu’ un punto, in almeno un punto,

2018/2019, parte di Algebra Scuola di Scienze - Corso di laurea: Informatica.. Svolgimento degli Esercizi per