Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente |
fisica:informatica:201617:esercitazione4 [16/03/2017 alle 10:49 (8 anni fa)] – [Esercizio 1: Eco] Susanna Pelagatti | fisica:informatica:201617:esercitazione4 [16/03/2017 alle 16:55 (8 anni fa)] (versione attuale) – [Esercizio 4: Stampa cifre decimali] Susanna Pelagatti |
---|
a * x^2 + b * x + c = 0 | a * x^2 + b * x + c = 0 |
</code> | </code> |
e restituisce come valore -1 se l'equazione non ha radici reali, 0 se ha radici reali coincidenti e 1 se ha due radici reali distinte. | e restituisce come valore -1 se l'equazione non ha radici reali, 0 se ha radici reali coincidenti e 1 se ha due radici reali distinte. Provare la funzione con un opportuni programma main. |
| |
===== Esercizio 3: Eco ===== | ===== Esercizio 3: Eco ===== |
l'elaborazione termina digitando End OF File (CTRL-D). | l'elaborazione termina digitando End OF File (CTRL-D). |
| |
===== Esercizio 2: Stampa cifre decimali ===== | ===== Esercizio 4: Stampa cifre decimali ===== |
| |
Scrivere un programma C che legge dallo standard input un numero intero positivo ''X'' e stampa le cifre decimali del numero, una per linea (separate da ''\n'') sullo standard output. | Scrivere una funzione C che prende come parametro un numero intero positivo e stampa le cifre decimali del numero su standard output, una per linea (separate da ''\n''). Provare la funzione con un opportuno programma main(). Ad esempio 510 provoca la seguente stampa: |
| <code> |
| 5 |
| 1 |
| 0 |
| </code> |
| |
===== Esercizio 3: Operatori logici ===== | ===== Esercizio 5: Operatori logici ===== |
Stampare su standard output la [[http://it.wikipedia.org/wiki/Tabella_della_verit%C3%A0 | tabelle di verità]] delle seguenti espressioni booleane | Stampare su standard output la [[http://it.wikipedia.org/wiki/Tabella_della_verit%C3%A0 | tabelle di verità]] delle seguenti espressioni booleane |
<code> | <code> |
| |
| |
===== Esercizio 4: Bilanciamento delle parentesi ===== | ===== Esercizio 6: Bilanciamento delle parentesi ===== |
Scrivere un programma C che legge dallo standard input una sequenza di caratteri (terminata da EOF) e stabilisce se l'insieme dei caratteri utilizza in modo appropriato le parentesi graffe tonde e quadre ovvero | Scrivere un programma C che legge dallo standard input una sequenza di caratteri (terminata da EOF) e stabilisce se l'insieme dei caratteri utilizza in modo appropriato le parentesi graffe tonde e quadre ovvero |
* se il numero delle parentesi aperte e chiuse coincide e | * se il numero delle parentesi aperte e chiuse coincide e |
| |
| |
===== Esercizio 5: (avanzato) Calcolo delle potenze di 2 ===== | ===== Esercizio 7: (avanzato) Calcolo delle potenze di 2 ===== |
| |
Scrivere un programma C che legge da standard input un numero intero positivo ''n'' (''n<=30'') e calcola l'n-esima potenza di 2 (2 elevato ad n) utilizzando esclusivamente gli operatori di shift (''<<'' o ''>>''). | Scrivere una funzione C che ha come parametro un numero intero positivo ''n'' (''n<=30'') e calcola l'n-esima potenza di 2 (2 elevato ad n) utilizzando esclusivamente gli operatori di shift (''<<'' o ''>>''). |
| |
===== Esercizio 6: (avanzato) Stampa cifre binarie ===== | ===== Esercizio 8: (avanzato) Stampa cifre binarie ===== |
Scrivere un programma C che legge un intero ''X'' (tipo ''int'') da standard input e stampa sullo standard output le cifre della sua rappresentazione in complemento a due. | Scrivere una funzione C che ha come paramento un intero e stampa sullo standard output le cifre della sua rappresentazione in complemento a due. |
| |
//Suggerimento//: utilizzare gli operatori bit a bit di shift (<<,>>), complemento(~), and(&), or(|), xor (^) per ricavare le cifre dalla rappresentazione interna di ''X'' come ''int'' senza ricalcolarla. | //Suggerimento//: utilizzare gli operatori bit a bit di shift (<<,>>), complemento(~), and(&), or(|), xor (^) per ricavare le cifre dalla rappresentazione interna di ''X'' come ''int'' senza ricalcolarla. |
| |