• 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://www1.isti.cnr.it/~glami/elenco-compiti.htm

ESAME DI FONDAMENTI DI INFORMATICA - SIMONCINI – 30/01/2008 - C++

1. Sia dato un file di testo testo.txt, si scriva una funzione booleana iniziali(char c, int x), che riceve un carattere c e un valore intero x e restituisce true se il numero di parole che iniziano con la lettera c contenute in testo.txt è maggiore di x, false altrimenti.

2. Sia data una lista circolare semplice l a valori interi. Si scriva una funzione modifica che riceve in ingresso la lista l, legge da tastiera un intero n, ed elimina l’elemento che si incontra scorrendo la lista di n passi. Se l'elemento da eliminare e' quello puntato da l, l deve andare a puntare l'elemento successivo.

3. Scrivere una funzione booleana confronta(A, B), che riceve in ingresso due vettori a valori interi A e B di dimensione N e M rispettivamente. La funzione restituisce true se ciascun valore di B è minore di ogni elemento di A, false altrimenti.

4. Dati i numeri decimali A=102, B=87 e C=-127, 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

9 11 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

Es. 1

#include <fstream.h>

boolean iniziali (char c, int x) { fstream f, g;

int cont=0;

char s[];

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

while(f>>s) { if(s[0]==c)

cont++;

if(cont>x) retur true;

} return false;

}

Es. 2

Void elimina (elem *& l) {

int n;

elem *aux, *aux1;

cout<<”inserisci un valore\n”;

cin>>n ;

if(l==0) { return ; } if(l->next==l) {

delete l ; l=0 ; return ; } if(n==0) {

aux=l;

while(aux->next!=l) aux=aux->next ; aux->next=l->next ; aux=l ;

l=l->next ; delete aux ; return ;}

aux1=l;

aux=aux1->next;

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

aux1=aux1->next ; }

if(aux->next == l) {

aux->next = l->next ; aux = l ;

l = l->next ; delete aux ; }

else {

aux1->next=aux->next;

delete aux ; }

}

(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=20;

const int M=20;

boolean confronta(int A[N], int B[M]) {

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

if(A[i] <= B[j]) 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

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

Si scriva una funzione elimina(l) che riceve in ingresso la lista l ed elimina dalla lista l’elemento con campo informativo massimo.. Utilizzando poi lo stesso