Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Ogramar

Páginas: 1 ... 57 58 59 60 61 [62] 63 64 65 66 67 ... 100
1221
Hola simplemente recorrer la colección con un bucle y mostrar los atributos. Si sigues el curso que te he indicado serás capaz de resolverlo sin problemas. En este ejercicio del curso puedes ver un ejemplo de cómo hacerlo - > https://www.aprenderaprogramar.com/foros/index.php?topic=2514.0

Salu2

1222
Hola, manejar las celdas como variables independientes parece poco adecuado (complicaría bastante la resolución y generaría muchísimo más código del necesario). La representación del sudoku debes hacerla basándote en matrices (arrays de dos dimensiones o arreglos de dos dimensiones).

Esto lo tienes explicado en el curso http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=28&Itemid=59

La resolución de un sudoku automatizadamente en programación es relativamente complejo. Depende de lo que quieras hacer, la comprobación de no coincidencia en filas y columnas de un sudoku facilitado sí es simple, pero rellenar un sudoku semivacío es bastante más complejo.

Salu2

1223
Hola Ramón, este tipo de manejo

Código: [Seleccionar]
        for (int i = 0; i < longitud; i++) {
            System.out.println("Letra " + j + " : " + entradaTeclado.substring(0 + i, i + 1));
            j++;
        }

En principio es poco recomendable. Un bucle tiene una variable contadora, en este caso la variable i, normalmente no es necesario llevar otro contador como j cuando ya tenemos i.

Salu2

1224
Hola Ignacio! Para pegar código hazlo como se explica en https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0 de esa forma se facilita el formato y que pueda copiarse y pegarse para compilarlo.

Para aclarar conceptos te recomiendo seguir este curso: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188

La clase que  tú has llamado Menu parece más lógico llamarla CacheMensajes o ListaMensajes

La comprobación de que no hayas excedido el límite de mensajes admisible en la caché debes hacerla aquí:

public void agregarMensajes (Mensaje m) {
   if (lista.size()>3) {
      System.out.println ("Hay más mensajes de los permitidos y se va a borrar uno de ellos para poder añadir otro");
      // Aquí el código
      int indiceAEliminar = obtenerIndiceMensajeMenorPrioridad();
      }   

lista.add (m);
}


El método int obtenerIndiceMensajeMenorPrioridad() será un método que te devuelva el índice del mensaje a eliminar. Para saber el mensaje a eliminar puedes recorrer todos los mensajes eligiendo como mensaje a eliminar el primero, y seguidamente si el siguiente mensaje tiene menor prioridad, elegirlo como mensaje a eliminar (de esta forma completas el recorrido).

Para poder elegir el más antiguo es recomendable que cambies esta definición:

   private String fecha;
   private String hora;

En lugar de usar String usa clases del api de java para manejo de fechas y horas. O si prefieres simplificar usa:

int dia, mes, anno;
int hora, minuto;

La cuestión es que necesitas poder ordenar o comparar fechas y horas y para hacerlo un String no es cómodo.

Salu2

1225
Hola javalopez, en lugar de edad=99; mejor inicializar a cero, edad=0;

Salu2

1226
Hola, a mí me da un error de compilación (el programa no empieza a ejecutarse) y pienso que está relacionado con cómo intentas pasar el struct como parámetro de función.

Aquí pego 3 ejemplos de cómo se puede pasar un struct como parámetro de función en C.

Ejemplo 1. Paso por valor:

Código: [Seleccionar]
#include <stdio.h>
#include <string.h>

struct student
{
            int id;
            char name[20];
            float percentage;
};

void func(struct student record);

int main()
{
            struct student record;

            record.id=1;
            strcpy(record.name, "Raju");
            record.percentage = 86.5;

            func(record);
            return 0;
}

void func(struct student record)
{
            printf(" Id is: %d \n", record.id);
            printf(" Name is: %s \n", record.name);
            printf(" Percentage is: %f \n", record.percentage);
}

Salida esperada:

Id is: 1
Name is: Raju
Percentage is: 86.500000


Ejemplo 2. Paso de un puntero a la estructura.

