Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


esercizi informatica sergio moriani, Esercizi di Elementi di Informatica

esercizi informatica sergio moriani anno 2025/2026

Tipologia: Esercizi

2024/2025

Caricato il 20/01/2026

ste-rav04
ste-rav04 🇮🇹

5

(1)

5 documenti

1 / 28

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
ESERCIZI INFORMATICA:
ALGEBRA BOOLEANA
CRITTOGRAFIA
IP E RETI
DIAGRAMMA DI FLUSSO
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c

Anteprima parziale del testo

Scarica esercizi informatica sergio moriani e più Esercizi in PDF di Elementi di Informatica solo su Docsity!

ESERCIZI INFORMATICA:

● ALGEBRA BOOLEANA

● CRITTOGRAFIA

● IP E RETI

● DIAGRAMMA DI FLUSSO

ALGEBRA DI BOOLE

Primo esercizio x y z 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 x OR y y OR z (x OR y) AND z (x OR y) AND z AND (y OR z) NOT ((x OR y) AND z AND (y OR z) 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 1 1 1 1 0 1 0 0 0 1 1 1 1 1 0 1 1 0 0 1 1 1 1 1 0

Esercizio 3 Costruire le tabelle di verità delle seguenti espressioni logiche: w = ((x XOR y) AND z) EQU (NOT(x) AND y) x y z 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 x XOR y (x XOR y) AND z NOT x NOT (x) AND y w=((x XOR y) AND z) EQU (NOT (x) AND y) 0 0 1 0 1 0 0 1 0 1 1 0 1 1 0 1 1 1 1 1 1 0 0 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0 1

Esercizio 4 Ricavare una espressione algebrica per la seguente funzione booleana specificata attraverso la sua tabella di verità. Soluzione L’espressione algebrica può essere ottenuta come somma (OR) di prodotti (AND). Nella somma sarà presente un prodotto per ogni ‘1’ che figura nella tabella di verità sotto l’uscita y. Saranno quindi presenti due prodotti, uno corrispondente alla combinazione di ingressi (a,b,c) = (1,0,1) ed uno corrispondente a (a,b,c)=(1,1,1) (si tenga presente la tabella di verità della funzione). In ciascun prodotto, le variabili di ingresso saranno negate se figurano come ‘0’ nella combinazione in ingresso. L’espressione algebrica così ottenuta sarà quindi pari a: y = [a AND NOT(b) AND c] OR [a AND b AND c]

m=(p-1) (q-1)=(7-1) (17-1)=6 16=96· · · MCD (e, m) = 1 → VERO d e=m k+1· · → d= (𝑚·𝑘+1)𝑒 = (96·4+1) 5 = 77 Chiave pubblica (5, 119) Chiave privata (77, 119)

  1. Calcola la chiave pubblica (e, n) e privata (d, n) dati p=61, q= 53, e= Soluzione n= p q = 61 53=3233· · m=(p-1) (q-1)=(61-1) (53-1)=60 52=3120· · · MCD (e, m) = 1 → VERO d e=m k+1· · → d= = = 2753 (𝑚·𝑘+1) 𝑒 (3120·15+1) 17 Chiave pubblica (17, 3233) Chiave privata (2753, 3233)
  2. Calcola la chiave pubblica (e, n) e privata (d, n), dati p=47, q=71, e= Soluzione n= p q = 47 71=3337· · m=(p-1) (q-1)=(47-1) (71-1)=46 70=3220· · · MCD (e, m) = 1 → VERO d e=m k+1· · → d= = = 1019 (𝑚·𝑘+1) 𝑒 (3220·25+1) 79 Chiave pubblica (79, 3337) Chiave privata (1019, 3337)
  3. Date le chiavi pubblica (5;35) e privata (5;35), e volendo trasmettere il messaggio m=2, cifrare e decifrare m, utilizzando RSA. Soluzione:

NB → L'operatore modulo restituisce il resto della divisione tra due numeri interi. Esempio: 9 mod 10

= 9 perchè 9/10=0.9, quindi 0 10=0 e 9-0=9, quindi il risultato è 9·

Codifica = mcifrato = me^ (mod n) = 2^5 mod 35 = 32 mod 35 = (32/35=0.91 → 0 35= 0 e 32-0=32) = 32· Decodifica = mchiaro = codd^ (mod n) = 32^5 mod 35 = 33554432 mod 35 = (33554432/35= 958698.06, 958698 35= 33554430, 33554432- 33554430=2) = 2·

  1. Date le chiavi pubblica (3;33) e privata (7;33), e volendo trasmettere il messaggio m=2, cifrare e decifrare m, utilizzando RSA. Soluzione: Codifica = mcifrato = me^ (mod n) = 2^3 mod 33 = 8 mod 33 = (8/33=0.24 → 0 33= 0 e 8-0=8) = 8· Decodifica = mchiaro = codd^ (mod n) = 8^7 mod 33 = 2097152 mod 33 = (2097152/33= 63550.06, 63550 33= 2097150, 2097152- 2097150=2) = 2·

→ Si somma sempre + La settimana sotto rete è: 200.110.12.96. L’indirizzo cercato è 200.110.12.99.

  1. Determinare l’indirizzo di rete, la lunghezza del suo prefisso e la maschera di sottorete, necessari per individuare la subnet che contiene il seguente intervallo di indirizzi IP: 200.110.12.32 - 200.110.12. L’indirizzo è di classe C. La suddivisione tra subnet e host avviene nel 4° ottetto → 200.110.12.xxxxxxxx L’intervallo dei valori da 32 (per scriverlo servono 6 bit) a 63 è: I 4° ottetti sono: 200.110.12.sshhhhhh La subnet è: 11111111.11111111.11111111.11000000 = 255.255.255.

Prendendo un ip a caso della sottorete 200.110.12.50: La sottorete è 200.110.12.0/26 (perchè i primi 26 bit sono quelli da controllare, dato che sono 1).

  1. Determinare l’indirizzo di rete, la maschera di sottorete e l’indirizzo di broadcast del seguente blocco di indirizzi IP 130.1.10.32/ L’indirizzo è di classe B, e la sua subnet mask è composta da 20 bit → 11111111.11111111.11110000. = 255.255.240. Si esegue un AND tra l’indirizzo e la sua maschera, per ottenere l’indirizzo della rete (network): La network è 10000010.00000001.00000000.0000000 = 130.1.0. Per trovare l’indirizzo di broadcast (l’indirizzo più alto), bisogna settare a 1 tutti i bit che indicano l’host: 10000010.00000001.00001111.11111111 = 130.1.15.
  2. 192.168.23.87/26 e 192.168.23.67/26 appartengono alla stessa rete? Gli indirizzi appartengono alla classe C, in cui la suddivisione tra host e subnet avviene nel 4° ottetto: 132.168.23.xxxxxxxx La subnet mask è composta da 26 bit: 1111111.11111111.11111111.11000000 = 255.255.255.192/ L’indirizzo è: 192.168.23.sshhhhhh. Eseguendo l’AND tra l’indirizzo e la subnet mask si ottiene il numero di rete. I due host si trovano sulla stessa rete: 192.158.23.
  1. Dato l’indirizzo IP 131.175.21.1/22 ; determina l’indirizzo di rete, la maschera di sottorete, l’indirizzo di broadcast, il numero di subnet ed il numero di host per ciascuna subnet. La subnet mask è: 11111111.11111111.11111100.00000000. = 255.255.252. Bisogna fare l’AND tra l'indirizzo e la subnet mask, per ottenere il network L’indirizzo di rete è: 131.175.20. L’indirizzo è di classe B, quindi per la suddivisione in host e subnet sono importanti gli ultimi due ottetti; dalla suddivisione appena fatta della subnet, ci sono 6 bit per le subnet e 10 per gli host: 131.175.sssssshh.hhhhhhhh Ci sono 2^6 (54) subnet e 2^10 - 2 (1022) host ciascuna. L’ indirizzo di broadcast si ottiene settando a 1 gli 0 nel network: 10000011.10101111.00010111.11111111 = 131.175.23.
  2. Indicare l’indirizzo del primo e dell’ultimo host della 30a^ sottorete dell’indirizzo 150.12.0.0/22, calcola anche l’indirizzo del primo e dell’ultimo host della 50a^ subnet. L’indirizzo è di classe B. La maschera di sottorete è: 11111111.11111111.11111100.000000000 = 150.12.sssssshh.hhhhhhhh Ci sono 2^6 (64) subnet, composte da 2^10 -2 (1022) host ciascuna. 1° subnet = 000000 2° subnet = 000001 → 2 30° subnet = 011101 → 1+0+4+8+16= 50° subnet = 110001 → 49 1° host della 30° subnet = 01110100.00000001 = 150.12.116.

Ultimo host della 30° subnet = 01110111.11111110 → L’ultimo non è 1 perchè altrimenti sarebbe l’indirizzo di broadcast 01110111.11111110 = 150.12.119. 1 host della 50° subnet = 11000100.00000001 → L’ultimo non è 0 perchè altrimenti sarebbe l'indirizzo di rete. 11000100.00000001 = 150.12.196. Ultimo host della 50° subnet = 11000111.11111110 = 150.12.199.

  1. Indicare l’indirizzo del 20° host della 10a^ subnet relativa all’indirizzo di rete 180.180.0.0 con subnet mask 255.255.240. L’indirizzo è di classe B. 255.255.240.0 = 11111111.11111111.11110000. La suddivisione tra subnet e host è: 180.180.sssshhhh.hhhhhhhh Ci sono 2^4 (16) subnet con 2^12 -2 (65534) host ciascuna 1° subnet = 0000 10° subnet = 1001 → 9 perchè è la decima subnet dato che si parte da 0 16° subnet = 1111 → 15 perchè è la sedicesima subnet dato che si parte da 0. Default = 000000000000 20° host = 000000010100 → 20 perchè si parte dal default Broadcast = 111111111111 1° host = 0000001 → 1 2° host = 00000010 → 2 3° host = 00000011 → 3 20° host = 00010100 → 20 Il 20 host della decima subnet è: 10110100.10110100.10010000.00010100 = 180.180.144.20.
  2. Determinare l’indirizzo di rete, la maschera di sottorete e l’indirizzo di broadcast del seguente indirizzo IP 130.2.10.32/20. L'indirizzo è di classe B. La maschera è: 11111111.11111111.11110000.00000000 = 255.255.240. L’indirizzo di rete si ottiene eseguendo l’operazione di AND logico tra l’indirizzo IP e la maschera di sottorete.

Per il campo host della rete con 4000 host servono 12 bit(2 12 =4096) e quindi serve una netmask con 20 “1” consecutivi: Binario: 11111111.11111111.11110000. Decimale: 255.255.240.0. La netmask così definita è più lunga di 4 bit rispetto alla netmask iniziale; i possibili indirizzi che si possono assegnare alla rete con 4000 host sono dati da tutte le combinazioni possibili dei primi 4 bit del terzo byte dell’indirizzo. Ad esempio, possiamo scegliere la combinazione con tutti “0” nei primi 4 bit del terzo byte che corrisponde ad un indirizzo di sottorete: 208.57.0.0/20I 4 bit liberi (primi 4 bit del terzo byte) possono assumere fino a 16 diverse combinazioni e quindi possono essere definire altre 15 reti con 4000 host. Per un campo host con almeno 60 possibili indirizzi servono 6 bit(2 6=64). Ognuna delle 15 reti ancora disponibili, avendo 12 bit del campo host, può essere suddivisa ulteriormente usando 6 bit(12-6=6) quindi in 64 reti piccole (per 62 host). In totale dunque, possono essere definite altre 64 x 15=960 sottoreti ciascuna in grado di supportare 62 host.

DIAGRAMMI DI FLUSSO

Esercizio 1: Leggere base B e altezza H e stampare l'area; Esercizio 2: Leggere due numeri X e Y, stampare il maggiore dei due Esercizio 3: Leggere due numeri X e Y, e scambiare loro valori (alla fine X contiene quello che c'era in Y e viceversa...)

  1. Dati in ingresso 3 valori, l’algoritmo calcola e stampa la media
  2. Dati in ingresso la base e l’altezza di un rettangolo, l’algoritmo calcola e stampa a video l’area e il perimetro
  1. Dati in ingresso il numero dei maschi e delle femmine che entrano in discoteca, l’algoritmo calcola e stampa a video il prezzo totale sapendo che i primi pagano 12€ e le seconde 10€ − Dato in ingresso il prezzo di un prodotto, l’algoritmo calcola e stampa a video il prezzo finale scontato del 30% − Dati in ingresso il prezzo di un prodotto e il valore percentuale dello sconto, l’algoritmo calcola e stampa a video il prezzo finale