/*
3, 5, 15, 17, 51, 85, 255, 257, 771, 1285, 3855, 4369, 13107, 21845
*/
void divisorOf(uint32_t n) {
if (!n)
return; // ritorna subito se n == 0
uint32_t i = 2;
uint32_t end = sqrt(n);
uint32_t nDivFound = 0;
Serial.println(1);
while (i <= end) {
if (!(n % i)) {
nDivFound++;
Serial.println(i);
}
i++;
}
if (nDivFound > 0) {
Serial.print(n);
Serial.print(" ha ");
Serial.print(nDivFound + 1);
Serial.println(" Divisori");
} else
if (nDivFound == 0 && n != 1) {
Serial.print(n);
Serial.println(" è numero primo");
}
//Serial.println(i);
}
bool isPrime(uint32_t n) {
if (n == 1) return false;
// Verifica divisibilità nel 2÷sqrt(n)
uint32_t end = sqrt(n);
for (int i = 2; i <= end; i++) {
// Se n è divisibile per i, non è un numero primo
if (n % i == 0) {
return false;
}
}
// Se non è stato trovato alcun divisore, n è numero primo
return true;
}
void allPrimeOf(uint32_t min, uint32_t max) {
/*if (min <= 3) min = 3;
else if (!(min % 2))
min += 1;*/
if ((min & 1) == 0)
min += 1;
for (uint64_t i = min; i <= max; i += 2) {
if (isPrime(i))
Serial.println((uint32_t)i);
}
}
void old_divisorOf(uint32_t n) {
if (!n)
return; // ritorna subito se n == 0
uint32_t i = 2;
uint32_t end = n;
bool first = false;
Serial.println(1);
while (i < end) {
if (!(n % i)) {
/*if (first == false) {
end = n / i;
first = true;
}*/
Serial.println(i);
}
i++;
}
}
void setup() {
Serial.begin(115200);
//printDeviceAddr(daddr);
//divisorOf(65535);
allPrimeOf(65535, 4294967295);
//old_divisorOf(12);
/*for (uint32_t n = 3; n < 65535; n+=2) {
if (isPrime(n))
Serial.println(n);
}*/
int8_t a = -16;
int16_t b = 3;
int16_t r = a % b;
//uint8_t r0 = (((a) mod (b)) + (b)) % (b);
Serial.print(a);
Serial.print(" % ");
Serial.print(b);
Serial.print(" = ");
Serial.println(r);
return;
delay(1000);
}
void loop() {
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
sr1:Q1
sr1:Q2
sr1:Q3
sr1:Q4
sr1:Q5
sr1:Q6
sr1:Q7
sr1:GND
sr1:Q7S
sr1:MR
sr1:SHCP
sr1:STCP
sr1:OE
sr1:DS
sr1:Q0
sr1:VCC
led1:A
led1:C
led2:A
led2:C
led3:A
led3:C
led4:A
led4:C
led5:A
led5:C
led6:A
led6:C
led7:A
led7:C
led8:A
led8:C
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
gnd1:GND
sr2:Q1
sr2:Q2
sr2:Q3
sr2:Q4
sr2:Q5
sr2:Q6
sr2:Q7
sr2:GND
sr2:Q7S
sr2:MR
sr2:SHCP
sr2:STCP
sr2:OE
sr2:DS
sr2:Q0
sr2:VCC
led9:A
led9:C
led10:A
led10:C
led11:A
led11:C
led12:A
led12:C
led13:A
led13:C
led14:A
led14:C
led15:A
led15:C
led16:A
led16:C