Código: [Seleccionar]
#include <stdio.h>
#include <string.h>

struct student
{
           int id;
           char name[20];
           float percentage;
};

void func(struct student *record);

int main()
{
          struct student record;

          record.id=1;
          strcpy(record.name, "Raju");
          record.percentage = 86.5;

          func(&record);
          return 0;
}

void func(struct student *record)
{
          printf(" Id is: %d \n", record->id);
          printf(" Name is: %s \n", record->name);
          printf(" Percentage is: %f \n", record->percentage);
}

Salida esperada:

Id is: 1
Name is: Raju
Percentage is: 86.500000


Ejemplo 3. Paso de estructura como variable global.

Código: [Seleccionar]
#include <stdio.h>
#include <string.h>

struct student
{
            int id;
            char name[20];
            float percentage;
};
struct student record; // Global declaration of structure

void structure_demo();

int main()
{
            record.id=1;
            strcpy(record.name, "Raju");
            record.percentage = 86.5;

            structure_demo();
            return 0;
}

void structure_demo()
{
            printf(" Id is: %d \n", record.id);
            printf(" Name is: %s \n", record.name);
            printf(" Percentage is: %f \n", record.percentage);
}

Salida esperada:

Id is: 1
Name is: Raju
Percentage is: 86.500000

Salu2

1227
Ejemplo 1: creamos una estructura student que nos permite almacenar los datos de un estudiante. y en el main creamos una variable record de tipo student.

Código: [Seleccionar]
#include <stdio.h>
#include <string.h>

struct student
{
           int id;
           char name[20];
           float percentage;
};

int main()
{
           struct student record = {0}; //Initializing to null

           record.id=1;
           strcpy(record.name, "Raju");
           record.percentage = 86.5;

           printf(" Id is: %d \n", record.id);
           printf(" Name is: %s \n", record.name);
           printf(" Percentage is: %f \n", record.percentage);
           return 0;
}


Ejemplo 2: creamos el tipo de dato y al mismo tiempo declaramos

Código: [Seleccionar]
#include <stdio.h>
#include <string.h>

struct student
{
            int id;
            char name[20];
            float percentage;
} record;

int main()
{

            record.id=1;
            strcpy(record.name, "Raju");
            record.percentage = 86.5;

            printf(" Id is: %d \n", record.id);
            printf(" Name is: %s \n", record.name);
            printf(" Percentage is: %f \n", record.percentage);
            return 0;
}





Ejemplo 3: creamos el tipo de dato y un array de elementos

Código: [Seleccionar]
#include <stdio.h>
#include <string.h>

struct student
{
     int id;
     char name[30];
     float percentage;
};

int main()
{
     int i;
     struct student record[2];

     // 1st student's record
     record[0].id=1;
     strcpy(record[0].name, "Raju");
     record[0].percentage = 86.5;

     // 2nd student's record         
     record[1].id=2;
     strcpy(record[1].name, "Surendren");
     record[1].percentage = 90.5;

     // 3rd student's record
     record[2].id=3;
     strcpy(record[2].name, "Thiyagu");
     record[2].percentage = 81.5;

     for(i=0; i<3; i++)
     {
         printf("     Records of STUDENT : %d \n", i+1);
         printf(" Id is: %d \n", record[i].id);
         printf(" Name is: %s \n", record[i].name);
         printf(" Percentage is: %f\n\n",record[i].percentage);
     }
     return 0;
}

1228
Hola, ya he visto tu post, la verdad es que no pensaba que lo fueras a terminar! (para quien venga siguiendo el hilo y se pierda lo puede encontrar en https://www.aprenderaprogramar.com/foros/index.php?topic=2622.0) De momento no puedo decir nada sino que parece un gran trabajo pero precisamente por ser grande hay que estudiárselo con tiempo  ;D

1230
Hola, ¿puedes pegar cómo ha quedado el código? Así puede servir de ayuda para quien tenga un problema similar.

Salu2

1231
Hola, lo que te indica el mensaje es que ActionBarActivity es una clase deprecated (obsoleta, de uso no recomendado, que se mantiene solo para dar soporte a apps antiguas pero que ya no se recomienda que se use).

En lugar de esta clase debes usar AppCompatActivity según indica la propia documentación de Android << This class is deprecated. Use AppCompatActivity instead. >>

Referencia: https://developer.android.com/reference/android/support/v7/app/ActionBarActivity.html

Salu2

1232
En el apartado b) ocurre exactamente lo mismo, te animo a que lo cambies y crees las dos formas que he explicado para el apartado a).

