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 - nolasco281

#181
.NET (C#, VB.NET, ASP) / Re: ayuda con textbox
21 Abril 2014, 13:31 PM
Mil gracias por contestar como siempre la los que se toman la molestia de contestar y alos que pasan por si pueden ayudar.

Bueno he estado investigando y viendo algunos videos

este es el codigo que tengo y lo estoy haciendo en una clase

Código (cpp) [Seleccionar]
Public Class MarcaDeAgua
    Iterator TextBox

    Dim MarcaDeAguatxt As String = "Por defecto"
    Dim MarcaDeAguaclr As Color = Color.LightGray

    Public Property MarcaDeAguaText() As String
        Get
            Return MarcaDeAguatxt
        End Get
        Set(value As String)
            MarcaDeAguatxt = value
        End Set
    End Property

    Public Property MarcaDeAguaColor() As Color
        Get
            Return MarcaDeAguaclr
        End Get
        Set(value As Color)
            MarcaDeAguaclr = value
        End Set
    End Property

    Private Sub MarcaDeAgua_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        If Me.Text = MarcaDeAguatxt Then
            Me.SelectionStar = 0
        End If
    End Sub

    Private Sub MarcaDeAguaTextBox_KeyDown(ByVal sender As Object, ByVal e As System.EventArgs)
        If e.KeyCode = 8 Then
            If Me.Text. = MarcaDeAguatxt then
                If Me.SelectionStar = Me.Text.Length Then
                    Me.SelectionStar = 0
                End If
            End If
    End Sub

    Private Sub MarcaDeAguaTextBox_KeyUp(ByVal sender As Object, ByVal e As System.EventArgs)
        If Me.Text.Contains(MarcaDeAguatxt) Then
            Me.Text = Remplace(Me.Text, MarcaDeAguatxt, "")
            Me.SelectionStar() = Me.MarcaDeAguaText.Length
        End If
    End Sub

    Private Sub MarcaDeAguaTextBox_ParentChange(ByVal sender As Object, ByVal e As System.EventArgs)
        Me.SelectionStar() = 0
    End Sub

    Private Sub MarcaDeAguaTextBox_TextChange(ByVal sender As Object, ByVal e As System.EventArgs)
        If Me.Text = MarcaDeAguatxt Then
            Me.Font = New Font(Me.Font, FontStyle.Italic)
            Me.ForeColor = MarcaDeAguaclr
        Else
            Me.Font = New Font((Me.Font, FontStyle.Style)
            Me.ForeColor = Color.Black
        End If
        If Me.Text = "" Then
            Me.Text = MarcaDeAguatxt
        End If
    End Sub
End Class


La idea es de aca pero no me sale.
https://www.youtube.com/watch?v=2sziyeOS8Ko

Aca una imagen de lo que tengo



disculpen si se ve mal estoy a la carrera

saludos y muchas gracias de nuevo
#182
Hola como están.

Mi siguiente duda estoy tratado de hacer algo en un textbox que tenga un texto predeterminado pero que este se vea claro, de la siguiente forma.



Como ven en user name y cuando se de click se quite ese texto y pueda ingresar datos.
Estaba leyendo MSDN pero son demasiadas funciones las que tiene me llevara un tiempo leerlas todas.

Espero puedan ayudarme gracias y saludos

PD: estoy trabajando en VB
#183
Hola

primero que nada Dev c++ no esta desactualizado o por lo menenos, eso creo yo, ya que uso la version Dev-C++ 5.6.2 que salio hace poco  en marzo de este a~no y se esta muy actualizanda.

Si te interesa aca el link
http://orwelldevcpp.blogspot.com/

ahora bien te hablare en cuanto a mi esperiencia con codeblocks  para crear un proyecto se me hace un poco mas lento y tardado vetanjas es que te autocompleta parte del codigo, tambien trae para crear varios tipos de proyectos que en Dev c++ los tendrias que agregar.

Netbeans de oracle-> muy lento a menos que tengas una buena pc muy pesado, solo en descargar 250 mb con todo y 250 para JDK te lo recomindo esta bien. pero no es de mi gusto. consumo de memoria brutal.

Para mi el ganador es Dev-C++, y ojo que no digo que es mejor que los otros, solo que nunca me ha dado problemas, con otros proyectos que no son mios al momento de recompilar, creaciones de aplicaciones lo hace sin mayor problema como lo haria cualquier otro IDE de 500 mb o 1,2GB

Saludos.
#184
Aca la prueba



Es raro que no te funcione. y como dige antes solo faltan algunos espacios.

Saludos.
#185
Hola.

No esta de mas aclarar que usas -lpthread, por que estas usando una libreria externa al igual que si usas conio se agrega -lconio segun la libreria que se vaya a utilizar

saludos.
#186
Hola a mi me funcion con las correcciones que hizo rir3760 me andubieron perfecto no tube problema con 15 palabras que ingrese, sola faltaba unos saltos de linea, saludos.
#187
Cita de: ivancea96 en 16 Abril 2014, 14:07 PM
El rompecabezas trata de ir deslizando pieza a pieza, teniendo un hueco vacío ('0').
Asi es como comenta ivancea96

Hola aca esta el codigo para que me aconsegen

saludos y gracias por responder

Código (cpp) [Seleccionar]
#include <iostream>
#include <stdio.h>
#include <map>
#include <string>
#include<queue>
#include <cstdlib>

using namespace std;

class Nodo
{
public:
int profundidad, est;
string str;

Nodo (string str1, int profundidad1, int est1)
{
str = str1; //Estado
profundidad = profundidad1; //Profundidad
est = est1; // valor de evaluacion
}
};

class Profundidad
{
public:
int profundida, est;
string prev;

Profundidad(string prev1, int profundida1, int est1)
{
prev = prev1;  //Estado anterior
profundida = profundida1; //Profundidad
est = est1; //Valor de evaluacion
}
};

bool operator< (Nodo n1, Nodo n2)
{
bool sw = true;
if(n1.est == n2.est)
sw = (n1.str < n2.str) ? true:false;

else
sw = (n1.est > n2.est) ? true:false;

return sw;
}

//Evaluacion del nodo
//profundidad
//str: estada
//Meta: estado objetivo

int estimacion(int profundida, string str, string meta)
{
int i1, i2, i3, i4, k1, k2, pi = profundida, ws;
char cg[3][3], cn[3][3];

for (i1 =0; i1<9; i1++)
{
k1 = i1/3;
k2 = i1 - 3 * k1;
cg[k1][k2] = meta.at(i1) - '0';
}
for(i1 =0; i1 < 9; i1++)
{
k1 = i1 /3;
k2 = i1 -3 * k1;
cn[k1][k2] = str.at(i1) - '0';
}

for(i1 =0; i1 < 3; i1++)
{
for(i2 =0; i2 < 3; i2++)
{
ws = 1;
for(i3 =0; i3 < 3 && ws > 0; i3++)
{
for(i4 =0; i4 < 3 && ws >0; i4++)
{
if(cg[i3][i4] == cn[i1][i2])
{
ws = 0;
pi += (abs(i3-i1) + abs(i4-i2));
}
}
}
}
}

if (cn[1][1] != '0')
pi++;

if (cn[0][1] != (cn[0][0]+1)%9)
pi +=2;

if (cn[0][2] != (cn[0][1]+1)%9)
pi +=2;

if (cn[1][2] != (cn[0][2]+1)%9)
pi +=2;

if (cn[2][2] != (cn[1][2]+1)%9)
pi +=2;

if (cn[2][1] != (cn[2][2]+1)%9)
pi +=2;

if (cn[2][0] != (cn[2][1]+1)%9)
pi +=2;

if (cn[1][0] != (cn[2][0]+1)%9)
pi +=2;

if (cn[0][0] != (cn[1][0]+1)%9)
pi +=2;

return pi;
}

int mover (string str, string *res)
{
int k, n = 0;
string str1;

k = str.find("0");
switch(k)
{
case 0:
str1 = str.replace(k, 1, str, k+3, 1);
str1 = str1.replace(k+3, 1, 1, '0');
res[n]  = str1;
n++;
str1 = str.replace(k, 1, str, k+1, 1);
str1 = str1.replace(k+1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 1:
str1 = str.replace(k, 1, str, k+3, 1);
str1 = str1.replace(k+3, 1, 1, '0');
res[n]  = str1;
n++;
str1 = str.replace(k, 1, str, k-1, 1);
str1 = str1.replace(k-1, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+1, 1);
str1 = str1.replace(k+1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 2:
str1 = str.replace(k, 1, str, k+3, 1);
str1 = str1.replace(k+3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k-1, 1);
str1 = str1.replace(k-1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 3:
str1 = str.replace(k, 1, str, k-3, 1);
str1 = str1.replace(k-3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+3, 1);
str1 = str1.replace(k+3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+1, 1);
str1 = str1.replace(k+1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 4:
str1 = str.replace(k, 1, str, k-3, 1);
str1 = str1.replace(k-3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+3, 1);
str1 = str1.replace(k+3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k-1, 1);
str1 = str1.replace(k-1, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+1, 1);
str1 = str1.replace(k+1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 5:
str1 = str.replace(k, 1, str, k-3, 1);
str1 = str1.replace(k-3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+3, 1);
str1 = str1.replace(k+3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k-1, 1);
str1 = str1.replace(k-1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 6:
str1 = str.replace(k, 1, str, k-3, 1);
str1 = str1.replace(k-3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+1, 1);
str1 = str1.replace(k+1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 7:
str1 = str.replace(k, 1, str, k-3, 1);
str1 = str1.replace(k-3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k-1, 1);
str1 = str1.replace(k-1, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k+1, 1);
str1 = str1.replace(k+1, 1, 1, '0');
res[n] = str1;
n++;
break;

case 8:
str1 = str.replace(k, 1, str, k-3, 1);
str1 = str1.replace(k-3, 1, 1, '0');
res[n] = str1;
n++;
str1 = str.replace(k, 1, str, k-1, 1);
str1 = str1.replace(k-1, 1, 1, '0');
res[n] = str1;
n++;
break;
}

return n;
}

//Inicial
// Meta

void intel(string inicio, string meta)
{
int i1, n, nodo1 = 1, nodo2 =0, profundida =1, ct =1, est;
string str, res[4];
priority_queue<Nodo> p;
map<string, Profundidad> m;
map<string, Profundidad>::iterator it;
bool sw;

est = estimacion(profundida, inicio, meta);
m.insert(pair<string, Profundidad>(inicio, Profundidad("", profundida, est)));
p.push(Nodo(inicio, profundida, est));
while (!p.empty())
{
str = p.top().str;
profundida = p.top().profundidad;
nodo2++;

//Objetivos
if(str == meta)
{
ct = profundida;
break;
}
//Si no hay una meta
//A~nadidi a la cola, tienen el mismo status y mover el marco
else
{
p.pop();
n = mover(str, res);

for (i1 =0; i1 < n; i1++)
{
sw = true;
est = estimacion(profundida+1, res[i1], meta);
it = m.find(res[i1]);

if(it != m.end())
{
if(est < ((*it).second).est)
m.erase(it);

else
sw = false;
}

if (sw)
{
m.insert(pair<string, Profundidad>(res[i1], Profundidad(str, profundida+1, est)));
p.push(Nodo(res[i1], profundida+1, est));
nodo1++;
}
}
}
}

//Salida
printf("Implementacion %d %d, Distancia minima %d\n", nodo1, nodo2, ct);

while(str.length()>0)
{
printf("\n      %c %c %c\n", str.at(0), str.at(1), str.at(2));
printf("      %c %c %c\n", str.at(3), str.at(4), str.at(5));
printf("      %c %c %c\n", str.at(6), str.at(7), str.at(8));
it = m.find(str);
str = ((*it).second).prev;
}
}

int main(int argc, char** argv)
{
string inicio = "835416270";

printf ("Prueba n1\n");
string  meta = "123804765";
intel(meta, inicio);

printf("Ejemplo 2\n");
meta = "216408753";
intel(inicio, meta);
return 0;
}
#188
Hola si tienes mucha razon lo que muestro de codigo no es nada para saber si mi algoritmo es eficiente no, el problema es que ya preguntaron aca por este ejercicio como una tarea y si subo el codigo le estare haciendo la tarea.

Pero entiendo bien lo que tratas de decir. en cuanto a que hace el programa es buscar la mejor solucion o la ruta mas corta para solucionar el problema, y en cuantos pasos se resuelve un juego Puzzle 8.

como puedes notar en esta parte de codigo le indico el problema desordenado que seria 835416270
y como lo quiero ordenado seria 123804765 para hacer esto lo realiza en 15 pasos.

tomando el 0 como espacio vacio y donde se van moviendo los demas numero para quedar ordenados.

Código (cpp) [Seleccionar]
string inicio = "835416270";
printf ("Prueba n1\n");
string  meta = "123804765";


muchas gracias por responder saludos : ).
#189
Hola.

alquien comento aca este problema y me propuse a resolverlo

ahora bien mi pregunta es:

Mi algoritmo sera eficiente;
estos son los parametros que le mando a la funcion pero me resuelve el problema en 15  pasos,
ahora lo probe el mismo problema en una pagina de internet que resuelve este tipo de problemas y lo resuelve en 14 pasos asi que no se que pensar.

que no esta siendo eficiente del todo no?

Código (cpp) [Seleccionar]
int main(int argc, char** argv)
{
string inicio = "835416270";

printf ("Prueba n1\n");
string  meta = "123804765";
intel(meta, inicio);

printf("Ejemplo 2\n");
meta = "216408753";
intel(meta, inicio);
return 0;
}


aca el ejemplo



aca mi salida que indica que se realizo en 15 pasos.



una pregunta mas en que tengo que basarme para indicar si mi algoritmo es bueno, en el tiempo de ejecucion que llevo en resolver el problema, o en el algoritmo que estoy implementando?

saludos muchas gracias.
#190
Hola la pagina que te recomienda x64Core son muy buenas el libro que recomienda rir3760 no he tenido el gusto de verlo.

de mi parte te puedo recomendar este que es el que estoy siquiendo ahora, esta en ingles, es
Mastering C por KR-Venugopal y es bastate bueno.

incluso en este foro estan conseptos basicos.
http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html

Saludos.