Welcome, Guest. Please login or register.

Autor Subiect: Numar intreg  (Citit de 11501 ori)

0 Membri şi 1 Vizitator vizualizează acest subiect.

justakid

  • Vizitator
Numar intreg
« : Mai 26, 2011, 07:24:43 p.m. »
Cum pot verifica daca un nr este de tipul intreg?

Sa se realiz un prog in care fol subprograme si cit nr n de linii si nr m de coloane ale unei matrici a ce contine nr N.
Sa se afiseze liniile matricei ce incep si se termina cu un nr intreg.

#include<iostream>

using namespace std;

{

int n,i,m,j;
float a[100][100];

cin>>n>>m;

for(i=0;i<n;i++)
for(j=0;j<m;j++)
cin>>a[i][j];

for(i=0;i<n;i++)
if((int)a[i][m]==a[i][m] && (int)a[i][i]==a[i][i])
{
for(j=0;j<n;j++)
cout<<a[i][j];
}

return 0;
}

nu merge, ceea ce nu ma mira prea mult, am cautat pe google si am gasit o functie isdigit dar nu prea am inteles cum se foloseste. (Si nu stiu sa lucrez cu stdio, iar celelalte antete nici nu stiu ce fac.)

http://www.cplusplus.com/reference/clibrary/cctype/isdigit/

Offline zec

  • Experimentat
  • ***
  • Mesaje postate: 504
  • Popularitate: +49/-15
Răspuns: Numar intreg
« Răspuns #1 : Mai 26, 2011, 08:37:24 p.m. »
Pentru functia int() nu trebuie un fisier de inclus altul fata de iostream?

Offline Adi

  • Global Moderator
  • *****
  • Mesaje postate: 11298
  • Popularitate: +15/-7
    • Site personal Adrian Buzatu
Răspuns: Numar intreg
« Răspuns #2 : Mai 26, 2011, 08:58:02 p.m. »
Daca nu exista o functie in C++ care sa iti dea un true or false pentru orice numar de tip float daca e intreg sau nu, poti calcula tu partea fractionara a numarului cu functia

http://www.cplusplus.com/reference/clibrary/cmath/modf/

si apoi verifici daca partea fractionara e strict 0, sau ca sa fii sigur mai mica decat 0.0000001.
Pagina personala: http://adrianbuzatu.ro

Offline tavy

  • Experimentat
  • ***
  • Mesaje postate: 544
  • Popularitate: +26/-26
Răspuns: Numar intreg
« Răspuns #3 : Mai 26, 2011, 09:21:30 p.m. »
Sau mai simplu folosești: „x==ceil(x)”.
man ceil
Citat
These functions return the ceiling of x.
If x is integral, +0, -0, NaN, or infinite, x itself is returned.

Pentru functia int() nu trebuie un fisier de inclus altul fata de iostream?
Nu există funcția „int()”, int() este operatorul de conversie de tip. Dacă numărul care-l convertești este mai mare decât INT_MAX sau mai mic decât INT_MIN (limits.h) atunci ai o problemă.
« Ultima Modificare: Mai 26, 2011, 09:25:31 p.m. de tavy »

justakid

  • Vizitator
Răspuns: Numar intreg
« Răspuns #4 : Mai 29, 2011, 09:37:34 p.m. »
Am rezolvat cu ceil, multumesc. ^^