Mi a hiba az alabbi c-ben ort programban? Surgos lenne jo lenne ha meg ma este jonne ra valasz
float v[100];
int i, n;
printf("n=");
scanf("%d", &n);
for(i=0; i<n; i++)
{
printf("A/Az %d-dik szam:", i);
scanf("%1.2f", &v[i]);
}
for(i=0; i<n; i++)
{
if(v[i]%2==0)
{
printf("%1.2f, ", v[i]/2);
}
else
printf("%1.2f, ", v[i]);
}
Errol a programrol lenne szo azt a hibat irja hogy nem jol deklaraltam egy valtozo de en nem talaltam meg hogy hol. Koszonom elore is meg egyszer.
Lehet írni egy külön eljárást rá:
Amennyiben az osztás maradéktalan igazzal térjen vissza. Azaz amennyiben az osztás egész szám lesz, tehát az osztás egész része egyezik az osztás eredményével, akkor lesz maradék nélküli osztásról beszélünk. Ilyesmi:
char float_modulus(float num, float mod)
{
return ((int)(num / mod) == (num / mod)) ? 1 : 0;
}
...
if (float_modulus(v[i], 2.0))
...
vagy: if(v[i]%2==0) helyett
if(v[i]==floor(v[i]/2)*2)
(include cmath.h)
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!