Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: dani9317 en 2 Noviembre 2012, 17:00 pm



Título: ayuda con programa
Publicado por: dani9317 en 2 Noviembre 2012, 17:00 pm
EL ERROR QUE ME APARECE ES EL SIGUIENTE 21 expected primary-expression before "else" POR FAVOR SU AYUDA URGENTE

#include <cstdlib>
#include <iostream>
#include <conio.h>

using namespace std;

int main()
{
   
    int digitos=0;
   
    char c;
    cout<<"Digite Numero '.'"<<endl;
    while ((c=getchar())!='.')
   
         
if  (isdigit(c))digitos ++;
{
cout<<" Cifras = "<<endl;
}
else (digitos < 0);
{
cout <<"error no acepta negativos" <<endl;
}
             
                    //  break;
                     
                     
                     
   
   
       
    system("PAUSE");
    return EXIT_SUCCESS;
}


Título: Re: ayuda con programa
Publicado por: BatchianoISpyxolo en 2 Noviembre 2012, 17:13 pm
else if (condición)


Título: Re: ayuda con programa
Publicado por: dani9317 en 2 Noviembre 2012, 17:17 pm
ya e intentado con else if y nada sale el mismo error


Título: Re: ayuda con programa
Publicado por: za.asi en 2 Noviembre 2012, 20:24 pm
El error es que has puesto ";" despues del if, tienes que poner:

Código:
if (condición)
{
codigo
}
else if (condición)
{
código
}

(sí el código del if o del else solo tiene una instrucción no hacen falta las llaves


Título: Re: ayuda con programa
Publicado por: Stakewinner00 en 2 Noviembre 2012, 23:25 pm
puedes utilizar las etiquetas GesHI para darle un poco de color y para que mas gente te conteste.


Título: Re: ayuda con programa
Publicado por: Beakman en 3 Noviembre 2012, 04:21 am
Esto debería ser algo así:
Código
  1. if( isdigit(c) ) {
  2.     digitos ++;
  3. } else {
  4.     cout  << "Error: no acepta negativos" <<endl;
  5. }


Título: Re: ayuda con programa
Publicado por: BatchianoISpyxolo en 3 Noviembre 2012, 13:07 pm
Esto debería ser algo así:
Código
  1. if( isdigit(c) ) {
  2.     digitos ++;
  3. } else {
  4.     cout  << "Error: no acepta negativos" <<endl;
  5. }

Sería mejor mandar un perror()... por ejemplo.