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

#11
Ya te lo dice el compilador, o cero o los dos parámeteros
#12
Programación C/C++ / Re: URGENTE AYUDA!!
20 Febrero 2018, 01:47 AM
Lo tenías hecho, solo te faltaba el bucle, he refactorizado tu código y añadido el bucle

Código (cpp) [Seleccionar]

#include <iostream>
#include <string>
#include <locale.h>

using namespace std;

void leerOpcion(unsigned short* opcion) {
    cout
        << "Calculadora de fracciones" << endl << endl
        << "1. Suma" << endl
        << "2. Resta" << endl
        << "3. Multiplicación" << endl
        << "4. División" << endl
        << "0. Salir" << endl << endl
        << "Opción: ";
    cin >> *opcion;
}

void leerFraccion(float* numerador, float* denominador) {
    char separador;
    while (separador != '/') {
        cout << endl << "Fracción [numerador/denominador]: ";
        cin >> *numerador >> separador >> *denominador;
        if (separador != '/') {
            cout << "[ERROR] Se esperaba '/' como separador";
        }
    }
}

int main() {
    setlocale(LC_CTYPE, "Spanish");
    unsigned short opcion;
    float n1, d1, n2, d2, numerador, denominador;

    do {
        system("cls");
        leerOpcion(&opcion);

        if (opcion != 0) {
            cin.get();
            leerFraccion(&n1, &d1);
            cin.get();
            leerFraccion(&n2, &d2);
            switch (opcion) {
                case 1:
                    numerador = d1 == d2 ? n1 + n2 : d1 * d2 + d1 * n2;
                    denominador = d1 == d2 ? d1 : d1 * d2;
                    break;

                case 2:
                    numerador = d1 == d2 ? n1 - n2 : n1 * d2 - d1 * n2;
                    denominador = d1 == d2 ? d1 : d1 * d2;
                    break;

                case 3:
                    numerador = n1 * n2;
                    denominador = d1 * d2;
                    break;

                case 4:
                    numerador = n1 * d2;
                    denominador = d1 * n2;
                    break;
            }
            cout
                << "Resultado: " << numerador << "/" << denominador << endl
                << "División: " << numerador / denominador << endl
                << "Pulse una tecla para continuar...";
            cin.ignore();
            cin.get();
        }
    } while (opcion != 0);
}


Te sugiero no utilices conio, un saludo!
#13
muchisimas gracias tio ;)
#15
bueno creo que esta solucionado, momentaneamente sin saber que esta bien, guardo todas las instancias de UdpClient, ademas que pienso que esta bien si en algun momento necesito destruirlas por si quiero dejar de escuchar en algun puerto, asi quedaria:


        Dim puertos(50) As UdpClient
        Dim i As Integer = 0
        For puerto As Integer = 2300 To 2350
            puertos(i) = New UdpClient(puerto)
            i += 1
        Next
#16
buenas, estoy intentando escuchar en un rango de puertos con .net, mas concretamente con la clase UdpClient, lo hago de la siguiente manera:


For puerto As Integer = 2300 To 2350
    Dim open As New UdpClient(puerto)
Next


pero el problema viene cuando hago "netstat -a" en la línea de comandos y veo que solo tengo escuchando 3 o 4 de todos los que le he dicho que escuche.

a alguien mas le ha pasado? alguna solucion? gracias, saludos.
#17
nadie me puede echar una mano?  porfa, mirar investigando por ahi he encontrado dxport este programilla hace lo que yo quiero conseguir, le das un rango entre 2300-2400 y restringe directx(directplay) a esos puertos unicamente y deja libre el resto, por ejemplo si yo le digo a dxport quiero del puerto 2300 al puerto 2310 pues directx unicamente trabajara en esos puertos y del 2310 al 2400 kedaran libres, espero haberme explicado, pues bien ahora el problema es donde modifica dxport esos valores, quizas alguna clave del registro? (he buscado y no he encontrado nada), quizas en algún fichero? tiene directx algun formulario para especificarle que puertos usar?


saludos
#18
buenas el tema es el siguiente:
necesito saber como forzar a directx paraa que en vez de trabajar en los puertos 2300-2400 trabaje en los especificados por el usuario, siempre dentro del rango original (2300-2400) aunque los que el usuario especifique, por ejemplo 2300-2305 y deje libre el resto para otro usuario dentro de la misma red, teneis idea? se que se puede porque he visto por ahi en internet varias aplicaciones que lo hacen e incluso hacen que directx trabaje en otros puertos fuera del rango 2300-2400.

saludos

pd: estoy desarrollando con .net 1.1 en vb
pd2: puede que este post este mas correcto en redes quizas?
espero alguna respuesta gracias.