¿Por qué este bucle no actualiza correctamente este array?

Intento hacer un bucle que añada al array fibSeq = [0,1] la suma de los dos numeros anteriores .

Es decir el resultado con 6 iteraciones debería ser este: fibSeq = [0,1,1,2,3,5,8,13]

Sin embargo el mio no actualiza:

function fib(num){ 	var fibSeq = [0,1]; 	var elultimo = fibSeq.length -1 	var elanterior = elultimo - 1 	var suma = elultimo + elanterior 	 	for (var i = 0; i < num; i++){ 		fibSeq.push(suma) 			} 	return fibSeq }  fib(6)

Y da como resultado fibSeq = [0,1,1,1,1,1,1]

He probado a incluir las declaraciones dentro del bucle

function fib(num){ 	var fibSeq = [0,1]; 	var elultimo = fibSeq.length -1 	var elanterior = elultimo - 1 	var suma = elultimo + elanterior 	 	for (var i = 0; i < num; i++){ 		elultimo = fibSeq.length -1 		elanterior = elultimo - 1 		suma = elultimo + elanterior 		fibSeq.push(suma) 			} 	return fibSeq }  fib(6)

Pero entonces me da unos numeros raros, no los que quiero (los que quiero son los fibonacci) : [0, 1, 1, 3, 5, 7, 9, 11]

Agradecería una explicación de porqué el bucle no se actualiza en vez de una solución de como obtener los numeros fibonacci ya que ando haciendo esto para aprender JS e intento evitar soluciones completas porque si no no aprendo. Gracias.

Me pueden ayudar con este ejercicio en python

Buen dia el ejercicio es el siguiente:

. Realizar un programa que permita pedir un número N, introducir los N sueldos, y mostrar el sueldo máximo, mínimo y la media de los sueldos digitados. Se debe validar que los sueldos sean valores positivos.

He intentado de esta manera , pero no cuadra , haciendo una lista, pero se me dificulta sacar el promedio y el maximo y minimo juntos, solo puedo 1 , alguien puede ayduarme , se lo agradeceria.

   if __n`introducir el código aquí`ame__ == '__main__':                     print("Ingrese la cantidad de sueldos:")                     n = int(input())                     acum = 0                     list: []                     for i in range(1,n+1):                         print("El valor de los sueldos de cada persona")                         dato = float(input())                      acum = acum+dato               prom = acum/n                print ("#####################")                  print ("el sueldo mas bajo""es:",acum3,)               print ("#####################")               print ("El sueldo mas alto""es:",acum2,)               print ("#####################")                  print("El promedio de lo 
  • Elemento de lista

s sueldos de las ” ,n,”personas””son:”,prom,)

Me falta acabar de perfilar este programa

def AddDictionary(s):     i = 0     result = {}     for c in s:         result[c] = i         if result.has_key(c):             i += 1     return result  def theMostRepeated(s):     if len(s) == 0:         return "The list is empty"     else:          keys = AddDictionary(s).keys()          mx = keys[0]          for key in keys:              if AddDictionary(s)[key] > AddDictionary(s)[mx]: #Al comparar las keys no se comparan los numeros sino los valores a los que se refieren                 mx = key          return mx 

Este código lo que hace es contar las veces que sale un número en una lista. Si la lista está vacía pone el mensaje de “the list is empty” y lo que me falla es que no sé como aprovechando las funciones que he hecho puedo hacer que si dos números se repiten la misma cantidad de veces que devuelva el primero que salga en la lista. Un ejemplo de la función seria este: print theMostRepeated([1, 2, 2, 3, 3])

Cual seria la solución para este error de fetch_Object() en php

La cuestión es que cuando intento ejecutar el código, me lanza el siguiente error:

    Fatal error: Uncaught Error: Call to a member function fetch_object()      on      boolean in C:\xampp\htdocs\sistema\ajax\categoria.php:38 Stack trace: #0      {main} thrown in C:\xampp\htdocs\sistema\ajax\categoria.php on line      38 

