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

#11
 :)
Gracias. El_nuevo_HH, Littlehorse.
#12
Bueno, por ejemplo, tenemos la clase números  :P en donde solo queremos que se ingresen los números del 1-9 y no el 0.
Código (cpp) [Seleccionar]

class numeros
{
private:
int numero;
public:
numeros(int numeros);
};


Ahora, es responsabilidad de la clase(el constructor que es el que inicializara la variable según el parámetro) verificar que no exista 0, o es responsabilidad del programador que utiliza la clase verificar si existe un 0 y luego si no existe pasarle como parámetro la variable.
#13
string sTexto = textBox1.Text;
#14
ASM / Re: System("pause"); de C en ASM[DUDA]
12 Junio 2009, 03:38 AM
 :D Muchas Gracas a todos los que respondieron  :-*
#15
ASM / System("pause"); de C en ASM[DUDA]
11 Junio 2009, 06:01 AM
Main:
        ;Mostrar mensaje 'Presione una tecla para continuar . . . '
        ORG 100H
        MOV AH, 09H
        MOV EDX, MesG
        INT 21H
        ;Leer caracter
        MOV AH, 08H
        INT 21H
        INT 20H
Datos:
        MesG DB "Presione una tecla para continuar . . . ", 24H


Tengo las siguientes dudas en el code:
1.-¿Que es lo que significa ORG?
2.-¿Porque donde declaro el identificador MesG tengo que poner 24H? (si no me tira unos simbolos raros)
3.-¿Porque el FASM me compila a .COM y no a .EXE?
4.-¿Haci es como se hace?
#16
Sacar el Factorial:


using System;

class Programa
{
    public static void Main()
    {
        int iNumero;
        Console.WriteLine("Ingrese un numero");
        iNumero = int.Parse(Console.ReadLine());
        for (int iCount = iNumero - 1 ; iCount > 0 ; iCount--)
        {
            iNumero = iNumero * iCount;
        }
        Console.WriteLine("Factorial: " + iNumero);
        if(IsPrime(iNumero))
        {
            Console.WriteLine("Es Primo");
        }
        Console.ReadKey(true);
    }
   
// Funcion IsPrime sacada de http://carlossharp.blogspot.com/2009/01/determinar-si-un-nmero-es-primo-c-vb.html

    static public bool IsPrime(int Number)
    {
        bool _divisible = false;
        if (Number < 2) return false;
        for (int i = 2; i <= Number - 1; i++)
        {
            if ((Number % i == 0)) _divisible = true;
        }
        return (!_divisible);
    }
}
//************************************************************************************

Para saber si es primo no se me ocurre nada haci que google un poquito xD
Este codigo saca el factorial de un numero y determina si el numero obtenido es primo.

salu2, SLUGER
#17
ASM / Re: Duda Fasm
31 Mayo 2009, 04:33 AM
Cita de: YST en 31 Mayo 2009, 03:42 AM
No es extraño , salta por el PE independiente de que este hecho en FASM.

prueba poniendo :

section '.reloc' fixups data discardable

al final del archivo
Me sigue saltando Avira  :-\
#18
Cita de: Jorgitoh en 31 Mayo 2009, 03:57 AM
Ahora que lo veo de vuelta, con ayuda del comentario de arriba veo que falta lo fundamental del switch. Fijate que estas pidiendo que ingrese una categoria, pero luego esa categoria nunca la levantas. Ademas no se entiende muy bien el significado del proc frente a la categoria, ya que si levantas la categoria con el ReadLine para que vas a hacer un switch con el proc si podes hacerlo directamente con la categoria.

Fijate de agregar el ReadLine que te falta para luego realizar el switch. El error de arriba tambien es valido.

Saludos.
Tienes razon, ademas el codigo esta totalmente lleno de cosas inesezarias, por ejemplo los else's de esta parte:

if (categoria == 1)
                        {
                            sb = 100;
                        }
                        else
                        {
                        }
                        break;
                    case "b":
                        if (categoria == 2)
                        {
                            sb = 200;
                        }
                        else
                        {
                        }

El bucle debe ser haci, declarando la variable dentro del parentecis y aumentando con " ++ ":

                for (int cont = 1; cont <= n; cont++)


Los Console.WriteLine para que los pones? si ni muestra ni pide datos.
Console.WriteLine("El salario :");
                sal = (sb / 30) * nt;
                Console.WriteLine("El fondo de pensiones:");
                fp = sal * 0.03;
                Console.WriteLine("La eps: ");
                eps = sal * 0.05;
                Console.WriteLine("El subsidio de transporte:");

                if (categoria < 2)
                {
                    st = 50;
                }
                else
                {
                    st = 0;
                }
                Console.WriteLine("Los ingresos del empleado:");
                ingresos = sal + st;
                Console.WriteLine("Las deducciones son iguales a:");
                deducciones = fp + eps;
                Console.WriteLine("El sueldo es igual a:");
                sueldo = ingresos - deducciones;


Haces un switch de una variable vacia y creo que son todos.

salu2, SLUGER
#19
Yo uso VC# y Ademas de el error que jorgitoh te señalo a mi me aparece que es porque usas las varables locales no asignadas "proc", "categoria" y "sb" intenta asignarle un valor 0.
Ejemplo:
int categoria = 0, sb = 0;
string proc = "";
#20
ASM / Re: Duda Fasm
31 Mayo 2009, 02:29 AM
Bueno pues  lo de el virus que infecta ejecutables al ser creados no puede ser porque cree un Hola mundo en C++ y no salto el avira, el que mi fasm este infectado no puede ser porque lo baje de nuevo de la pagina oficial y me aparecio lo mismo, ya escanie mi PC como 3 veces y nada pero creo que ya lo solucione:
en el este code incluyo a win32ax.inc (con la x) y me salta avira con que es un trojan
include 'include\win32ax.inc'

.data
       Titulo    db 'Hola Este es el titulo', 0
       Texto     db 'Hola este es el texto', 0

.code
       start:
               push 0
               push Titulo
               push Texto
               push 0
               call [MessageBoxA]
       .end start


y en este otro incluyo a win32a.inc (sin la x) y avira no salta

format pe  gui 4.0
include 'win32a.inc'

push MB_OK
push titulo
push mensaje
push 0
call [MessageBox]
cmp eax,IDOK   ;Comparamos si apretaron ok
JE apretook ;  Si lo apretamos salatamos a apretook
jmp hubounfallo  ;De lo contrario saltamos a hubounfallo
salir:
push 0
call [ExitProcess] ;Terminamos la aplicacion

apretook:
push MB_OK
push titulo
push correcto
push 0
call [MessageBox]
jmp salir
hubounfallo:
push MB_OK or MB_ICONWARNING    ;Los tipos de mensaje
push titulo ;El titulo
push fallo ;Mensaje
push 0    ;Handle de la aplicacion en este caso lo ponemos nulo
call [MessageBox]  ;LLamamos a MessageBox
jmp salir     ;Saltamos a salir
;Posiciones que contienen los bytes a mostrar en pantalla
mensaje:db 'Esto es una MessageBox!!!',0
titulo:db 'Este es el titulo',0
correcto :db 'Apretaste ok',0
fallo:db 'La operacion fallo',0
data import     ;Declaramos las api's
library user32,'user32.dll',\
kernel32,'kernel32.dll'
import user32,\
MessageBox,'MessageBoxA'
import kernel32,\
ExitProcess,'ExitProcess'
end data


EDITO:
Despues de estar modificando codes a lo loco pues encontre que no es eso si no que en unos codes puse ".code" y me salto avira y en los que no puse ".code" no me salto, claro, esta probado con win32ax.inc. Si se fijan el segundo code no tiene ".code".       Extraño, no?


Gracias por las respuestas.
Salu2, SLUGER.