Beispiel #1
0
void altaProd(tProducto productos[MAX], int *id){
  //Recibe por referencia un vector de estructuras tProducto y la cantidad
  //de productos almacenados en el vector también por referencia.
  //Solicita la carga a traves de teclado para c/u de los campos y los
  //guarda en la posicion del vector de estructura, hasta llegar al maximo
  //o hasta cargar un producto con nombre vacio.
  int vacio = 0;

  for( ; *id < MAX && vacio != 1; *id += 1){
    printf("Ingrese Nombre del Producto id%2d: ", *id);
    fgets(productos[*id].nombre, 79, stdin);
    if(productos[*id].nombre[0] == '\n'){
      vacio = 1;
      system("cls");
      break;
    }
    printf("Ingrese Codigo de Barra: ");
    fgets(productos[*id].codBar, 21, stdin);
    printf("Ingrese Precio: ");
    scanf("%f", &productos[*id].precio);
    limpiarBuffer();
    printf("Ingrese la cantidad a stock: ");
    scanf("%d", &productos[*id].stock);
    limpiarBuffer();
  }
}
Beispiel #2
0
void consola_planificador(){

		char comandoSeleccionado[COMANDO_SIZE];
		bool finalizar = true;
		int32_t operacionAsociada;

		while(finalizar){
		printf(ANSI_COLOR_BOLDCYAN "INGRESE EL COMANDO QUE DESEE EJECUTAR: " ANSI_COLOR_RESET);
		scanf("%[^\n]s", comandoSeleccionado);
		printf("\n");

		operacionAsociada = analizar_operacion_asociada(comandoSeleccionado);

		switch (operacionAsociada) {

		case CORRER_PATH: {
			correrPath(comandoSeleccionado);
			break;  //fin correr path
		}
		case FINALIZAR_PID: {
			finalizarPID(comandoSeleccionado);
			break;  //fin finalizar PID
		}
		case PS: {
			comandoPS();
			break; //fin comando ps
		}
		case CPU: {
			usoDeLasCpus();
			break; //fin uso de las Cpus
		}
		case CERRAR_CONSOLA:{
			finalizar=false;
			break;
		}
		case HELP: {
			mostrarComandos();
			break;
		}
		case CLEAR: {
			system("clear");
			break;
		}
		default: {
			printf(ANSI_COLOR_BOLDRED "EL COMANDO INGRESADO NO CORRESPONDE CON NINGUNA DE LAS OPERACIONES"ANSI_COLOR_RESET "\n\n");
			printf(ANSI_COLOR_BOLDYELLOW "INGRESE help PARA VER COMANDOS DISPONIBLES." ANSI_COLOR_RESET);
			break;
		}
		}

		limpiarBuffer();
		printf(ENTER);

		}

		printf(ANSI_COLOR_BOLDCYAN "    ╔═══════════════════════════════╗ \n    ║ CONSOLA PLANIFICADOR ENDS     ║ \n    ╚═══════════════════════════════╝" ANSI_COLOR_RESET ENTER);

}
Beispiel #3
0
void Gimbal::beep(int miliseconds)
{
	SBGC_cmd_trigger_t t = { 0, 0 };

	t.pin = SBGC_PIN_BUZZER;
	t.state = 1;

	SBGC_cmd_trigger_send(t, sbgc_parser);
	Sleep(SBGC_CMD_DELAY);
	limpiarBuffer();
	
	Sleep(miliseconds); // Dejamos que quede activado los milisegundos 

	t.state = 0; // Volvemos a desactivar el PIN y mandamos la informacion
	SBGC_cmd_trigger_send(t, sbgc_parser);
	Sleep(SBGC_CMD_DELAY);
	limpiarBuffer();
}
Beispiel #4
0
/**
* realiza la operacion de coseno hiperbolico
* @param void
* @return void
* [12]
*/
void coship(){
    printf(_("\nHyperbolic cosine \n"));
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nResult: "));
    printf("%lf\n\n",cosh(x));
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #5
0
/**
* realiza la operacion de arcotangente
* @param void
* @return void
* [10]
*/
void arcoTan (){
    printf(_("\n Arc tangent \n"));
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nResult in radians: "));
    printf("%lf\n\n",atan(x));
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #6
0
/**
* realiza la operacion de arcocoseno
* @param void
* @return void
* [9]
*/
void arcoCoseno(){
   printf(_("\nArc Cosine \n"));
   printf(_("\nNumber: "));
   scanf("%s",str);
   x = atof(str);
   printf(_("\nResult in radians: "));
   printf("%lf\n\n",acos(x));
   //limpiamos buffer
   limpiarBuffer ();
}
Beispiel #7
0
/**
* realiza la operacion de arcoseno
* @param void
* @return void
* [8]
*/
void arcoseno(){
    printf(_("\nArc sine \n"));
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nResult: "));
    printf("%lf\n\n",asin(x));
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #8
0
/**
* realiza la operacion de tangente hiperbolica
* @param void
* @return void
* [13]
*/
void tangenteHiper (){
  printf(_("\nHyperbolic tangent \n"));
  printf(_("\nNumber: "));
  scanf("%s",str);
  x = atof(str);
  printf(_("\nResult: "));
  printf("%lf\n\n", tanh(x));
  //limpiamos buffer
  limpiarBuffer ();
}
Beispiel #9
0
/**
* realiza la operacion exponencial
* @param void
* @return void
* [15]
*/
void expon (){
    printf(_("\nExponential \n"));
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nResult: "));
    printf("%lf\n\n", exp(x));
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #10
0
/**
* realiza la operacion de redondeo a piso
* @param void
* @return void
* [23]
*/
void funcionPiso (){
  printf(_("\nFloor function \n"));
  printf(_("\n1st Number: "));
  scanf("%s",str);
  x = atof(str);
  printf(_("\nResult: "));
  printf("%lf\n\n", floor(x));
  //limpiamos buffer
  limpiarBuffer ();
}
Beispiel #11
0
/**
* realiza la operacion de raiz cuadrada
* @param void
* @return void
* [18]
*/
void raizCuadrada (){
  printf(_("\nSquare root \n"));
  printf(_("\nNumber: "));
  scanf("%s",str);
  x = atof(str);
  printf(_("\nResult: "));
  printf("%lf\n\n", sqrt(x));
  //limpiamos buffer
  limpiarBuffer ();
}
Beispiel #12
0
/**
* realiza la operacion de redondeo a techo
* @param void
* @return void
* [22]
*/
void funcionTecho(){
    printf("\nCeil function\n");
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nResult: "));
    printf("%lf\n\n", ceil(x));
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #13
0
/**
* realiza la operacion de valor absoluto
* @param void
* @return void
* [20]
*/
void valorAbsoluto (){
  printf(_("\nAbsolute value \n"));
  printf(_("\nNumber: "));
  scanf("%s",str);
  x = atof(str);
  printf(_("\nResult: "));
  printf("%lf\n\n", fabs(x));
  //limpiamos buffer
  limpiarBuffer ();
}
Beispiel #14
0
/**
* realiza la operacion de logaritmo natural
* @param void
* @return void
* [16]
*/
void logaritmoNatural (){
  printf(_("\nNatural logarithm \n"));
  printf(_("\nNumber: "));
  scanf("%s",str);
  x = atof(str);
  printf(_("\nResult: "));
  printf("%lf\n\n", log(x));
  //limpiamos buffer
  limpiarBuffer ();
}
int solicitarRespuesta(void){
  int respuesta = 0;
  do{
    puts("Desea cargar otro registro(?)\n[1 : SI | 0 : NO]");
    scanf("%d", &respuesta);
    limpiarBuffer();
  }while(respuesta != 1 && respuesta != 0);

  return respuesta;
}
Beispiel #16
0
int menu(int *opcion){
  puts("Bienvenido al Super Mercado Chino:");
  puts("==================================");
  puts("Que funcion desea realizar?");
  puts("1.Alta de Producto");
  puts("2.Baja de Producto");
  puts("3.Mostrar Productos");
  puts("0.Salir");
  scanf("%d", opcion);
  limpiarBuffer();
  return *opcion;
}
Beispiel #17
0
/**
* realiza la operacion de...
* @param void
* @return void
* [21]
*/
void fmodd(){
    printf("\nModule of two numbers \n");
    printf("\n1st Number: ");
    scanf("%s",str);
    x = atof(str);
    printf("\n2nd Number: ");
    scanf("%s",str);
    y = atof(str);
    printf("\nIt module %lf between %lf is:", x, y);
    printf("%lf\n\n",fmod(x,y));
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #18
0
/**
* realiza la operacion de resta
* @param void
* @return void
* [2]
*/
void resta (){
    printf(_("\nSubtraction \n"));
    printf(_("\n1st Number: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\n2nd Number: "));
    scanf("%s",str);
    y = atof(str);
    printf(_("\nResult: "));
    printf("%f\n\n",x-y);
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #19
0
/**
* realiza la operacion de multiplicacion
* @param void
* @return void
* [3]
*/
void multiplicacion (){
    printf(_("\nMultiplication \n"));
    printf(_("\n1st Number: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\n2nd Number: "));
    scanf("%s",str);
    y = atof(str);
    printf(_("\nResult: "));
    printf("%f\n\n", x*y);
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #20
0
/**
* realiza la operacion de arcotangente Dos
* @param void
* @return void
* [14]
*/
void atanDos (){
  printf(_("\nArc Tangent Two (atan2) \n"));
  printf(_("\n1st Number: "));
  scanf("%s",str);
  x = atof(str);
  printf(_("\n2nd Number: "));
  scanf("%s",str);
  y = atof(str);
  printf(_("\nResult: "));
  printf("%lf\n\n", atan2(x, y));
  //limpiamos buffer
  limpiarBuffer ();
}
Beispiel #21
0
/**
* realiza la operacion de potenciacion
* @param void
* @return void
* [19]
*/
void potencia(){
    printf(_("\nPower \n"));
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nPower: "));
    scanf("%s",str);
    y = atof(str);
    printf(_("\nResult: "));
    printf("%lf\n\n",pow(x,y));
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #22
0
/**
* realiza la operacion de suma
* @param void
* @return void
* [1]
*/
void suma (){
    printf(_("\nAddition \n"));
    printf(_("\n1st Number: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\n2nd Number: "));
    scanf("%s",str);
    y = atof(str);
    printf(_("\nResult: "));
    printf("%f\n\n",x+y);
    //limpiamos buffer
    limpiarBuffer ();
}
Beispiel #23
0
/**
* realiza la operacion de logaritmo base 10
* @param void
* @return void
* [17]
*/
void decLog (){
    printf(_("\nDecimal logarithm \n"));
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nExponential: "));
    scanf("%s",str);
    y = atof(str);
    printf(_("\nResult: "));
    printf("%lf\n\n", ldexp(x,y));
    //limpiamos buffer
    limpiarBuffer ();

}
Beispiel #24
0
/**
* realiza la operacion de...
* @param void
* @return void
* [25]
*/
void ldexpe(){
    int b;
    printf(_("\nldexp \n"));
    printf(_("\nNumber: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\nExponent: "));
    scanf("%s",str);
    b = atoi(str);
    printf(_("\nResult: "));
    printf("%lf\n\n",ldexp(x,b));
    //limpiamos buffer
    limpiarBuffer ();
}
void cargarRegistro(tMedicamento *medicamento){
  int largo = 0;
  puts("Ingrese nº de lote:");
  fgets(medicamento->lote, 7, stdin);
  eliminarSalto(medicamento->lote);

  puts("Codigo de barras:");
  fgets(medicamento->codBar, 21, stdin);
  eliminarSalto(medicamento->codBar);

  puts("Nombre del medicamento:");
  fgets(medicamento->nombre, 40, stdin);
  eliminarSalto(medicamento->nombre);

  puts("Costo:");
  scanf("%f", &medicamento->costo);
  limpiarBuffer();
  puts("Stock:");
  scanf("%d", &medicamento->stock);
  limpiarBuffer();
  puts("Fecha de vencimiento: Mes/anio");
  scanf("%d %d", &medicamento->fechVen.mes, &medicamento->fechVen.anio);
}
Beispiel #26
0
/**
* realiza la operacion de...
* @param void
* @return void
* [26]
*/
void moduloF(){
    double a;
    printf("\nmodf\n");
    printf(_("\nNumber: "));
    scanf("%s",str);
    a = atof(str);
    y = modf( a, &x);
    printf(_("\nResult "));
    printf(_("\nInteger part: "));
    printf("%lf",x);
    printf(_("\nDecimal part: "));
    printf("%lf\n\n",y);
    limpiarBuffer ();
}
Beispiel #27
0
/**
* realiza la operacion de division
* @param void
* @return void
* [4]
*/
void division(){
    printf(_("\n Division \n"));
    printf(_("\nDivided: "));
    printf(_("\n1st Number: "));
    scanf("%s",str);
    x = atof(str);
    printf(_("\n2nd Number: "));
    scanf("%s",str);
    y = atof(str);
    printf(_("\nResult: "));
    if ( y != 0) {
        printf("%f\n\n", x/y);
    } else {
        printf(_("\nError: division by zero is not defined\n"));
    }
    limpiarBuffer ();
}
Beispiel #28
0
bool Gimbal::movimientoVelocidad(int yaw, int pich)
{
	//Modo de control, por velocidad, los datos iran en tanto por uno siendo 1 completamente pulsada la palanca y 0 nada.
	c.mode = SBGC_CONTROL_MODE_SPEED;

	//COMANDO ORIGINAL c.speedROLL= (50 * mando.LeftStick_X()) * SBGC_SPEED_SCALE; //eje x

	//Obtener los valores para las direcciones

	//eje x
	if (posicion.yaw >= 90 && yaw >= 0)
	c.speedYAW = 0 * SBGC_SPEED_SCALE;
	else if (posicion.yaw >= 90 && yaw < 0)
	c.speedYAW = (velYaw * yaw)	* SBGC_SPEED_SCALE;
	else if (posicion.yaw <= -90 && yaw <= 0)
	c.speedYAW = 0 * SBGC_SPEED_SCALE;
	else if (posicion.yaw <= -90 && yaw > 0)
	c.speedYAW = velYaw * yaw * SBGC_SPEED_SCALE;
	else c.speedYAW = yaw * velYaw * SBGC_SPEED_SCALE;

	//eje y
	if (posicion.pitch >= 45 && pich >= 0)
		c.speedPITCH = 0 * SBGC_SPEED_SCALE;
	else if (posicion.pitch >= 45 && pich < 0)
		c.speedPITCH = (velPich * pich)	* SBGC_SPEED_SCALE;
	else if (posicion.pitch <= -45 && pich <= 0)
		c.speedPITCH = 0 * SBGC_SPEED_SCALE;
	else if (posicion.pitch <= -45 && pich > 0)
		c.speedPITCH = (velPich * pich)	* SBGC_SPEED_SCALE;
	else c.speedPITCH = pich * velPich * SBGC_SPEED_SCALE;

	//eje z
	c.speedROLL = 0 * SBGC_SPEED_SCALE;

	gimbalResponse = SBGC_cmd_control_send(c, sbgc_parser);
	Sleep(SBGC_CMD_DELAY);

	limpiarBuffer();
	//actualizarPosicion();

	//TODO
	return gimbalResponse;
}
Beispiel #29
0
int scanner () {
  FILE *fp;
  fp = fopen("archivo.micro","r");
  while (!feof(fp)) {
    char letra = getc(fp);
    if (esOperadorAditivo(letra)) {
      char cadena[0] = "";
      cadena[0] = letra;
      agregar(&lista, token(letra), cadena, linea);
    }
    else if (letra == ':') {
      char prox = getc(fp);
      if (prox == '=' && !feof(fp)) {
        agregar(&lista, ASIGNACION, ":=", linea);
      } else if (feof(fp)) {
        break;
      } else {
        ungetc(prox, fp);
      }
    }
    else if(esCaracterDePuntuacion(letra)) {
      char cadena[0] = "";
      cadena[0] = letra;
      agregar(&lista, token(letra), cadena, linea);
    }
    else {
      while (!feof(fp) && !esEspacio(letra)) {
        buffer[i] = letra;
        i++;
        letra = getc(fp);
        if (esCaracterDePuntuacion(letra) || esOperadorAditivo(letra) || esEspacio(letra)) {
          ungetc(letra, fp);
          break;
        }
      }
      if (esPalabraReservada()) {
        agregar(&lista, tokenCadena(buffer), buffer, linea);
        char prox = getc(fp);
        if (prox != '(') {
          linea++; 
        } else {
          ungetc(prox, fp);
        }
      } else if (esConstanteNumerica(buffer)) {
        agregar(&lista, CONSTANTE, buffer, linea);
        agregarSimbolo(tabla, CONSTANTE, buffer);
      } else if (!feof(fp) && buffer[0] != '\0') {
        if (esIdentificador()) {
          agregar(&lista, ID, buffer, linea);
          agregarSimbolo(tabla, ID, buffer);
        } else {
          agregar(&lista, ERRORLEXICO, buffer, linea);
          printf("Error lexico \"%s\" en linea %d\n", buffer, linea);
          exit(1);
        }
      }
      limpiarBuffer();
    }
  }
  agregar(&lista, FDT, "\0", linea);

  fclose(fp);
  return 0; 
}