Új hozzászólás Aktív témák
-
Jester01
veterán
válasz Frenky89 #3647 üzenetére
Arról nem tehetünk, hogy nem C99 kompatibilis a fordító amit használsz. A platformfüggetlenség olyan dolog, hogy meg kell mondani milyen közös nevezőre építesz.
Egyébiránt avr-gcc kiválóan tudja a 64 bites long long típust, azt hiszem avr-studio is azt használja.
Jester
-
Frenky89
őstag
Rendben és elnézést kérek, amiért nem tudtam értelmesen feltenni a kérdésemet.
-
kispx
addikt
válasz PumpkinSeed #3653 üzenetére
Nem az történt.
Hanem, hogy float változot szeretett volna beolvasni a program, de karaktersorozatot kapott. Így a beolvasás sikertelen volt. (Ezt a scanf visszatérési értékkel letudod ellenőrizni). A változók tartalmát nem írta felül, viszont a ciklus újra végrehajtódott. -
PumpkinSeed
addikt
Nem tud valaki egy alapvető instrukciót adni arról, hogy a szökőéves programmal hogyan induljak el? Azt tudom, hogy 400-al kell oszthatónak lennie és valahogy úgy van, hogy 100-al is és ha nem osztható 100-al akkor 4-el. De erre pontosan nem emlékszem. De viszont nem tudom, hogy hogyan akarna ez kinézni.
(#3654) kispx:
"Akinek elég bátorsága és türelme van ahhoz, hogy egész életében a sötétségbe nézzen, elsőként fogja meglátni benne a fény felvillanását." - Kán
-
Davs
tag
válasz PumpkinSeed #3655 üzenetére
Szokoev az az ev, ami oszthato neggyel maradek nelkul, nem?
szoval 2000, 2004, 2008 szokoevek, 2001-3, 2005-7 nem -
kispx
addikt
válasz PumpkinSeed #3655 üzenetére
"Mely évek a szökőévek?
Szökőévek a következők: minden néggyel osztható év, kivéve a százzal is oszthatókat. Szökőévek viszont a 400-zal osztható évek. Vagyis a századfordulók évei közül csak azok szökőévek, amelyek 400-zal is oszthatók."
Igaz, wiki, de most nem lő mellé
[ Szerkesztve ]
-
PumpkinSeed
addikt
Pontos meghatározás: szökőév 400-al és 100-al osztható, ha nem osztható 100-al akkor 4-el. (Utánanéztem)
Na itt most a hangsúly az algoritmuson van. Én switch case-re gondoltam először.
"Akinek elég bátorsága és türelme van ahhoz, hogy egész életében a sötétségbe nézzen, elsőként fogja meglátni benne a fény felvillanását." - Kán
-
kispx
addikt
válasz PumpkinSeed #3658 üzenetére
"Én switch case-re gondoltam először. "
Azt, hogy?Szerintem if
ha (szokoev_feltelei igazak)
szokoev
else
nem szokoevEgyébbként ugyanaz mondtuk a szökőév definíciójának.
[ Szerkesztve ]
-
PumpkinSeed
addikt
Akkor elnézést.
Mivel még kezdő vagyok, így nem biztos az elképzelésem.
switch
case (400-al osztható 100al is)
case (400-al osztható 100al nem)
case (400-al osztható 4-el is)
case (400-al osztható 4-el nem)"Akinek elég bátorsága és türelme van ahhoz, hogy egész életében a sötétségbe nézzen, elsőként fogja meglátni benne a fény felvillanását." - Kán
-
kispx
addikt
válasz PumpkinSeed #3660 üzenetére
case (400-al osztható 100al nem)
case (400-al osztható 4-el nem)
FeleslegesDe hol a 4-gyel oszthatóak?
[ Szerkesztve ]
-
Karma
félisten
válasz PumpkinSeed #3660 üzenetére
Sajnos C-ben ez nem így működik, a case-eknek konstans értékeknek kell lennie. Na meg a switchbe is számot, vagy annak megfefelő értéket kell odaadni, hogy az alapján ugorjon.
“All nothings are not equal.”
-
PumpkinSeed
addikt
Értem. Azért vagyok még ilyen suta hozzá mert az első programozási nyelv amit tanulok.
(#3661) kispx
Szerintem ezt túlbonyolítottam.
"Akinek elég bátorsága és türelme van ahhoz, hogy egész életében a sötétségbe nézzen, elsőként fogja meglátni benne a fény felvillanását." - Kán
-
kingabo
őstag
válasz PumpkinSeed #3660 üzenetére
Ne vedd sértésnek, de erre a két esetre kérnék pl-t.
case (400-al osztható 100al nem)
case (400-al osztható 4-el nem)Írd Clipperbe, ott lehet a case-ben ilyet írni.
-
sztanozs
veterán
válasz PumpkinSeed #3660 üzenetére
if(ev % 400 == 0){
/* szökőév */
}
else if(ev % 100 == 0){
/* nem szökőév */
}
else if(ev % 4 == 0){
/* szökőév */
}
else
/* nem szökőév */
}JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Jester01 #3667 üzenetére
Méginkább:
if (ev % 4 == 0 && ev % 100 != 0 && ev % 400 == 0) ...
de azért írtam így, hogy látványos legyen...vagy így is?
if (!(ev % 4 || !(ev % 100) || ev % 400 )) ...[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
sztanozs
veterán
válasz Jester01 #3669 üzenetére
pff - ezen a százas problémán nem gondolkodtam el rendesen...
amúgy int -> bool implicit konverzió azért van még egy-két másik nyelvben is: mik a rendes nyelvek?
Látványost úgy értettem, hogy hasonlítson a switch/case szerkezetre.[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Jester01
veterán
-
sztanozs
veterán
válasz PumpkinSeed #3671 üzenetére
Ja és a kolléga időben kijavított, mielőtt rögzült volna
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Jester01
veterán
-
Spam123
tag
Sziasztok!
Kisebb segítséget szeretnék kérni. Nem régiben kezdtem el programozni és kéne egy kis kezdőlökés.
Egy olyan programot kéne írnom, ami láncolt listákkal dolgozik, de még azt nem tanították az órákon.
Igazából annyi a feladat, hogy egy határidőnaplót kéne készítenem adatokkal. Tehát pl egy névhez kéne rendelnem telefonszámot, e-mail címet stb. amit a felhasználótól kér be a program amit majd egy file-ba exportál, ahonnan vissza is lehet tölteni később ezeket az adatokat. Tehát azt nem tudni, hogy a felhasználó mennyi rekordot fog megadni, hány személy adatait fogja létrehozni.
Remélem érthető voltam.
-
Vasinger!
nagyúr
Sziasztok!
C-ben szeretnék egy menüt csinálni az alábbi módon:
1. menü opció 1
2. menü opció 2
....
....
stb.
Tehát az adott szám lenyomásával válassza ki a menüpontot a program. Viszont ha kiválasztja az egyik menüpontot a felhasználó, akkor törölje ki a képernyőt és ha lehet ne kelljen entert nyomnia.
Ezt meg lehet oldani valahogy econio.h nélkül? Ha igen, hogyan? -
Jester01
veterán
-
PumpkinSeed
addikt
Az alábbi program egy számológép:
De az a baj, hogy minden számítsára 2686780-at ad.
#include <stdio.h>
#include <conio.h>
#include <math.h>int main()
{
int a,b,c;
char op;
printf ("This is a calculator.\n");
printf ("Give me 2 number(a,b):");
scanf ("%d,%d",&a,&b);
printf ("This is ur numbers: %d,%d \n",a,b);
printf ("Now U can tell me what do u want to do.(+,-,*,/):\n");
fflush(stdin);
scanf ("%c",&op);
if (op == '+')
{
c=a+b;
printf ("The solution: %d\n",&c);
}
else if (op == '-')
{
c=a-b;
printf ("The solution: %d\n",&c);
}
else if (op == '*')
{
c=a*b;
printf ("The solution: %d\n",&c);
}
else if (op == '/')
{
c=a/b;
printf ("The solution: %d\n",&c);
}
}"Akinek elég bátorsága és türelme van ahhoz, hogy egész életében a sötétségbe nézzen, elsőként fogja meglátni benne a fény felvillanását." - Kán
-
Bobrooney
senior tag
válasz PumpkinSeed #3684 üzenetére
printf ("The solution: %d\n",&c); A kiírásodban a c változó memória címét iratod ki!
Módosítsd:
printf ("The solution: %d\n",c);
és jó lesz !
Valamint az ismétlődő kiíratást érdemes lehet kivinned csak az utolsó else if mögé
else if (op == '/')
{
c=a/b;
}
printf ("The solution: %d\n",c);
formában.[ Szerkesztve ]
-
PumpkinSeed
addikt
válasz kingabo #3687 üzenetére
Feltételes elágazással kell. Nem lehet switch. Órán még vannak kezdők is így csak szépen sorjába. (Én is kezdő vagyok csak kicsit haladóbb kezdő.)
"Akinek elég bátorsága és türelme van ahhoz, hogy egész életében a sötétségbe nézzen, elsőként fogja meglátni benne a fény felvillanását." - Kán
-
Karma
félisten
válasz PumpkinSeed #3688 üzenetére
Miért, a switch szerinted mégis micsoda?
“All nothings are not equal.”
-
sztanozs
veterán
válasz PumpkinSeed #3693 üzenetére
Gondolom, mert nem tudja hibátlanul megírni
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Bobrooney
senior tag
válasz PumpkinSeed #3693 üzenetére
Nem tudom, nem is érdekel. Csak már annyiszor javasoltátok itt a switch-t, de néha nem engedik alkalmazni. scanf is tilos nálunk... Persze ez a vizsgalapra nincs feltüntetve
-
Karma
félisten
válasz Bobrooney #3695 üzenetére
A scanf érthető, mivel nagyon veszélyes, de hogy a switch miért fáj, illetve hogy miért tekinti jobb megoldásnak az ifek tengerét? Rejtély számomra. Főleg, hogy egyenértékűek*. Lehet ezért tanár?
* egész számok vagy annak megfeleltethető értékek esetén.
(Élesben meg persze ott a State és a Command tervezési minta.)
“All nothings are not equal.”
-
Karma
félisten
válasz Bobrooney #3697 üzenetére
A scanfnek három nagy problémája van kapásból:
1) Ha extra paraméterek nélkül használod a %s-t, azaz ahogy órán bemutatják, nem ellenőrzi a célpuffer méretét, így buffer overflowt okoz egy hosszabb bemenet. (Ezt a gets is tudja.)
2) Ha túl nagy integer számot akarsz beolvasni, tehát túlcsordulás keletkezik, akkor nem definiált a viselkedése. Márpedig milyen módon akadályozod meg a felhasználót, hogy túl sok számjegyet nyomjon? De a probléma fájlolvasásnál is áll.
3) Ha nem sikerült értelmezni valamit, a bemeneti stream állapota kiszámíthatatlan.(Ezt egyébként Google-lel találtam. Hasznos.)
“All nothings are not equal.”
-
PumpkinSeed
addikt
Kezdőként értelmetlen kérdésem: Ha nem scanf-el végezzük a bekérést akkor mivel?
Meg adott egy számkitalálós játék. Bekérésnél scanf ("%d";&a);
Olyan problémám lenne, hogy ha betűt adok meg és nem számot akkor bebuggol a program és végtelen ciklussá változik. Nincs valami egyszerű de hatékony megoldás erre. Azt hallottam, hogy be kell olvasni tömbként és ki kell vonni az ASCI kódból tömbben ki olvasott értékkel kell valamit szugerálni. Na nekem ennél egyszerűbbre lenne szükségem.
"Akinek elég bátorsága és türelme van ahhoz, hogy egész életében a sötétségbe nézzen, elsőként fogja meglátni benne a fény felvillanását." - Kán
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Linux - haladóknak
- PlayStation 5
- Azonnali fotós kérdések órája
- Apple notebookok
- Eredeti játékok OFF topik
- EAFC 24
- E-roller topik
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Luck Dragon: Asszociációs játék. :)
- Motorola Moto G24 Power - hol van az erő?
- További aktív témák...