Aqui el codigo correspondiente a categoria.php

    require_once "../modelos/Categoria.php";      $  categoria=new Categoria();      $  idcategoria=isset($  _POST["idcategoria"])     limpiarCadena($  _POST["idcategoria"]):"";     $  nombre=isset($  _POST["nombre"])?limpiarCadena($  _POST["nombre"]):"";     $  descripcion=isset($  _POST["descripcion"])?      limpiarCadena($  _POST["descripcion"]):"";      switch ($  _GET["op"]) {     case 'guardaryeditar':     if (empty($  idcategoria)) {         $  rspta=$  categoria->insertar($  nombre,$  descripcion);             echo $  rspta ? "Categoria registrada" : "Categoria no se pudo              registrar";     }else{         $  rspta=$  categoria->editar($  idcategoria, $  nombre, $  descripcion);             echo $  rspta ? "Categoria actualizada" : "Categoria no se pudo              actualizar";         }         break;     case 'desactivar':         $  rspta=$  categoria->desactivar($  idcategoria);             echo $  rspta ? "Categoria Desactivada" : "Categoria no se pudo              Desactivar";         break;     case 'activar':         $  rspta=$  categoria->activar($  idcategoria);             echo $  rspta ? "Categoria Activada" : "Categoria no se pudo              Activar";         break;     case 'mostrar':         $  rspta=$  categoria->mostrar($  idcategoria);         echo json_encode($  rspta);         break;      case 'listar':         $  rspta=$  categoria->listar();         //Vamos a declarar un Array         $  data= Array();          while ($  reg=$  rspta->fetch_object()) {             $  data[]=array(             "0"=>$  reg->idcategoria,             "1"=>$  reg->nombre,             "2"=>$  reg->descripcion,             "3"=>$  reg->condicion             );         }         $  results = array(         "sEcho"=>1,         "iTotalRecords"=>count($  data),         "iTotalDisplayRecords"=>count($  data),         "aaData"=>$  data         );         echo json_encode($  results);         break;      default:         # code...         break;      } 

Ya he buscado en todos lados una solución apropiada pero en ninguno tuve éxito, por lo que me gustaría la ayuda de alguien que sepa manejar bien los que seria PHP.

Saludos Cordiales……………………………………………………………………………………………………………………………………………………………………………………………………………

¿Cómo soluciono este error a la hora de instalar OnOff con npm y NodeJS para una RPI3?

Estoy tratando de instalar las herramientas de OnOff para poder manipular los pines GPIO de mi Raspberry PI 3 B+ y poder encender y apagar un led, el código correría con JavaScript, la configuración inicial se hace instalando Node.JS y Npm en la Raspberry y con ello se usa npm install onoff para descargar el módulo. Puedo analizar que tiene que ver con permisos, me gustaría saber qué puedo hacer para solucionarlo. Este es el reporte que sale al intentar la instalación:

root@PabloRPI:/home/pi/Documents/nodetest# npm install onoff  > epoll@2.0.9 install /home/pi/node_modules/epoll > node-gyp rebuild  gyp WARN EACCES user "root" does not have permission to access the dev dir "/root/.node-gyp/8.16.0" gyp WARN EACCES attempting to reinstall using temporary dev dir "/home/pi/node_modules/epoll/.node-gyp" gyp WARN install got an error, rolling back install gyp WARN install got an error, rolling back install gyp ERR! configure error gyp ERR! stack Error: EACCES: permission denied, mkdir '/home/pi/node_modules/epoll/.node-gyp' gyp ERR! System Linux 4.14.98-v7+ gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /home/pi/node_modules/epoll gyp ERR! node -v v8.16.0 gyp ERR! node-gyp -v v3.8.0 gyp ERR! not ok npm WARN enoent ENOENT: no such file or directory, open '/home/pi/package.json' npm WARN pi No description npm WARN pi No repository field. npm WARN pi No README data npm WARN pi No license field.  npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! epoll@2.0.9 install: `node-gyp rebuild` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the epoll@2.0.9 install script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.  npm ERR! A complete log of this run can be found in: npm ERR!     /root/.npm/_logs/2019-04-18T23_39_42_268Z-debug.log 

No puedo entender este algoritmo (8 reinas python)

El siguiente codigo lo obtuve de un libro:

queen = [0 for c in range(8)]        #Row o f queen i n column c rfree = [True for r in range(8)]     #Row rfree du = [True for i in range(15)]       #Diagonal i = c + 7 − r dd = [True for i in range(15)]       #Diagonal i = c + rfree  def solve(c):   global solutions  if c == 8:     solutions += 1      print(solutions, end = ": ")     for r in range(8):         print (queen[r] + 1 ,end = " " if r<7 else "\n") else:            for r in range(8):         if rfree[r] and dd[c + r] and du[ c+7-r]:             queen[c] = r             rfree[r] = dd[ c+r ] = du[ c+7-r ] = False             solve(c+1)             rfree[r] = dd[ c+r ] = du[ c+7-r ] = True  solutions = 0 solve(0) print() print(solutions, "solutions")    

No entiendo que es lo que esta sucediendo en la linea 14 del codigo y todo lo siguiente a esta linea. En el libro decia que dd es una diagonal desde A1 hasta H8 y du es una diagonal desde H1 hasta A8. No puedo entender lo que sucede en sentencias como du[ c+7-r] = False

¿como puedo hacer correr este dll?

Buenas tardes me pasaron un código que conecta una bascula con java por medio del puerto serial ya importe todas las librerías que el programa necesita en especifico la librería serialPort.jar con su libreria libSerialPort.dll Pero al seguir la secuencia del programa me marca un error de link Exception in thread “main” java.lang.UnsatisfiedLinkError: C:\Users\Desarrollo\Documents\NetBeansProjects\pesar\libSerialPort.dll: Can’t load IA 32-bit .dll on a AMD 64-bit platform les dejo el código aquí abajo consta de tres archivos los cuales son Configuracion

package Controlador;   public class Configuracion { private final String archivo = "Configuracion.txt";//Archivo de        donde se sacaran los datos de configuracion private String PuertoCOM; private int Delay; private boolean OcultarConsola; private String ultimoCaracter; private String PuertoSerial; private String url; private String caracterSolicitud; private String impresora; private boolean MandarCaracterPeticion;  public void CargarConfiguracion() {     PuertoCOM = this.obtenerValorParametro("Puerto");     if(PuertoCOM.equals("")){         System.out.println("Error al leer el valor Puerto, se asignarán valores predeterminados");         PuertoCOM = "COM1";     }      PuertoSerial = this.obtenerValorParametro("Serial");     if(PuertoSerial.equals("")){         System.out.println("Error al leer el valor Serial, se asignarán valores predeterminados");         PuertoSerial = "9600";     }      try{         Delay = Integer.parseInt(this.obtenerValorParametro("Delay"));                         }catch(NumberFormatException e){         System.out.println("Error al leer el valor Delay, se asignarán valores predeterminados");         Delay = 10;                 }              ultimoCaracter = this.obtenerValorParametro("UltimoCaracter");     if(ultimoCaracter.equals("")){         System.out.println("Error al leer el valor UltimoCaracter, se asignarán valores predeterminados");         ultimoCaracter = "R";     }      url = this.obtenerValorParametro("URL");     if(url.equals("")){         System.out.println("Error al leer el valor UltimoCaracter, se asignarán valores predeterminados");         url = "http://localhost/RegistroPesajeWS";     }      impresora = this.obtenerValorParametro("Impresora");     if(impresora.equals("")){         System.out.println("Error al leer el valor Impresora, se asignarán valores predeterminados");         impresora = "EPSON";     }       caracterSolicitud = this.obtenerValorParametro("CaracterPeticion");     if(caracterSolicitud.equals("")){         System.out.println("Error al leer el valor caracterSolicitud, se asignarán valores predeterminados");         caracterSolicitud = "P";     }       OcultarConsola = (this.obtenerValorParametro("OcultarConsola").equals("1"));        MandarCaracterPeticion = (this.obtenerValorParametro("MandarCaracterPeticion").equals("1")); }  private String obtenerValorParametro(String parametro){     String valor = "";     BufferedReader br = null;     try {         String sCurrentLine;         br = new BufferedReader(new FileReader(this.archivo));         while ((sCurrentLine = br.readLine()) != null) {                             if(sCurrentLine.contains(parametro + ":")){//Cuando se encuentra el parametro a buscar                 int indice = sCurrentLine.indexOf(parametro+":");//Se obtiene el indice donde empieza el texto del parametro                 int lengthParametro = parametro.length()+1;//Se obtiene la longitud en caracteres del parametro                                                         valor = sCurrentLine.substring(indice+lengthParametro);                 //System.out.println("El valor debería de ser: "+valor);                 break;             }         }     } catch (IOException e) {         e.printStackTrace();     } finally {         try {             if (br != null) {                 br.close();             }         } catch (IOException ex) {             ex.printStackTrace();         }     }     return valor; }  public String getPuertoCOM() {     return PuertoCOM; }  public int getDelay() {     return Delay; }  public boolean isOcultarConsola() {     return OcultarConsola; }  public String getPuertoSerial() {     return PuertoSerial; }       public String getUltimoCaracter() {     return ultimoCaracter; }  public void setUltimoCaracter(String ultimoCaracter) {     this.ultimoCaracter = ultimoCaracter; }  public String getUrl() {     return url; }  public void setUrl(String url) {     this.url = url; }  public String getCaracterSolicitud() {     return caracterSolicitud; }  public void setCaracterSolicitud(String caracterSolicitud) {     this.caracterSolicitud = caracterSolicitud; }          public String getImpresora() {     return impresora; }  public void setImpresora(String impresora) {     this.impresora = impresora; }     public boolean isMandarCaracterPeticion() {     return MandarCaracterPeticion; }  public void setMandarCaracterPeticion(boolean MandarCaracterPeticion) {     this.MandarCaracterPeticion = MandarCaracterPeticion; }         

}

pedir datos Datos

 private final Enviar_datos enviar; private Configuracion configuracion = new Configuracion(); private String puertoSerial = ""; private SerialPort puerto; private Parameters settings; private Com com1;  public Pedir_Datos_Bascula(Configuracion conf) {     this.configuracion = conf;     enviar = new Enviar_datos(this.configuracion); }  public String hacerPeticionPesaje() {     try {         puerto = new SerialPort();         List<String> listaPuertos;         String recibido = "";         String caracter = "";         puertoSerial = "";          listaPuertos = puerto.getFreeSerialPort();         puertoSerial = this.configuracion.getPuertoCOM();         for (String string : listaPuertos) {//Se recorren todos los puertos             puertoSerial = string;             if (string.equals(this.configuracion.getPuertoCOM())) {//Si se encuentra el puerto marcado en la configuracion, se trabaja con este puerto                                              break;             }         }         settings = new Parameters();         settings.setPort(puertoSerial);         settings.setBaudRate(configuracion.getPuertoSerial());//Se asigna el puerto serial que viene en la configuracion                                               com1 = new Com(settings);         if (configuracion.isMandarCaracterPeticion()) {             com1.sendSingleData(configuracion.getCaracterSolicitud());             com1.sendSingleData(Character.toString((char) 13));             com1.sendSingleData(Character.toString((char) 10));         }          int contador = 0;         recibido = "";         while (!caracter.equals(configuracion.getUltimoCaracter())) {              caracter = com1.receiveSingleString();             recibido += caracter;             contador++;             if (contador > 100) {                 return "";             }         }          if (!recibido.equals("")) {             //System.out.println(recibido);//cbc             String pesoNeto = recibido;             enviar.setPeso_neto(pesoNeto);             this.terminarLeerDatos();             return this.convertirPesaje(pesoNeto);             //enviar.converir_datos();         } else {             this.terminarLeerDatos();             return "";         }     } catch (Exception e) {         this.terminarLeerDatos();         System.out.println("Run: " + e);         return null;     } }  private String convertirPesaje(String peso_neto) {     String peso = "";     for (int x = 0; x < peso_neto.length(); x++) {         if (peso_neto.charAt(x) == '0') {             peso += "0";         } else if (peso_neto.charAt(x) == '1') {             peso += "1";         } else if (peso_neto.charAt(x) == '2') {             peso += "2";         } else if (peso_neto.charAt(x) == '3') {             peso += "3";         } else if (peso_neto.charAt(x) == '4') {             peso += "4";         } else if (peso_neto.charAt(x) == '5') {             peso += "5";         } else if (peso_neto.charAt(x) == '6') {             peso += "6";         } else if (peso_neto.charAt(x) == '7') {             peso += "7";         } else if (peso_neto.charAt(x) == '8') {             peso += "8";         } else if (peso_neto.charAt(x) == '9') {             peso += "9";         } else if (peso_neto.charAt(x) == '.') {             peso += ".";         } else {             //robot.keyPress(KeyEvent.VK_9);         }      }     return peso; }  public void terminarLeerDatos() {     try {         puerto.closePortC(puertoSerial);         com1.closePortC(puertoSerial);         //puerto.closePortC(puertoSerial);                 } catch (Exception e) {         System.err.println("Error terminarLeerDatos: " + e.toString());     } } 

}

y el archivo externo de configuración es archivo de blog de notas lo que trae lo pondre abajo

Puerto:COM4 Delay:10 OcultarConsola:1 Serial:9600 UltimoCaracter:k CaracterPeticion:P Impresora:EPSONL355 MandarCaracterPeticion:0

cuando empiezo a seguir los pasos me sale el error del principio mi pregunta es como puedo hacer que corra con ese mismo archivo? o tendria que utilizar otra libreria

“mmc.exe – Erro de aplicativo” Como resolver este erro?

Gostaria que alguém pudesse me ajudar neste problema: Eu tinha o Windows 8 e passei para o 10 a pouco tempo e o computador ficou lento. Agora apareceu este erro quando tento abrir o visualizador de eventos, o gerenciador de dispositivos, o gerenciamento de disco, o gerenciamento do computador e não reconhece o celular via usb.

Como resolver?

Um abraço a todos!

print do erro

¿Cómo puedo cambiar este código de forma procedural?

Hola tengo este código y me gustaría cambiarlo a MySqli y procedural

<?  include('config.php');//CONEXION A LA BD     $  fecha1=$  _POST['fecha1'];  $  fecha2=$  _POST['fecha2'];     if(isset($  _POST['generar_reporte']))  {                  // NOMBRE DEL ARCHIVO Y CHARSET                  header('Content-Type:text/csv; charset=latin1');                  header('Content-Disposition: attachment; filename="Reporte_Fechas_Ingreso.csv"');                     // SALIDA DEL ARCHIVO                  $  salida=fopen('php://output', 'w');                  // ENCABEZADOS                  fputcsv($  salida, array('Caso', 'Cliente' , 'Conductor', 'ITEM', 'fecha', 'Acarreo'));                  // QUERY PARA CREAR EL REPORTE                  $  reporteCsv=$  conexion->query("SELECT *  FROM acarga where fecha BETWEEN '$  fecha1' AND '$  fecha2' ");                 while($  filaR= $  reporteCsv->fetch_assoc())                                 fputcsv($  salida, array(                                 $  nombre=$  filaR['noap'],                                 $  item=$  filaR['cod_it'],                                 $  fecha=$  filaR['fecha'],                                 $  acarreo=$  filaR['acarreo']));  }  ?>