Menú

Mostrar Mensajes

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ú

Mensajes - Blaster

#51
Programación C/C++ / Re: ayuda programa c++
29 Julio 2014, 00:44 AM
La función según el enunciado debería quedar mas o menos asi:

Código (cpp) [Seleccionar]
void ventastotales(int ventas[][9], int pedidos, int &ham_masvendida, int &suc_masventas)
{
    int maxvendidas = 0;

    for (int i = 0; i < 7; i++)
    {
        for (int j = 0; j < 9; j++)
        {
            if (ventas[i][j] > maxvendidas)
            {
                maxvendidas = ventas[i][j];
                ham_masvendida = i;
                suc_masventas = j;
            }
        }
    }
}


En la función que posteaste veo mucha inconsistencia
#52
Cita de: kutcher en 28 Julio 2014, 17:51 PM
De ser así, porque al asignar la cadena s a una variable estática los caracteres posteriores al carácter nulo son asignados de igual manera a tal variable:

Como ya te han indicado el puntero s al encontrarse el primer carácter delimitador ya apunta al siguiente carácter a partir del cual realizas la correspondiente asignación hasta el siguiente carácter nulo.
#53
Cita de: CalgaryCorpus en 27 Julio 2014, 21:04 PM
tal vez max() deberia tomar la rama derecha, no la izquierda.

Para el caso de buscar el valor mayor seria lo correcto ya que los nodos de la derecha tienen un valor mayor o igual a la raíz

Saludos
#54
Cita de: leosansan en 26 Julio 2014, 19:11 PM
Sorry, Blaster no modifique bien. La salida es la correcta.

Tranquilo leosansan no pasa nada  ;) ya me lo suponía, pero de igual manera me complique demasiado para hacer algo tan simple.

Saludos
#55
Cita de: leosansan en 26 Julio 2014, 17:34 PM
Salida a tu código:
....................

Es imposible que obtengas esa salida con el código que postee

Cita de: leosansan en 26 Julio 2014, 17:34 PM
Y de paso rectifico el mío:

Con la modificación que le hiciste al actual obvio obtendrás la salida esperada, antes lo dibujaba de esta forma:

Salida anterior:

********
 *******
********
 *******
********
 *******
********
 *******
 
#56
Con una pequeña modificación lo dibujaríamos tal como muestra el ejem:

Código (cpp) [Seleccionar]
void imprime()
{
    for ( int i = 0, linea = 8; i < linea ; i++ )
    {
         for ( int j = 0, linea = 8; j < linea ; j++ )
             ( i % 2 != 0 && j == 0 ) ? ++linea, cout << ' ' : cout << '*' ;
         cout << endl ;
     }
}

Saludos
#57
No puedes calcular la potencia de dos infinitamente, tiene que haber un tope:

Código (cpp) [Seleccionar]
int potencia= 1;
while(potencia < tope)
{
    cout << potencia << endl;
    potencia *= 2;
}


Saludos
#58
La condición del segundo while debe quedar así:

Código (cpp) [Seleccionar]
while (dibujaLinea < 9) // Aqui el <

Y el tercero así:

Código (cpp) [Seleccionar]
while (dibujaLinea < 9) // Aqui el 9

Saludos
#59
No comprendo la lógica de tu código pero para convertir un número binario a su equivalente en base 10, el cual se encuentra almacenado en un entero seria:

Código (cpp) [Seleccionar]
void Binario::confirmarNumero(int numero)
{
    int numeroSacado, escala = 1;
    int decimal = 0;

    while (numero > 0)
    {
        numeroSacado = numero % 10;

        decimal += escala * numeroSacado;
        escala *= 2;

        numero = numero / 10;
    }
    cout << "El equivalente decimal es: " << decimal << endl;
}


Saludos
#60
Cita de: kutcher en 25 Julio 2014, 00:39 AM
¿nosé si es seguro esto? 

Es un metodo matemático muy preciso ten por seguro que obtendrás el resultado esperado.

Cita de: engel lex en 25 Julio 2014, 01:00 AM
Aunque yo preferiría el metodo de leosansan ya aunque es mas largo en códigos es menos exigente en procesasor

Lo dudo aunque así fuera la diferencia seria mínima