Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/09/2015, 15:33
RGT
Usuario no validado
 
Fecha de Ingreso: noviembre-2008
Mensajes: 505
Antigüedad: 15 años, 4 meses
Puntos: 5
Pregunta Leer un número entero de dos dígitos y determinar si es primo y además si es negativo

Hola, soy nuevo en C++ y estoy haciendo este ejercicio.

Leer un número entero de dos dígitos y determinar si es primo y además si es negativo.

El problema es que me da error al momento de arrancarlo y no se por qué ya que es mi primer programa en C++.

Espero puedan ayudarme.

Código:
#include <iostream>

using namespace std;

/*
Tema: P2 - Algoritmos Decisiones

2. Leer un número entero de dos dígitos y determinar si es primo y además si es negativo.
*/

int main()
{
    //Declaración de variables
    int liNumero, liContador, liContadora = 0;

    //Entrada de datos
    cout << "Ingrese un n\243mero entero de dos d\241gitos: " << endl;
    cin >> liNumero;

    //Procesamiento
    if (liNumero < 10 || liNumero > 99)
        cout << "\n\tError!, el n\243mero debe tener dos d\241gitos." << endl;

    else
    {
        for(liContador = 1; liContador <= liNumero; liContador++)
            {
                if (liNumero % liContador == 0)
                liContadora++; //Variable contadora
            }

        //Si tiene dos divisores
        if (liContadora == 2)
            {
                cout << "El n\243mero es primo." << endl;

                //Determinamos si es negativo
                if (liNumero < 0)
                    cout << "El n\243mero es negativo." << endl;
            }

        //Si no tiene dos divisores
        else if
            {
                cout << "El n\243mero no es primo." << endl;

                //Determinamos si es negativo
                if (liNumero < 0)
                    cout << "El n\243mero es negativo." << endl;
            }
    }

    return 0;
}
Tambien cuando ingreso -11, me muestra error y no se por qué si es 11 primo y deberia mostrarme: es negativo.
Qué tengo mal en los IF?..

Última edición por RGT; 09/09/2015 a las 15:41