Esercizi¶
Scrivere una funzione
print_triangular_numbers(n)
che stampa i primi n numeri triangolari (Cercare sul web cosa è un numero triangolare). Una chiamata aprint_triangular_numbers(5)
produrrebbe il seguente risultato:1 1 2 3 3 6 4 10 5 15
Leggere tre reali e stampare il massimo il minimo e la somma dei tre.
Leggere venti reali in input, calcolare il massimo, il minimo e la somma di tutti i valori e stamparli.
Leggere una serie di reali terminata dal valore 0.0. Calcolare il massimo, minimo e somma totale dei reali nella serie e stamparli.
Si scriva una funzione con un parametro intero n che calcola la somma dei numeri dispari nell’intervallo (0, n).
Scrivere un programma che legga da tastiera un numero intero x e stampi il valore di x!. Per x! si intende x fattoriale
Si scriva una funzione che, dati 2 parametri n ed m interi positivi, calcola e stampa il loro prodotto senza usare l’operatore * ma usando solo le operazioni di somma, sottrazione e gli operatori di confronto.
Si scriva una funzione che, dati 2 parametri n ed m naturali (n maggiore o uguale a 0 e m maggiore di 0), calcola la loro divisione intera senza usare gli operatori di divisione ma usando solo le operazioni di somma, sottrazione e gli operatori di confronto.
Si scriva una funzione che, dati 2 parametri n ed m, naturali (n maggiore o uguale a 0 e m maggiore di 0), calcola il resto della divisione intera di n ed m senza usare gli operatori di divisione e il modulo ma usando solo le operazioni di somma, sottrazione e gli operatori di confronto.
Si scriva una funzione che, dati 2 parametri n ed m interi positivi, calcola n**m. Non usare funzioni di libreria e **, ma solo le operazioni aritmetiche.
Si scriva un programma che legge in input un valore k e poi legge k valori uno alla volta. Il programma deve stampare il messaggio “Zero contenuto nella sequenza” oppure “Zero non contenuto nella sequenza” a seconda che il valore 0 sia o meno contenuto tra i k valori letti.
Leggere una serie di reali terminata dal valore 0.0. Stampare in output la parola “Ordinata” se la sequenza e’ ordinata in modo crescente e “Non ordinata” altrimenti.
Estendere il programma in modo da riconoscere se la sequenza è ordinata in modo crescente o descrescente e stampare “Ordinata crescente” o “Ordinata decrescente”.
Scrivere un programma che legge da tastiera un intero x e stabilisce se il numero è primo. Il programma stampa in output 1 se x è primo, 0 altrimenti.
Scrivere un programma che prende in ingresso tre reali a, b e c e stampa le due soluzioni dell’equazione
a*x**2 + b*x + c = 0
usando la formula standard. Controllare che il delta sia maggiore o uguale a 0.Scrivere un programma che legge in input un numero intero positivo x rappresentato in base 10 e converte x nella sua rappresentazione binaria stampando il risultato.
Scrivere un programma che legge in input un numero intero positivo x rappresentato in base 10 e una base b anch’essa rappresentata in base 10 e converte x nella sua rappresentazione posizionale in base b stampando il risultato.
Scrivere un programma che legge due numeri m e n e calcola il massimo comun divisore MCD(m,n) utilizzando il metodo di Euclide che funziona come segue, supponendo senza perdita di generalità che m>n. Se m = nk + r (con 0<r< m), allora MCD(m,n)=n se r=0, altrimenti MCD(m, n) = MCD(r, n) se r>0. Dunque, dobbiamo dividere max{m,n} per min{m,n}: se il resto è 0 allora MCD(m,n)=min{m,n}; altrimenti l’iterazione successiva considererà come nuovi m e n i valori n e r.
- Consideriamo la funzione
f(x)= 5*x**3 + 4*x**2 + 7*x +5
. Si vuole calcolare l’integrale di f(x) su un intervallo [a,b] dividendo l’intervallo in n intervalli di lunghezza (b−a)/n e calcolando l’integrale come somma dell’area di n trapezi, come spiegato in questo pdf. Il programma chiede all’utente due reali positivi a e b e un intero positivo nmax numero di intervalli in cui suddividere l’intervallo [a, b]. Il programma deve calcolare le approssimazioni dell’ integrale di f(x) ottenute con il procedimento dei trapezio per n=2,3,4,...,nmax. Stampare i valori ottenuti e la differenza con l’integrale esatto calcolato analiticamente.
- Consideriamo la funzione
Note
La finestra sotto può essere usata per fare delle prove.