c , zistenie celeho cisla

Programovacie jazyky, rady, poradňa...
skvido
Star
Star
Príspevky: 508
Registrovaný: 17 nov 2008, 7:43
Kontaktovať používateľa:

c , zistenie celeho cisla

Príspevok od používateľa skvido »

zdravim potreboval by som spravit program ktory zisti ci zadane cislo z klavesnice je desatinne alebo cele

skusil som taketo nieco
int main()
{
double a;
printf("zadaj cislo:\t");
scanf_s("%lf", &a);

a *= 10;
if ((int)a % 10 == 0)
printf("Cele cislo\n");
else
printf("Desatinne cislo\n");


return 0;
}

funguje to fajn pokial zadam cele cislo tak to funguje pokial zadam desatinne cislo ako napr 1,1 tiez to funguje ale ked za ciarkou je nula cize napr 1,01 tak uz to bere ako cele cislo
Paragon
Medium Star
Medium Star
Príspevky: 349
Registrovaný: 16 nov 2012, 20:14

Re: c , zistenie celeho cisla

Príspevok od používateľa Paragon »

Podmienka by mala byt :

if( (int) a == a ) -> cele cislo

Po slovensky - ak sa celociselna hodnota cisla A rovna cislu A tak je to cele cislo.
skvido
Star
Star
Príspevky: 508
Registrovaný: 17 nov 2008, 7:43
Kontaktovať používateľa:

Re: c , zistenie celeho cisla

Príspevok od používateľa skvido »

dakujem

//autoeditácia príspevku (12 Okt 2014, 15:09)
a vedel by si mi poradit este s tymto ?, mam 2 intervali spravene tak ze zadam prve cislo a posledne cislo intervalu a pomocou cyklu vypisem cely interval , a potreboval by som spravit prienik tychto dvoch intervalov a vypisat ich spolocne cisla (ako interval , aj vsetky zasebou)
Paragon
Medium Star
Medium Star
Príspevky: 349
Registrovaný: 16 nov 2012, 20:14

Re: c , zistenie celeho cisla

Príspevok od používateľa Paragon »

Ak som ťa dobre pochopil tak sú to množiny, pretože v intervale sú reálne čísla, a tie nemáš šancu vypísať.

Čiže ak máš vstup 2 6 to je množina A = { 2, 3, 4, 5, 6} a 3 7 je množina B = { 3, 4, 5, 6, 7 } a ty chceš vypísať A prienik B čiže C = { 3, 4, 5, 6 }.

Tak máš začiatočné prvky 2och intervalov 2 a 3 zistíš ktorý je väčší v tomto prípade 3.

Tak isto máš konečné prvky dvoch intervalov 6 a 7. Zistíš, ktorý je menší. V tomto prípade 6.

A už len vypisuješ čísla od 3ky do 6ky.
Napísať odpoveď