Salu2!

1233
Hola Javano, como es tu primer post pedirte que leas este hilo donde se explica cómo pegar código en los foros: https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0

El apartado a) está bien pero debes tener en cuenta una cosa:

$idioma1='ingles'; define una variable de tipo texto cuyo contenido es "ingles"


$numeroAlumnos[0]['idioma1'] = "1"; define una variable indexada, un elemento de un array, donde el segundo índice es un texto y el contenido de la variable es un texto que contiene 1.

El texto que sirve como índice para el array es idioma1, no es ingles. Si quisieras definir que en el array el texto es ingles deberías escribirlo así: $numeroAlumnos[0][$idioma1] = "1";

Dado que el array va a contener números no es lógico declararlos como texto (entre comillas). Por ello sería mejor:

$numeroAlumnos[0][$idioma1] = 1; sin las comillas, de esta forma se indica que es un valor numérico.

Con estos cambios el ejercicio quedaría así:

Código: [Seleccionar]
<meta charset="utf-8"/>
<?php
echo "<h2> Con una sintaxis ejemplo de uso de arrays asociativos donde el primer índice del array (niveles) es un número y el segundo un texto indicativo del idioma. Se debe mostrar por pantalla los alumnos que existen en cada nivel e idioma. Ejemplo: numeroAlumnos[0]['frances']. </h2><br>";

$idioma1='ingles';
$idioma2='frances';
$idioma3='aleman';
$idioma4='ruso';


$numeroAlumnos[0][$idioma1] = "1";
$numeroAlumnos[0][$idioma2] = "14";
$numeroAlumnos[0][$idioma3] = "8";
$numeroAlumnos[0][$idioma4] = "3";
$numeroAlumnos[1][$idioma1] = "6";
$numeroAlumnos[1][$idioma2] = "19";
$numeroAlumnos[1][$idioma3] = "7";
$numeroAlumnos[1][$idioma4] = "2";
$numeroAlumnos[2][$idioma1] = "3";
$numeroAlumnos[2][$idioma2] = "13";
$numeroAlumnos[2][$idioma3] = "4";
$numeroAlumnos[2][$idioma4] = "1";


echo 
"en basico de <strong> $idioma1 </strong> hay <strong>" $numeroAlumnos[0][$idioma1]." </strong> estudiantes"."<BR/>";
echo 
"en basico de <strong> $idioma2 </strong> hay <strong>" $numeroAlumnos[0][$idioma2]." </strong> estudiantes"."<BR/>";
echo 
"en basico de <strong> $idioma3 </strong> hay <strong>" $numeroAlumnos[0][$idioma3]." </strong> estudiantes"."<BR/>";
echo 
"en basico de <strong> $idioma4 </strong> hay <strong>" $numeroAlumnos[0][$idioma4]." </strong> estudiantes"."<BR/><BR/>";

echo 
"en medio de <strong> $idioma1 </strong> hay <strong>" $numeroAlumnos[1][$idioma1]." </strong> estudiantes"."<BR/>";
echo 
"en medio de <strong> $idioma2 </strong> hay <strong>" $numeroAlumnos[1][$idioma2]." </strong> estudiantes"."<BR/>";
echo 
"en medio de <strong> $idioma3 </strong> hay <strong>" $numeroAlumnos[1][$idioma3]." </strong> estudiantes"."<BR/>";
echo 
"en medio de <strong> $idioma4 </strong> hay <strong>" $numeroAlumnos[1][$idioma4]." </strong> estudiantes"."<BR/><BR/>";

