Sei sulla pagina 1di 4

/*

Visualizzare la quantita' di cifre di 10 interi pseudo-casuali compresi


tra 1 e 200. Per svolgere questo compito si definisca ed utilizzi una
funzione che produce la quantita' di cifre di un dato intero.
*/
/*
Acquisire una cifra x da tastiera. Successivamente visualizzare la
quantita' di cifre di 10 interi pseudo-casuali compresi tra 1 e 200
e quante volte compare la cifra x all'interno di questi interi.
Per svolgere questo compito si definisca ed utilizzi una funzione che
dato un intero n ed una cifra x inizializzi gli interi puntati da due dati
puntatori a variabili intere con la quantit di cifre di n e quante volte
compare x in n.
*/
/*
Acquisire da tastiera un numero naturale x. Successivamente per ciascun naturale i
compreso tra 1 e 10 visualizzare la piu' grande potenza di i inferiore a x.
Per svolgere questo compito si definisca ed utilizzi una funzione che produce la
piu' grande potenza di un dato intero inferiore ad un dato intero (positivo).
*/
/*
Acquisire da tastiera un numero naturale x. Successivamente per ciascun naturale i
compreso tra 1 e 10 visualizzare la piu' grande potenza di i inferiore a x e la
piu' piccola potenza di i superiore a x (se esiste).
Per svolgere questo compito si definisca ed utilizzi una funzione che inizializza
gli interi puntati da due dati puntatori con la piu' grande potenza di un
dato intero b inferiore ad un secondo dato intero l e con la piu' piccola potenza
di b superiore a l
*/
/*
Visualizzare la quantita' di divisori di ciasciun naturale tra 2
e 100. Per svolgere questo compito si definisca ed utilizzi una
funzione che produce la quantita' di divisori di un dato intero.
*/
/*
Visualizzare la quantita' di divisori e di fattori primi di
ciasciun naturale tra 2 e 100. Per svolgere questo compito si
definisca ed utilizzi una funzione che inizializza due dati puntatori
a variabili intere con la quantita' di divisori e la quantita' di
fattori primi di un dato intero. Ad esempio, 6708 = 2^2 * 3 * 13 * 43,
ha 4 fattori primi
*/
/*
Acquisire da tastiera una successione di naturali che termina
con 1 e per ciascun naturale n acquisito (1 escluso), se n
e' un numero di Fibonacci, visualizzare la sua posizione nella
successione di Fibonacci. Per svolgere questo compito si
definisca ed utilizzi una funzione che produce la posizione
nella successione di Fibonacci di un dato natuale x, se x
e' un numero di Fibonacci superiore a 1, produce -1 altrimenti.
As esempio, per il numero 13 il programma deve visualizzare 7.
*/
/*
Acquisire da tastiera una successione di naturali che termina
con 0; dopo aver acquisito ciascun naturale c della successione

(0 escluso) visualizzare la terna (a,b,c), se esiste. Per svolgere


questo compito si definisca ed utilizzi una funzione che, per un
dato intero c, produce 1 se esiste una terna pitagorica (a,b,c)
e produce 0 altrimenti; inizializza l'intero puntato da un
dato puntatore a variabile intera con il primo intero "a"
della terna; inizializza l'intero puntato da un secondo dato
puntatore a variabile intera con il secondo intero "b" della
terna. Una terna (a,b,c) e' detta Pitagorica se a^2 + b^2 = c^2
Ad esempio per l'intero 5 il programma visualizza (3,4,5)
*/
/*
Acquisire 5 parole e successivamente inizializzare
una variabile stringa con le parole acquisite aggregate
in ordine inverso rispetto a quello con cui sono state
acquisite. Per svolgere questo compito definire ed
utilizzare una funzione che aggiunge ad una data variabile
stringa i caratteri di una seconda data variabile stringa.
*/
/*
Riempire una tabella di 10 righe e 20 colonne con interi
pseudo-casuali compresi tra 10 e 50. Successivamente
acquisire due reali x e y da tastiera. Si consideri le
sequenze di interi presenti su ciascuna riga della tabella.
Per ciascuna di queste sequenze si visualizzi la lunghezza
della piu' lunga sotto-sequenza di interi comprese tra
x ed y. Per svolgere questo compito si definisca ed utilizzi
una funzione che data una sequenza di n variabili intere e
date due variabili intere x ed y produca la lunghezza della
piu' lunga sotto-sequenza di interi compresi tra x ed y.
*/
/*
Acquisire da tastiera 5 parole e successivamente visualizzare
le parole a cui sono state rimosse le vocali. Per svolgere
questo compito definire ed utilizzare due funzioni con le
seguenti finalita':
- Produrre 1 se una data variabile carattere e' una vocale
e produrre 0 altrimenti
- Rimuovere da una data variabile stringa le vocali
*/
/*
Acquisire da tastiera una successione di 5 interi o una
successione di lunghezza inferiore e che termina con zero.
Successivamente si consideri 5 sequenze di 20 interi pseudo
casuali compresi tra 1 e 3. Per ciascuna di queste sequenze
si visualizzi quante volte vi compare la successione di
interi acquisiti (zero escluso). Per svolgere questo
compito definire ed utilizzare due funzioni con le seguenti
finalita'.
- Produrre 1 se due dati vettori di n variabili intere sono
uguali
- Produrre la quantita' di volte un dato vettore di n1
variabili intere e' contenuto in un secondo dato vettore
di n2 variabili intere
*/
/*
Acquisire da tastiera 5 parole e successivamente per ciascuna
coppia di parole acquisite visualizzare un messaggio che indica
se le due parole della coppia sono una l'anagramma dell'altra.

Per svolgere questo compito si definisca ed utilizzi due funzioni


con le seguenti finalita'.
- Inzializzare gli interi in un dato vettore di 26 variabili intere
con il numero di volte per cui ciascuna lettera compare in una
data variabile stringa.
- Produrre 1 se due dati vettori di n variabili intere sono uguali
e produrre 0 altrimenti.
*/
/*
Acquisire da tastiera una successione di date del calendario che termina con
la quinta data valida acquisita. Successivamente visualizzi le cinque date
valide acquisite. Per svolgere questo compito si definisca ed utilizzi tre
funzioni C con le seguenti finalita':
- Produrre 1 se un anno e' bisestile e 0 altrimenti.
- Produrre 1 se una data data del calendario e' valida e 0 altrimenti.
- Visualizzare le date in un dato vettore di n date del calendario.
*/
/*
Riempire una sequenza con 10 orari, i minuti e le ore di ciascun dei quali
e' un intero pseudo-casuale compreso rispettivamente tra 0 e 59 e tra 0 e 23.
Successivamente acquisire due orari (hh:mm) x ed y da tastiera. Rimuovere
dalla sequenza gli orari che non sono compresi tra x e y e visualizzare
la sequenza risultante. Per svolgere questo compito si definiscano 4
funzioni con le seguenti finalita'.
- Produrre 1 se un dato orario e' inferiore ad un dato secondo orario
- Rimuovere da una data sequenza di orari gli orari che non sono
compresi tra due dati orari
- Visualizzare una data sequenza di orari
*/
/*
Riempire una sequenza con 10 punti del piano cartesiano, l'ascissa e l'ordinata
di ciascuno dei quali e' un intero pseudo-casuale compreso tra -1000 e +1000.
Successivamente visualizzare la sequenza di punti risultante ordinati dal punto
piu' vicino al punto piu' lontano dall'origine; acquisire le coordinare di un
punto P del piano cartesiano da tastiera; visualizzare il punto del piano
cartesiano maggiormente vicino a P. Per svolgere questo compito si utilizzino
le funzioni float powf(float b, float e) e float sqrtf(float x) di math.h
che producono la potenza con base un dato floating point ed espondente un
secondo dato floating point e la radice quadrata di un dato floating point.
Inoltre si definiscano ed utilizzino 5 funzioni con le seguenti finalita':
- Ordinare una data sequenza di n punti del piano cartesiano secondo la loro
distanza dall'origine
- Produrre il punto che e' maggiormente vicino ad un dato punto tra quelli in
una data sequenza di n punti del piano cartesiano
- Produrre la distanza tra due dati punti del piano cartesiano
- Visualizzare un dato punto del piano cartesiano
- Visualizzare una data sequenza di n punti del piano cartesiano
*/
/*
Riempire una sequenza S di 10 coppie di numeri naturali con interi psuedo
casuali compresi tra 1 e 10. Successivamente riempire due sequenze S1 e S2:
S1 con le coppie di numeri naturali di S la cui somma e' pari ed S2 con le
coppie di numeri naturali la cui somma e' dispari; visualizzare S1 ed S2 ed
infine visualizzare la piu' lunga sotto-sequenza di coppie di numeri naturali
in S2 tali per cui la somma dei naturali accoppiati e' un numero primo.
Per svolgere questo compito si definisca ed utilizzi 4 funzioni C con le
seguenti finalita':
- Visualizzare una data sequenza di n coppie di numeri naturali
- Inizializzare una sequenza v1 puntata da un dato puntatore con le coppie di
una data sequenza v di n coppie di numeri naturali tali per cui la somma

dei numeri naturali accoppiati e' pari; inizializzare un intero puntato da


un secondo dato puntatore con la quantita' di coppie di v1 inizializzate;
inizializzare una sequenza v2 puntata da un terzo dato puntatore con le
coppie di una data sequenza v di n coppie di numeri naturali tali per cui
la somma dei naturali accoppiati e' dispari; inizializzare un intero
puntato da un quarto dato puntatore con la quantita' di coppie di v2
inizializzate.
- Produrre 1 se la somma dei numeri naturali di una data coppia e' un numero
primo e produrre 0 altrimenti.
- Produrre l'indirizzo di memoria della prima coppia della piu' lunga
(sotto)sequenza S contenuta in una data sequenza di n coppie di numeri
naturali tale per cui S e' costituita da coppie la cui somma e' un numero
primo; inizializzare un intero puntato da un dato puntatore con la quantita'
di coppie presenti in S.
*/
/*
Riempire una sequenza (mazzo) di 52 carte da gioco con le carte di un
mazzo francese. Successivamente riempire una seconda sequenza (mano)
con 13 carte casualmente estratte dal mazzo; visualizzare la mano di
carte ordinata secondo il valore delle carte. Aggiungere carte
casualmente estratte dal mazzo alla mano di carte fintantoche' nella
mano non si ha un tris di carte, visualizzando le carte estratte.
Infine visualizzare la nuova mano di carte ordinata seconda il valore
delle carte. Per svolgere questo compito di definisca ed utilizzi 5
funzioni con le seguenti finalita'.
- Visualizzare una data carta da gioco
- Visualizzare una data sequenza di n carte da gioco
- Ordinare una data sequenza di n carte da gioco secondo il valore
delle carte
- Produrre una carta da gioco casualmente selezionata in una data
sequenza di carte da gioco formata da un numero di carte memorizzato
in una variabile puntata da un dato puntatore n a variabile intera;
rimuovere dalla sequenza la carta selezionata; decrementare di una
unita' il numero di carte puntato da n.
- Produrre 1 se una data sequenza di n carte da gioco contiene un tris;
produrre 0 altrimenti.
*/