Pages: 1 [2]   Go Down
Author Topic: raggruppare/associare sempre lo stesso codice, ad una lettera  (Read 848 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
God Member
*****
Karma: 8
Posts: 691
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

allora ho quasi finito ....     smiley-confuse   il tutto occupa    25.416 bytes  per 6 cifre 7 segmenti adesso vorrei provare a smagrire con i cicli for ma purtroppo non so come adattarli  smiley-cry  al programma (ho tentato ma nulla)
esempio una sequenza del genere e possibile fare un ciclo for unico?  o piu cicli for, e come ?
Code:
C1= map(analogRead(A0), a, b, c, d);

//Serial.println ( C1, DEC );

if (C1>= 100000 && C1<= 200000) C1=C1-100000;
if (C1>= 200000 && C1<= 300000) C1=C1-200000;
if (C1>= 300000 && C1<= 400000) C1=C1-300000;
if (C1>= 400000 && C1<= 500000) C1=C1-400000;
if (C1>= 500000 && C1<= 600000) C1=C1-500000;
if (C1>= 600000 && C1<= 700000) C1=C1-600000;
if (C1>= 700000 && C1<= 800000) C1=C1-700000;
if (C1>= 800000 && C1<= 900000) C1=C1-800000;
if (C1>= 900000 && C1<= 999999) C1=C1-900000;

if (C1>= 10000 && C1<= 20000) C1=C1-10000;
if (C1>= 20000 && C1<= 30000) C1=C1-20000;
if (C1>= 30000 && C1<= 40000) C1=C1-30000;
if (C1>= 40000 && C1<= 50000) C1=C1-40000;
if (C1>= 50000 && C1<= 60000) C1=C1-50000;
if (C1>= 60000 && C1<= 70000) C1=C1-60000;
if (C1>= 70000 && C1<= 80000) C1=C1-70000;
if (C1>= 80000 && C1<= 90000) C1=C1-80000;
if (C1>= 90000 && C1<= 99999) C1=C1-90000;

if (C1>= 1000 && C1<= 2000) C1=C1-1000;
if (C1>= 2000 && C1<= 3000) C1=C1-2000;
if (C1>= 3000 && C1<= 4000) C1=C1-3000;
if (C1>= 4000 && C1<= 5000) C1=C1-4000;
if (C1>= 5000 && C1<= 6000) C1=C1-5000;
if (C1>= 6000 && C1<= 7000) C1=C1-6000;
if (C1>= 7000 && C1<= 8000) C1=C1-7000;
if (C1>= 8000 && C1<= 9000) C1=C1-8000;
if (C1>= 9000 && C1<= 9999) C1=C1-9000;



if (C1>= 100 && C1<= 200) C1=C1-100;
if (C1>= 200 && C1<= 300) C1=C1-200;
if (C1>= 300 && C1<= 400) C1=C1-300;
if (C1>= 400 && C1<= 500) C1=C1-400;
if (C1>= 500 && C1<= 600) C1=C1-500;
if (C1>= 600 && C1<= 700) C1=C1-600;
if (C1>= 700 && C1<= 800) C1=C1-700;
if (C1>= 800 && C1<= 900) C1=C1-800;
if (C1>= 900 && C1<= 999) C1=C1-900;


//Serial.print ( " C1   ");
//Serial.println (C1, DEC );
//Serial.println ( "   "); 

if (C1>= 10 && C1<= 20) C1=C1-10;
if (C1>= 20 && C1<= 30) C1=C1-20;
if (C1>= 30 && C1<= 40) C1=C1-30;
if (C1>= 40 && C1<= 50) C1=C1-40;
if (C1>= 50 && C1<= 60) C1=C1-50;
if (C1>= 60 && C1<= 70) C1=C1-60;
if (C1>= 70 && C1<= 80) C1=C1-70;
if (C1>= 80 && C1<= 90) C1=C1-80;
if (C1>= 90 && C1<= 99) C1=C1-90;
Logged


Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 335
Posts: 23123
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ti avevo già messo un codice di poche righe nel mio replay #10 che scompone un numero in un array di char da spedire poi al tuo display.
Logged


Offline Offline
God Member
*****
Karma: 8
Posts: 691
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ti avevo già messo un codice di poche righe nel mio replay #10 che scompone un numero in un array di char da spedire poi al tuo display.


si quel codice  funziona bene al posto di quelle 10 righe, ma per il resto non riesco ad adattarlo, al resto del codice  sicuramente è colpa della mia non troppa capacità  di comprensione del ciclo for
provero a studiare per vedere se ci arrivo


Logged


Le cose si possono considerare facili in due casi: quando le si conosce bene o quando non le si conosce affatto...

Pages: 1 [2]   Go Up
Jump to: