Category Archives: CALCOLO

Integrazione numerica – Esercizio 1

Calcola \displaystyle \int_{1}^{5}(3x^2+2x+1)\ dx

Osserva

  • Integrale(f) = x^3+x^2+x
  • Integrale(f, a, b) = 152
  • SommaRettangoli(f, a, b, n, 0) = SommaInferiore(f, a, b, n)
  • SommaRettangoli(f, a, b, n, 1) = SommaInferiore(f, a, b, n)

CLIL


Combinatorial calculus


John wishes to walk from corner A to corner B through streets as in the following street map. A route from A to B is a combination only of northward segments and eastward segments; an example is shown in bold on the map ([N,E,E,N,N,N,E,E]).
Note that at any corner John has only two choices; actually he can neither go backward, nor increase the distance from destination.

How many routes are there from A to B available to John?


Let be the set of natural numbers whose digits, in decimal representation, are chosen from {1,2,3} such that no digit is repeated.
Find the sum of all these numbers and put it in the box below.

Hint: note that, for example, the numbers 1, 12, 123 belong to.

LCG

Linear Congruential Generator

Osserva le operazioni nelle 3 colonne

  1. = a*x (moltiplicazione)
  2. = x+c (addizione)
  3. = RESTO(x; m) (modulo)

oppure, con un solo passo

  • = RESTO(a*x+c; m)

Prova

  • m=256, 360, 1000, 2000, 10000, 2^10
  • a, c?

Numeri romani

Il sistema di numerazione con i numeri romani nasce come sistema additivo (unario)

Una sequenza di unità…

con l’introduzione progressiva di simboli riassuntivi per poter rappresentare grandezze sempre più grandi…

Le cifre di peso maggiore precedono le cifre di peso minore

Nei secoli il sistema di numerazione è diventato additivo/sottrattivo per poter accorciare ulteriormente la rappresentazione di numeri dispettosi

Se una cifra precede una cifra con peso maggiore allora la quantità corrispondente deve essere sottratta


Prova con il foglio di calcolo

Numeri pseudocasuali

Processi deterministici e processi casuali

  • Deterministico
  • Casuale
  • Pseudocasuale

Generatori di numeri casuali

  • Hardware
    • TRNG, true random number generator
    • Macro: dado, roulette, pallottoliere, …
    • Micro: rumore termico, effetto fotoelettrico, fenomeni quantistici…
  • Software
    • PRNG, pseudo random number generator
    • Centro del quadrato
    • LCG, Linear Congruential Generator

Bontà degli algoritmi

L’algoritmo è

  1. portabile
  2. veloce

La sequenza di numeri pseudocasuali

  1. ha una distribuzione uniforme
  2. non presenta correlazione
  3. è riproducibile
  4. ha un periodo lungo

La sequenza supera

  1. Criterio di Von Neumann: supera i test statistici.
  2. Criterio di Turing: è indistinguibile da una sequenza hardware.

Notazione scientifica

La notazione scientifica permette di rappresentare numeri molto grandi o molto piccoli senza utilizzare lunghe sequenze di cifre.

Dato il numero con 10 cifre

c1c2c3c4…c10

si scrivono un certo numero di cifre significative (per esempio 4) seguite dalla potenza di 10 necessaria a mantenere l’uguaglianza

c1,c2c3c4·109

oppure

c1,c2c3c4 E9

Osserva che appare una sola cifra diversa da zero prima della virgola.

Nei sistemi di calcolo sono comuni 15 cifre significative

Base 2

Le cifre sono 2: 0 e 1

La base delle potenze è 2


Contare in base 2


Da base 2 a base 10

Espandi in somma di potenze

(101)2 = (?)10

(101)2 = 1·220·211·20
= 1·4 + 0·2 + 1·1
= 4 + 0 + 1
= (5)10

(1101)2 = (?)10

(1101)2 = 1·231·220·211·20
= 1·8 + 1·4 + 0·2 + 1·1
= 8 + 4 + 0 + 1
= (13)10


Da base 10 a base 2

Con divisioni intere successive, la conversione è data dai resti delle divisioni (dall’ultimo al primo)

(100)10 = (?)2

(100)10 = (1100100)2

(250)10 = (?)2

(250)10 = (11111010)2

Per svolgere i calcoli in modo più compatto puoi adottare lo schema seguente

Il primo quoziente è il numero da convertire…


Con il foglio di calcolo

  • BASE(100, 2) -> 1100100
    • BASE(100, 2, 8) -> 01100100
  • BINARIO.DECIMALE(1100100) -> 100
  • DECIMALE(1100100, 2) -> 100
  • DECIMALE.BINARIO(100) -> 1100100


Alternativamente, con delle sottrazioni successive, puoi estrarre le potenze di 2 (1, 2, 4, 8, 16, 32, 64, 128, …) dalla più grande alla più piccola

(100)10 = (?)2

100 = 64324
= 1·26 + 1·250·240·231·220·210·20
(100)10 = (1100100)2

(250)10 = (?)2

250 = 12864321682
= 1·271·261·251·241·230·221·210·20
= (1111010)2

Base 10

Utilizza 10 cifre (simboli): 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9

La base delle potenze è 10


Il sistema di numerazione decimale è un sistema di numerazione posizionale

