Numeri Primi a Girella Matrice
Esercizio
Data una matrice di dimensioni r
e c
inserite dall’utente ( , ) riempirla di numeri che partono da r*c
e decrescono fino ad 1 iniziando dalla prima cella in alto a sx (0,0), andando a dx fino a quando possibile, poi scendendo fino a che si può, poi a sinistra e in alto allo stesso modo.
Ad esempio con c = 3, r = 2
otterremo la seguente matrice:
6 | 5 | 4 |
---|---|---|
1 | 2 | 3 |
con c = 3, r = 3
otterremo la seguente matrice:
9 | 8 | 7 |
---|---|---|
2 | 1 | 6 |
— | — | — |
3 | 4 | 5 |
Stampare a video la matrice dove al posto di ogni numero c’é una *
o un -
che indicano se il numero è primo o non primo.
come verificare se un numero é primo
Il test di primalità basilare, che si basa sulla definizione stessa di numero primo, è il seguente: dato un numero di input n, si verifichi se esiste un intero m compreso tra 2 e tale da dividere n. Se n è divisibile per almeno un m allora n è composto, altrimenti è primo.
Il limite può essere abbassato a $ \sqrt {n}$, in quanto se tutti i fattori fossero maggiori di questo valore, il loro prodotto sarebbe necessariamente maggiore di n, il che è assurdo. In questo caso particolare, il test di primalità fornisce anche la fattorizzazione del numero.