Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void setup() {
- Serial.begin(9600);
- }
- void loop() {
- int opcion;
- Serial.println("Escoja el número de la operación que quiera hacer:");
- Serial.println("1) Binario a Decimal.");
- Serial.println("2) Decimal a Binario.");
- Serial.println("3) Decimal a Octal.");
- while(!Serial.available());
- if (Serial.available() > 0) {
- // read the incoming byte:
- opcion = Serial.parseInt();
- Serial.println(opcion);
- // say what you got:
- if(opcion==1){
- Serial.println("Introduzca el numero binario a convertir: ");
- while(!Serial.available());
- String binario = Serial.readString();
- if(binario.length()<=8 && binario[0]=='1'){
- int decimal = 1;
- for(int i=1;i<binario.length();i++){
- if(binario[i]=='0')decimal=decimal*2;
- else decimal=(decimal*2)+1;
- }
- Serial.println(decimal);
- seguir();
- }
- else Serial.println("Numero fuera de rango");
- }
- if(opcion==2){
- int decimal;
- Serial.println("Introduzca el numero decimal a convertir (entre 0 y 255): ");
- while(!Serial.available());
- decimal = Serial.parseInt();
- if(decimal >=0 && decimal <= 255){
- Serial.println(decimal,BIN);
- seguir();
- }
- else Serial.println("Numero fuera de rango");
- }
- if(opcion==3){
- int decimal;
- Serial.println("Introduzca el numero decimal a convertir (entre 0 y 255): ");
- while(!Serial.available());
- decimal = Serial.parseInt();
- if(decimal >=0 && decimal <= 255){
- Serial.println(decimal,OCT);
- seguir();
- }
- else Serial.println("Numero fuera de rango");
- }
- }
- }
- void seguir(){
- Serial.println("Desea continuar con el programa? (S/N)");
- String s;
- while(!Serial.available());
- s=Serial.readString();
- if(s=="S" || s=="s") return;
- else if(s=="N" || s=="n"){
- Serial.println("Puede cerrar esta ventana.");
- Serial.end();
- delay(1000000);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement