FUNZIONI E ARRAY

  1. Scrivere una funzione che accetti in ingresso tre valori x, a e b e verifichi che x è compreso nell'intervallo [a,b]. Scrivere quindi una funzione main() per collaudare la funzione implementata.

  2. Scrivere una funzione con quattro parametri a, b, c, x reali che restituisce il risultato della funzione a x2 + b x + c. Scrivere quindi una funzione main() per collaudare la funzione implementata.

  3. Scrivere una funzione che riceve i coefficienti a, b, c reali di un'equazione di secondo grado e restituisce 1 se l'equazione ha soluzioni reali e 0 altrimenti. Scrivere quindi una funzione main() per collaudare la funzione implementata.

  4. Scrivere una funzione che riceve un parametro di tipo char e restituisce il carattere successivo. Scrivere quindi una funzione main() per collaudare la funzione implementata.

  5. Scrivere un programma che riempie due array con interi forniti dall'utente, e calcola e stampa la matrice prodotto vettore, cioè una matrice n x m le cui righe sono ottenute moltiplicando l'i-esimo numero del primo array per tutti i numeri del secondo. Ad esempio, se n = 3, m = 2, il primo vettore contiene (4,7,1) ed il secondo (5,7), allora la matrice prodotto vettore sarà:

    20
    28
    35
    49
    5
    7

  6. In un quadrato magico (vedi esempio), la somma dei numeri presenti in ogni riga, in ogni colonna e in entrambe le diagonali dà sempre lo stesso numero, detto somma magica.

     8 
     1 
     6 
    3
    5
    7
    4
    9
    2

    Scrivere un programma che crea una matrice quadrata di interi e determina se la matrice rappresenta o meno un quadrato magico.


  7. Utilizzate un array per risolvere questo problema: leggete 20 numeri compresi tra 10 e 100. Per ogni numero letto, visualizzatelo solo se esso non è già stato immesso in precedenza.

  8. Scrivere un programma che legga da tastiera un array di interi ordinato (in ordine non decrescente). Se l'array è effettivamente ordinato si deve stampare il numero di interi distinti in esso contenuti.

  9. Scrivere un programma che
    • legge una sequenza di 50 caratteri;
    • rimpiazza nella sequenza tutti i caratteri non alfanumerici con uno spazio;
    • stampa la sequenza modificata.

  10. Scrivere un programma che legge in input un array ordinato di numeri interi (in questa fase si devono rifiutare gli input che non rispettano l'ordinamento), quindi chiede all'utente quale valore vuole cercare nell'array e ne effettua la ricerca utilizzando l'algoritmo di ricerca binaria (questo algoritmo consiste nel suddividere l'array in due metà e nel restringere la ricerca solo alla metà in cui il valore da cercare deve necessariamente trovarsi, se è presente nell'array).

  11. (*) Scrivere un programma che
    • legge una sequenza di 50 caratteri;
    • rimpiazza nella sequenza tutti i caratteri non numerici con uno spazio;
    • stampa la sequenza modificata indicando da quante cifre e quanti numeri è composta.

  12. Sia n un intero. Sia S la sequenza 0, 1, ..., n. L'utente elimina uno ed uno solo degli n + 1 elementi di S e poi inserisce gli elementi rimanenti in un qualche ordine a suo piacimento. Scrivete un programma che determini l'elemento mancante. Progettate diverse soluzioni, partendo dalla più semplice, cercando via via di utilizzare sempre meno memoria per ottenere il risultato. In particolare:
    • Progettate una soluzione che funzioni memorizzando la sequenza in input.
    • (*) Progettate una soluzione che funzioni senza memorizzare la sequenza in input.