Il valore effettivo di una cifra

  • dipende dalla posizione che occupa
  • è dato dal prodotto tra la cifra e la potenza di 10 corrispondente alla posizione.

La rappresentazione di un numero N in base 10 (per esempio con 6 cifre)

N = C5 C4 C3 C2 C1 C0

è la sintesi del significato effettivo…

N = C5·105 + C4·104 + C3·103 + C2·102 + C1·101 + C0·100


Per evidenziare il valore posizionale di ogni cifra espandi il numero nella sua somma di potenze

948

= novecento + quaranta + otto
= 900 + 40 + 8
= 9·100 + 4·10 + 8·1
= 9·102 + 4·101 + 8·100

1948

= mille + novecento + quaranta + otto
= 1000 + 900 + 40 + 8
= 1·1000 + 9·100 + 4·10 + 8·1
= 1·103 + 9·102 + 4·101 + 8·100

19480

=
= 10000+9000+400+80
= 1·10000 + 9·1000 + 4·100 + 8·10 + 0·1
= 1·104 + 9·103 + 4·102 + 8·101 + 0·100

Base: potenza di 2

Dato il numero N rappresentato in base 2 come sequenza di cifre (bit) c7, c6, c5, c4, c3, c2, c1 e c0 (supponiamo che 8 cifre siano sufficienti)

N = (c7c6c5c4c3c2c1c0)2

Considera il significato delle cifre secondo la notazione posizionale

N = c7·27 + c6·26 + c5·25 + c4·24+c3·23 + c2·22 + c1·21 + c0·20

raccogli

N = (c7·27 + c6·26 + c5·25 + c4·24)·24 + (c3·23 + c2·22 + c1·21 + c0·20)

poni

C1 = (c7·27 + c6·26 + c5·25 + c4·24), il numero da 0 a 15 nella 1° parentesi
C0 = (c3·23 + c2·22 + c1·21 + c0·20), il numero da 0 a 15 nella 2° parentesi

allora

N = C1·161 + C0·160
N = (C1C0)16

La conversione dalla base 2 alla base 16 si ottiene

  1. raccogliendo le cifre da destra verso sinistra in gruppi di 4
  2. trasformandoli nella cifra esadecimale corrispondente al loro valore in base 10!


Con considerazioni analoghe si passa dalla base 2 alla base 4

  1. raccogliendo le cifre da destra verso sinistra in gruppi di 2
  2. trasformandoli nella cifra in base 4 corrispondente al loro valore in base 10

N = c7·27 + c6·26 + c5·25 + c4·24 + c3·23 + c2·22 + c1·21 + c0·20
N = (c7·21 + c6·20)·26 + (c5·21 + c4·20)·24 + (c3·21 + c2·20)·22 + ( c1·21 + c0·20)·20
N = (c7·21 + c6·20)·43 + (c5·21 + c4·20)·42 + (c3·21 + c2·20)·41 + ( c1·21 + c0·20)·40
N =  C3·43 + C2·42 + C1·41 + C0·40
N = (C3C2C1C0)4


Con considerazioni analoghe si passa dalla base 2 alla base 8

  1. raccogliendo le cifre da destra verso sinistra in gruppi di 3
  2. trasformandoli nella cifra ottale corrispondente al loro valore in base 10

N = c8·28 + c7·27 + c6·26c5·25 + c4·24 + c3·23 + c2·22 + c1·21 + c0·20
N = (c8·22 + c7·21 + c6·20 +)·26 + (c5·22 + c4·21 + c3·20 +)·23 + (c2·22c1·21 + c0·20)·20
N = (c8·22 + c7·21 + c6·20 +)·82 + (c5·22 + c4·21 + c3·20 +)·81 + (c2·22c1·21 + c0·20)·80
N = C2·82C1·81 + C0·80
N = (C2C1C0)8


Ripetendo alla rovescia tutti i passi si passa da base 4/8/16 a base 2

Conversioni di base – 10

Dato il numero N in base 10, può essere rappresentato in una base qualsiasi b come un sequenza di cifre c3, c2, c1 e c0 della base b (supponiamo che 4 cifre in base b siano sufficienti)

N=(c3c2c1c0)b

Considerando il significato delle cifre secondo la notazione posizionale

N = c3·b3 + c2·b2 + c1·b1 + c0·b0
N = (c3·b2 + c2·b1 + c1·b0b + c0
N/b = (c3·b2 + c2·b1 + c1·b0), con resto c0

La cifra meno significativa, c0, della rappresentazione di N nella base b, è uguale al resto della divisione intera tra N e b.

Sia N0 il quoziente intero precedente

N0 = c3·b2+c2·b1+c1·b0

Se ripeti i calcoli ottieni

N0/b = c3·b1+c2·b0 con resto c1
N1/b = c3 con resto c2
N2/b = 0 con resto c3.

Hai estratto tutte le cifre della rappresentazione in base b di N, dalla meno significativa alla più significativa.
Le cifre appaiono in ordine inverso rispetto a quello voluto (c3 c2 c1 c0)

I resti della divisione intera per b, come le cifre in base b,  sono: 0, 1, …, b-1
Se la base è maggiore di 10 sono necessari nuovi simboli per le cifre successive al 9
Si ricorre all’alfabeto inglese…