• Non ci sono risultati.

Esame di Informatica Generale I

N/A
N/A
Protected

Academic year: 2022

Condividi "Esame di Informatica Generale I"

Copied!
2
0
0

Testo completo

(1)

Esame di Informatica Generale I

Mauro Brunato Marted`ı 27 luglio 2004

Esercizio 1

Un vettore di n numeri interi `e ordinato se:

• n = 0, oppure

• l’ultimo elemento `e maggiore o uguale del penultimo e il vettore composto dai primi n − 1 elementi `e ordinato.

1.1) Scrivere una funzione che verifichi se un vettore `e ordinato o meno utilizzando la definizione induttiva riportata sopra.

1.2) Un’altra possibile definizione induttiva `e la seguente: un vettore di lunghezza n `e ordinato se

• n = 0, oppure

• il vettore composto dai primi dn/2e elementi `e ordinato, cos`ı pure il vettore composto dai restanti elementi, e l’ultimo elemento del primo vettore `e minore o uguale del primo elemento del secondo vettore.

Scrivere una funzione che verifichi se un vettore `e ordinato o meno utilizzando quest’ultima definizione induttiva.

(2)

Esercizio 2

Che cosa scriver`a a video il seguente programma?

#include <stdio.h>

int modifica (int s, int *p) {

*p += p[s];

return *p;

}

int main (void) {

int p[] = {1, 5, 4, 3, 5};

int i;

for ( i = 3; i >= 0; i-- )

printf ("%d %d\n", i, modifica(i,p));

return 0;

}

Esercizio 3

Che cos’`e l’allocazione dinamica della memoria? In quali casi viene preferita all’allo- cazione statica? Fornire un esempio illustrativo, descrivendo in particolare le funzioni che il linguaggio C mette a disposizione allo scopo.

Esercizio 4

4.1) Sia a una variabile intera. Quale valore bisogna assegnare ad a affinch´e la seguente espressione

((8 >> a > a) ? --a : a--) ? "falso" : "vero"

valga "vero"?

4.2) Dimostrare che per ogni altro valore di a l’espressione vale "falso".

Suggerimento — (per il primo punto) provare con valori piccoli di a, oppure ragionare prima sul secondo punto.

Riferimenti

Documenti correlati

Corso di studi:... Corso

Si rimuovono, uno alla volta, gli elementi dello heap, posizionando ciascuno nel vettore, a partire dalla fine (perché viene rimosso prima

[r]

[r]

(2) un nodo corrispondente ad una soluzione parziale la somma dei cui elementi pi` u tutti gli elementi non ancora considerati ` e inferiore a c ha come foglie del suo sottoalbero

Nel piano, due vettori non nulli fra loro ortogonali sono sempre linearmente indipendenti; nello spazio, due vettori non nulli fra loro ortogonali sono sempre linearmente

Ora, un punto che partendo da O si sposta prima nel punto di coordinate v1 , v2 , 0 e poi si sposta di v3 unita’ nella direzione dell’asse z, descrive i due cateti di un

Fissi- amo nello spazio un sistema di riferimento cartesiano ortogonale monometrico con origine nel punto O, ed identifichiamo i vettori di R 3 con vettori applicati