echo 
"en Perfeccionamiento de <strong> $idioma1 </strong> hay <strong>" $numeroAlumnos[2][$idioma1]." </strong> estudiantes"."<BR/>";
echo 
"en Perfeccionamiento de <strong> $idioma2 </strong> hay <strong>" $numeroAlumnos[2][$idioma2]." </strong> estudiantes"."<BR/>";
echo 
"en Perfeccionamiento de <strong> $idioma3 </strong> hay <strong>" $numeroAlumnos[2][$idioma3]." </strong> estudiantes"."<BR/>";
echo 
"en Perfeccionamiento de <strong> $idioma4 </strong> hay <strong>" $numeroAlumnos[2][$idioma4]." </strong> estudiantes"."<BR/>";

?>

<br />

Aunque realmente no era necesario usar una variable dentro de los índices del array, se podía hacer simplemente introduciendo el texto directamente:

Código: [Seleccionar]
<meta charset="utf-8"/>
<?php
echo "<h2> Con una sintaxis ejemplo de uso de arrays asociativos donde el primer índice del array (niveles) es un número y el segundo un texto indicativo del idioma. Se debe mostrar por pantalla los alumnos que existen en cada nivel e idioma. Ejemplo: numeroAlumnos[0]['frances']. </h2><br>";

$numeroAlumnos[0]['ingles'] = "1";
$numeroAlumnos[0]['frances'] = "14";
$numeroAlumnos[0]['aleman'] = "8";
$numeroAlumnos[0]['ruso'] = "3";
$numeroAlumnos[1]['ingles'] = "6";
$numeroAlumnos[1]['frances'] = "19";
$numeroAlumnos[1]['aleman'] = "7";
$numeroAlumnos[1]['ruso'] = "2";
$numeroAlumnos[2]['ingles'] = "3";
$numeroAlumnos[2]['frances'] = "13";
$numeroAlumnos[2]['aleman'] = "4";
$numeroAlumnos[2]['ruso'] = "1";


echo 
"En basico de <strong> ingles </strong> hay <strong>" $numeroAlumnos[0]['ingles']." </strong> estudiantes"."<BR/>";
echo 
"en basico de <strong> frances </strong> hay <strong>" $numeroAlumnos[0]['frances']." </strong> estudiantes"."<BR/>";
echo 
"en basico de <strong> aleman </strong> hay <strong>" $numeroAlumnos[0]['aleman']." </strong> estudiantes"."<BR/>";
echo 
"en basico de <strong> ruso </strong> hay <strong>" $numeroAlumnos[0]['ruso']." </strong> estudiantes"."<BR/><BR/>";

echo 
"en medio de <strong> ingles </strong> hay <strong>" $numeroAlumnos[1]['ingles']." </strong> estudiantes"."<BR/>";
echo 
"en medio de <strong> frances </strong> hay <strong>" $numeroAlumnos[1]['frances']." </strong> estudiantes"."<BR/>";
echo 
"en medio de <strong> aleman </strong> hay <strong>" $numeroAlumnos[1]['aleman']." </strong> estudiantes"."<BR/>";
echo 
"en medio de <strong> ruso </strong> hay <strong>" $numeroAlumnos[1]['ruso']." </strong> estudiantes"."<BR/><BR/>";

echo 
"en Perfeccionamiento de <strong> ingles </strong> hay <strong>" $numeroAlumnos[2]['ingles']." </strong> estudiantes"."<BR/>";
echo 
"en Perfeccionamiento de <strong> frances </strong> hay <strong>" $numeroAlumnos[2]['frances']." </strong> estudiantes"."<BR/>";
echo 
"en Perfeccionamiento de <strong> aleman </strong> hay <strong>" $numeroAlumnos[2]['aleman']." </strong> estudiantes"."<BR/>";
echo 
"en Perfeccionamiento de <strong> ruso </strong> hay <strong>" $numeroAlumnos[2]['ruso']." </strong> estudiantes"."<BR/>";

?>

<br />

Salu2

1234
Hola Lorenzo, yo creo que podrías hacerlo con una clase Datem cuyo único atributo sea un Calendar.

