[ CONFIQ @ 21.04.2002. 14:54 ] @
Ako imam ovakav code

Code:
#include <iostream.h>
#include <conio.h>

int main()
{
  int starost;
  cout<<"Kolko imate godina?";
  cin>>starost;
  if( .... )


Treba da proverim da li je variable (starost) broj... kako to da uradim?
[ had @ 21.04.2002. 15:01 ] @
Necu da ispadne da pametujem, ja samo pokusavama da naucim, tako da ako se nalupetam nemojte mi zameriti...

Kada si rekao int starost zar to ne znaci da starost MORA da bude celobrojna vrednost ili ce kompajler da javi gresku?
[ CONFIQ @ 21.04.2002. 15:10 ] @
meni ne prijavljuje grešku

evo šta se događa kada pokrenem program


Code:
Kolko imate godina?
nesto

ODGOVOR1 ODGOVOR2
[ Le Piaf @ 21.04.2002. 15:29 ] @
Citat:
C0NF0RTY:
Ako imam ovakav code

Code:
#include <iostream.h>
#include <conio.h>

int main()
{
  int starost;
  cout<<"Kolko imate godina?";
  cin>>starost;
  if( .... )


Treba da proverim da li je variable (starost) broj... kako to da uradim?


neshto se cudno desilo sa prethodnim odgovorom, ponavljam dakle:
ovako:
...
cin >> starost;
if (!cin.fail())
cout << "OK";
else cout << "Error!";

cya
Vlada
[ had @ 21.04.2002. 17:29 ] @
Da li moze sa fail() da se proverava da li je bilo koji tip unet korektno npr. char?
[ sspasic @ 21.04.2002. 19:11 ] @
Citat:
had:
Da li moze sa fail() da se proverava da li je bilo koji tip unet korektno npr. char?

Moze ali nije dovoljno
Pravi nacin je da testiras da li je stream.good(),
ili krace:
Code:

    std::cout << "Unesi i=";

    int i = 0;
    if (std::cin >> i) std::cout << "Uneo si " << i << std::endl;
    else std::cout << "Greska!!!" << std::endl;

[ leka @ 21.04.2002. 19:57 ] @
Prosto uneto pretvori u broj sa recimo atoi() funkcijom, pročitaj njen manual i videćeš šta ćeš da dobiješ ako to što si joj dao kao argument nije broj :). U tom slučaju imaš unet string! Prosto zar ne? - Samo se malo programerski razmišlja...
[ B o j a n @ 21.04.2002. 22:41 ] @
Kao i uvek, dobri stari man
:::

Code:

ISDIGIT(3)                OpenBSD Programmer's Manual               ISDIGIT(3)

NAME
     isdigit - decimal-digit character test

SYNOPSIS
     #include <ctype.h>

     int
     isdigit(int c);

DESCRIPTION
     The isdigit() function tests for any decimal-digit character.