ya lo pude solucionar...
solo era cambiar el retorno de carro por null.
Código [Seleccionar]
while(!caracter.equals(null))
solo era cambiar el retorno de carro por null.
![;D ;D](https://forum.elhacker.net/Smileys/navidad/grin.gif)
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menúwhile(!caracter.equals(null))
SerialPort puerto = new SerialPort();
List<String> listaPuertos;
Com com1;
listaPuertos = puerto.getFreeSerialPort();
String recibido = "";
String caracter = "";
for (String string : listaPuertos) {
System.out.println(string);
}
Parameters settings = new Parameters();
settings.setPort("COM14");
settings.setBaudRate(Baud._9600);
com1 = new Com(settings);
while(!caracter.equals("\n")){
caracter =com1.receiveSingleString();
recibido += caracter;
System.out.println(recibido);
}
}
void setup ()
{
Serial.begin (9600);
}
void loop ()
{
for (int i=0;i<=10;i++)
{
Serial.println(i);
delay(1000);
}
}
vive
usar a,b;
asignar b valor 5;
meta a; // Leer a
sumar b,a;
saque b; // imprime b
muere
public class Nodo {
int dato;
Nodo siguiente;
public Nodo(){
this.dato=0;
siguiente=null;
}
public Nodo(int n){
this.dato=n;
siguiente=null;
}
}
import javax.swing.JOptionPane;
public class Lista {
public Nodo cabeza;
public Lista(){
this.cabeza=null;
}
public void insertarFinal(int info){
Nodo indice;
indice=cabeza;
if(indice==null){
cabeza= new Nodo(info);
} else{
while(indice.siguiente!=null){
indice=indice.siguiente;
}
indice.siguiente=new Nodo(info);
}
}
public void insertarInicio(int info){ //porque recibe el valor que va dentro del nodo
Nodo a= new Nodo(info);
a.siguiente=cabeza;
cabeza=a;
a=null;
}
public void eliminarCabeza(){
Nodo aux;
aux=cabeza;
cabeza=cabeza.siguiente;
aux.siguiente=null;
}
public void Mostrar(){
Nodo indice;
indice=cabeza;
while(indice!=null){
System.out.print("\n"+indice.dato);
indice=indice.siguiente;
}
}
}
import javax.swing.*;
public class Principal {
public static void main(String[] args) {
int k, contk = 0, n, soldvivo;
Lista miLista = new Lista();
Nodo ind1;
Nodo ind2;
Nodo cabeza;
n = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el número de soldados"));
k = Integer.parseInt(JOptionPane.showInputDialog("Ingrese el número de la muerte"));
for (int i = 0; i < n; i++) {
miLista.insertarFinal(i + 1);
}
soldvivo = n;
cabeza = miLista.cabeza;
ind1 = cabeza;
ind2 = cabeza;
if (k == 1)
{
while (soldvivo > 1)
{
miLista.eliminarCabeza();
soldvivo--;
}
}
else {
while (soldvivo > 1)
{
contk++;
if (contk == k)
{
if (ind1 == cabeza)
{
cabeza = cabeza.siguiente;
ind1.siguiente = null;
ind1 = cabeza;
ind2 = cabeza;
contk = 1;
}
else
{
while (ind2.siguiente != ind1)
{
ind2 = ind2.siguiente;
}
if (ind1.siguiente == null)
{
ind2.siguiente = null;
ind1 = ind2;
contk = 0;
}
else
{
ind2.siguiente = ind1.siguiente;
ind1.siguiente = null;
ind1 = ind2;
contk = 0;
}
}
soldvivo--;
}
if (soldvivo != 1)
{
ind1 = ind1.siguiente;
if (ind1.siguiente == null)
{
contk++;
if (contk == k)
{
while (ind2.siguiente != ind1)
{
ind2 = ind2.siguiente;
}
ind2.siguiente = null;
soldvivo--;
contk = 0;
}
ind1 = cabeza;
ind2 = cabeza;
}
}
}
}
System.out.print(cabeza.dato);
}
}