Como tú dices la clase Date está deprecated y lo que debería usarse es el nuevo api de Java 8. El problema está en el enunciado de la práctica, si lo ves verás que ponen ejemplos orientativos sobre el código donde usan Date. Ese creo que es el motivo por el que se ha usado Date, si los ejemplos hubieran sido con Calendar se hubiera usado Calendar.

El problema está en el enunciado, que en este aspecto no está bien, pero claro, ¿qué le vas a hacer cuando es algo que te viene de arriba? Supón que tienes un jefe que se empeña en que uses Date...  :-\


PARA QUIENES QUIERAN ACCEDER AL CÓDIGO CREADO POR LORENZO31 AQUÍ ESTÁ EL LINK:


https://www.aprenderaprogramar.com/foros/index.php?topic=2622.0


1236
Hola con div sí creo que se utilizan todos los índices del array, si pruebo esto:

function cambiarAspecto(elemento) {

var elementosObtenidos = document.getElementsByTagName(elemento);
alert ('Tenemos una cantidad de elementos: '+elementosObtenidos.length);

Me sale que hay 4 elementos

¿Por qué dices que solo se usan 2 índices con div?

1237
Hola el ejercicio está bien resuelto. Dentro de la funcion ejercicio1() has hecho una validación de datos que está bien planteada, aunque el ejercicio no lo pedía. Por ejemplo con if (isNaN (precio)) se comprueba si el precio no es un valor numérico y si no lo es se avisa de que no es numérico y no pasa a hacer el cálculo.

Recomendaciones:

en la función obtenerImporteConImpuestos usas la variable impuesto sin haberla declarado. Se recomienda siempre declarar antes (aunque no es obligatorio) en este caso podrías usar var impuesto = 0; al principio de la función.

También has usado impuesto = Number(1.21);

Aquí puedes usar Number pero en realidad no es necesario. Indicar Number es adecuado cuando existe o puede existir duda. Por ejemplo cuando usas un Prompt el tipo devuelto es cadena de texto, en ese caso puede haber duda de si es numérico y por eso debes usar Number pero si escribes impuesto = 1.21; no hay duda y no sería necesario.

Debes mejorar la forma de nombrar variables var resultado = [undefined, 121, 110, 105]; ¿Por qué lo llamas resultado si no es un resultado? El nombre de una variable debe describir qué información porta esa variable, aquí podrías haberlo llamado factorImpuesto ó factorMultiplicador ó similar.

Aquí ¿no has cambiado el orden?

   alert ('Para un importe sin impuestos de ' + precio2 + ' y tipo de producto 1 el importe es ' + precio2*resultado[2]/100 + ', si el producto es tipo 2 el importe es ' +  precio2*resultado[1]/100 + ' y si el producto es tipo 3 el importe es ' + precio2*resultado[3]/100 + '.');

No sería producto 1 el importe es ' + precio2*resultado[1]/100 en vez de producto 1 el importe es ' + precio2*resultado[2]/100

El resultado con muchos decimales que comentas se debe a la forma de representación de los números que utilizan los computadores. Es decir, si introducimos como precio 22 y tipo de producto 2, deberíamos obtener 22*1,1 = 24,2

Sin embargo obtengo 24.200000000000003

Esto se debe a que el computador no trabaja con 22 y 1,1 sino con representaciones de estos números.

Esto se trata más adelante en el curso y también se trata cómo se puede solucionar, cuando avances en el curso lo verás.

Salu2

1238
Hola, el ejercicio cumple perfectamente con lo que se pedía  :D. Salu2

1239
Hola, en los foros seguimos el principio "ayudar en todo lo posible a partir de problemas concretos y código". Por tanto intenta desarrollar la funcionalidad que quieres introducir, explícala bien, pega el código, adjunta el proyecto o facilita un enlace para la descarga del proyecto y a partir de ahí intentaremos ayudar.

Salu2

1240
Hola soleares! Cumples perfectamente con lo que pedía el ejercicio!

Salu2

Páginas: 1 ... 57 58 59 60 61 [62] 63 64 65 66 67 ... 100

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".