- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen monitort vegyek?
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Milyen SSD-t vegyek?
- Milyen billentyűzetet vegyek?
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Milyen videókártyát?
- iPad topik
- Azonnali informatikai kérdések órája
- Samsung LCD és LED TV-k
Hirdetés
-
Computex 2024: újfajta tápdizájn a Lian Li boszorkánykonyhájáról
ph Az L alakú Edge széria három kapacitással közeleg, és a legszerényebb variánsa kap egy picit olcsóbb kiadást, ami levehető mesh hálóval jön.
-
Léptek New Yorkban a közösségi média függőséget okozó algoritmusai ellen
it Meghozták azokat az intézkedéseket, amelyektől azt remélik, hogy segítenek megvédeni a kiskorúakat a közösségi médiában.
-
Retro Kocka Kuckó 2024
lo Megint eltelt egy esztendő, ezért mögyünk retrokockulni Vásárhelyre! Gyere velünk gyereknapon!
Új hozzászólás Aktív témák
-
bucsupeti
senior tag
Igazad van, egyetértek veled abban hogy változnak a dolgok és más értelmet kapnak így nem biztos hogy egy programozó a jövőben foglalkozni akar azzal, hogy mi és hogyan tölti be a programokat a memóriába, (egyáltalán mi az a memória) és hogy hogyan kapja meg a vezérlést, majd ha a futásnak vége van akkor mi történik. Egyszerűen elkészíti a szoftvert ami megoldja a problémáját.
De ez nekem akkor is furcsa.... Bár az is igaz hogy az első programomat 30 éve írtam, így valóban egy korábbi generáció tagja vagyok és mást gondolok az informatikus/programozó/IT szakember stb szavakról."Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
rgrg1
csendes tag
Házi feladatnak kaptam ezt a feladatot: Hogy tudnám megoldani? (10 változóval int a,b,c,d...; és IF fv-vel?)
Írjon egy kis programot, amiben bekér 10 egész számot és kiírja, hogy pozitív, negatív, vagy 0. Nem kell tömbben tárolni.
-
bucsupeti
senior tag
be: a
ha a=0 akkor ki: nulla különben
ha a>0 akkor ki: pozitív különben ki: negatívbe: b
ha b=0 akkor ki: nulla különben
ha b>0 akkor ki: pozitív különben ki: negatívstb....
A "neheze" kész, most már csak C-be kell átírni...
[ Szerkesztve ]
"Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
-
umek7
őstag
C++, a megoldásom félkész és valószínűleg sok helyen hibás. A feladat:
Hozz létre egy Virág osztályt. Az adattagok legyenek: név (string), fagyástűrés (string (igen, nem, közepes), magasság (egész szám cm-ben).
Tiszta virtuális metódus: AtlagDarabszam, mely kiszámítja a darabszámok átlagát. Ez alapján eldönthető minden virág esetében, hogy sok van belőle, közepes vagy kevés. Szükséges kiíró alprogram is.
- Származtass a Virág osztályból egy Tulipán utódosztályt, az öröklődött adattagokon kívül legyen egy új virtuális adattagja: szín (string)
- Származtass a Virág osztályból egy Nárcisz utódosztályt, az öröklődött adattagokon kívül legyen egy új virtuális adattagja: darab (egész szám)
- Írd ki a tulipán és nárcisz adatait.class Virag {
protected:
string nev;
string fagytures;
int magassag;
int darab;
public:
Virag(string n, string f, int cm,int db){
nev=n;
fagytures=f;
magassag=cm;
darab=db;
};
virtual double AtlagDarabszam()=0;
bool sok(){
return darab > AtlagDarabszam();
};
};
class Tulipan:public Virag {
string szin;
public:
Tulipan(string n, string f, int cm, string sz,int db) : Virag(n,f,cm,db) {
szin=sz;
};
double AtlagDarabszam(){
return 10;
};
void kiir();
};
void Tulipan::kiir() {
cout<<"Nev: "<<nev<<"\n";
cout<<"Fagyturo: "<<fagytures<<"\n";
cout<<"Magassag: "<<magassag<<" cm"<<"\n";
cout<<"Szin: "<<szin<<"\n";
cout<<"Darabszam: "<<(sok()? "Sok van belole!":"Keves van belole!"); }
class Narcisz:public Virag {
public:
Narcisz(string n, string f, int cm, int db) : Virag(n,f,cm,db) {
};
void kiir();
double AtlagDarabszam(){
return 11;
};
};
void Narcisz::kiir() {
cout<<"Nev: "<<nev<<"\n";
cout<<"Fagyturo: "<<fagytures<<"\n";
cout<<"Magassag: "<<magassag<<" cm"<<"\n";
cout<<"Darabszam: "<<(sok() ? "Sok van belole!":"Keves van belole!"); }
int main(int argc, char *argv[]) {
Tulipan tulipan("Tulipan","igen",20,"kek",2);
tulipan.kiir();
cout<<"\n";
cout<<"\n";
Narcisz narcisz("Narcisz","nem",18,11);
narcisz.kiir(); } -
izsom
újonc
Ezt a feladatot megtudná oldani valaki nagyon nagy segítség lenne!
Írjon egy függvényt amely paraméterenként kap egy szöveget és egy betűt és vissza adja hogy a hogy a szöveg a megadott betűre végződik -e!
-
Dave-11
tag
Írtam neked egy lehetséges verziót, ha valami nem tiszta kérdezz nyugodtan. Vagy ha valaki úgy gondolja van ennél jobb megoldás, az is szóljon
#include<stdio.h>
void erreVegzodikE(char szoveg[], char betu);
int main()
{
erreVegzodikE("Programozas",'s');
return 0;
}
void erreVegzodikE(char szoveg[], char betu)
{
int hossz = 0;
while(szoveg[hossz]!='\0')
{
hossz++;
}
if(szoveg[hossz-1]==betu)
{
printf("Igen\n");
}
else
{
printf("Nem\n");
}
}:D Semmi :D
-
izsom
újonc
válasz Dave-11 #4311 üzenetére
Köszönöm a segítséget, de közben sikerült megoldanom!!!
#include <stdio.h>
#include <string.h>
void osszehasonlit(char szoveg[], char betu)
{
if(szoveg[strlen(szoveg)-1]==betu)printf("megegyezik.");
else
printf("nem egyezik meg.");
}
int main()
{
char tomb[40]={"kutya"};char beker='a';
osszehasonlit(tomb, beker);
return 0;
}[ Szerkesztve ]
-
umek7
őstag
Addig akarok bekérni a user-től adatot (2db szöveg: pl. név, lakhely. 1db int: pl. kor), amíg a lakhely helyére az nem kerül hogy "stop". Ezt hogy a legegyszerűbb?
-
umek7
őstag
Nem sikerül működésre bírni. Amíg számmal kell csinálni addig minden rendben, de szövegnél már problémákba ütközök. A Google már füstöl, hálás lennék a segítségért.
-
prosoftware
csendes tag
Sziasztok!
Mi a különbség az alábbi két programkódrészlet között?
scanf("%d%d%*[^\n]", &a, &b);
getchar();scanf("%d%d%", &a, &b);
-
Jester01
veterán
válasz prosoftware #4318 üzenetére
Az első az megeszi az egész sort, a második az nem (a végén a % az gondolom elírás).
Jester
-
-
Jester01
veterán
válasz prosoftware #4321 üzenetére
Nem ugyanazt csinálják, ha a sorban a két számon kívül még van valami és később azt is be akarod olvasni.
scanf("%d%d%*[^\n]", &a, &b);
getchar();
scanf("%d", &c);
printf("%d %d %d\n", a, b, c);Be:
1 2 3
4
Ki: 1 2 4Az első sorban a szám után bármi lehet, azt figyelmen kívül hagyja.
scanf("%d%d%", &a, &b);
scanf("%d", &c);
printf("%d %d %d\n", a, b, c);Be: 1 2 3
Ki: 1 2 3Itt a két szám után ami még a sorban volt az megmarad és a további beolvasások felhasználják. A formátumstringben az utolsó % jel pedig igenis elírás mivel annak ott semmi értelme nincs. Ugyanígy működik anélkül is, csak akkor még helyes is.
[ Szerkesztve ]
Jester
-
rgrg1
csendes tag
Adott egy feladatom:
Kérjen be 10 könyv árát és oldalszámát 1-1 tömbbe.
Aztán külön függvény segítségével számolja ki az ár/oldal arányt.
Ha az 4.5 alatt van, akkor írja ki, hogy olcsó, ha felette, akkor drága, a függvénynek nincs visszatérési értéke.
A függvénynek a két tömböt kell paraméterként átadni.Idáig eljutottam de innen nem igazan tudom hogyan tovább:
#include <stdio.h>
int main(void)
{
int ar[10];
int szam[10];
int i = 0;
int j = 0;
for(i=0; i<10; i++)
{
printf("szam:");
scanf("%d",&szam[i]);
printf("ar:");
scanf("%d",&ar[j]);
if(ar[j]/szam[i]>4.5)
{
printf("draga\n");
}
else
{
printf("olcso\n");
}
}
return 0;
}Köszönöm a segítségeteket.
-
rgrg1
csendes tag
Közben tovább jutottam: (az előzőt bocsi mar nem tudtam szerkeszteni)
#include <stdio.h>
int main(void)
{
float ar[10];
float szam[10];
float arany;
int i = 0;
int j = 0;
for(i=0; i<10; i++)
{
printf("szam:");
scanf("%d",&szam[i]);
printf("ar:");
scanf("%d",&ar[j]);
arany = ar[j] / szam[i];
if(arany>4.5)
{
printf("%f draga\n",arany);
}
else
{
printf("%f olcso\n",arany);
}
}
return 0;
} -
prosoftware
csendes tag
válasz prosoftware #4326 üzenetére
scanf("%d%d%*[^\n]", &a, &b);
getchar();
scanf("%d", &c);
printf("%d %d %d\n", a, b, c);A getcharnak mi a szerepe itt? Ha jól néztem nélküle is működik.
[ Szerkesztve ]
-
bucsupeti
senior tag
Én értem a feladatot. Azt írtad hogyha számmal csinálod a ciklusfeltétel ellenőrzését akkor minden jó, de szöveggel nem működik. Ekkor kértem, hogy írd be a forráskódot ide, hogy lássuk, mi az ami nem működik.
Ne haragudj, de a programot nem írom meg helyetted. Szívesen adok tanácsot, vagy véleményt mondok a megoldásodról, de ahhoz konkrét forráskódot kéne látni.
Kíváncsi vagyok arra, hogy pl milyen módon hasonlítod össze a szövegeket, illetve érdekel még az is hogy a while()-ban a zárójelek között mi van?
"Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
bucsupeti
senior tag
A bekérések után van ez a két sor:
arany = ar[j] / szam[i];
if(arany>4.5)Ugyebár ez helyett kell egy függvényt csinálni. Pontosabban kell egy olyan függvény ami kiszámolja az arányt és visszaadja azt eredményül. Ezt kellene az if()-ben meghívni. Több lehetőség van.
A függvény formális paraméterei ilyenek lehetnek pl:float aranyszamitas(float*, float*, int) :ebben az esetben a két tömböt adjuk át és a tömbindexet amit arányosítani kell.
float aranyszamitas(float, float): ebben az esetben két float számot adunk át, amit arányosítani kell.
Az aktuális paraméterekkel az if() így néznek ki:
Első paramétrezés: if(aranyszamitas(ar,szam,i)>4.5)
Második paraméterezés: if(aranyszamitas(ar[i],szam[i])>4.5)Mostmár csak a két függvény közül az egyik változatot ki kell választanod és megírni
Szerintem meg tudod oldani! Ha nem megy írd le meddig jutottál.
"Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
Jester01
veterán
válasz prosoftware #4327 üzenetére
A getchar() a sorvég jelet \n eszi meg mivel azt a scanf a [^\n] miatt nem tette meg. Persze bele lehetne oda is tenni.
Jester
-
umek7
őstag
válasz bucsupeti #4328 üzenetére
Igazad van, csak túl bizonytalan voltam. Utoljára kb. így próbáltam meg, kevés sikerrel. Biztosan van hatékonyabb megoldás, illetve az fgets is szúrja a szemem. Ha később ezeket az adatokat egy bináris fájlba akarom kiíratni, az miben változtat majd a felálláson...?
char nev[50];
do {
printf("neved: ");
fgets(nev,50,stdin);
} while (nev[0]!='e' && nev[1]!='n' && nev[2]!='n' && nev[3]!='y' && nev[4]!='i'); -
umek7
őstag
Lefut, "működik" is, de érdekelnének az esetleges hibák. A kérdés pedig az lenne, hogy tudom az int-et is helyesen kiíratni a txt-be?
typedef struct {
int hd;
char domain[30];
}
vmi;
int main(int argc, char** argv) {
char domain[30];
char tulaj[30];
int hd;
FILE * fp;
fp=fopen("vmi.txt","r");
do {
printf("Add meg a tulajdonos nevet!\n)"); scanf("%s",domain);
printf("Add meg az elofizeto havidijat!\n"); scanf("%d",&hd);
} while (domain[0]!='e' || domain[1]!='n' || domain[2]!='n' || domain[3]!='y' || domain[4]!='i');
if (fp!=NULL) {
fwrite(domain,sizeof(domain),1,fp); printf("Az adatokat kiirtuk\n");
}
else {
printf("Sikertelen\n");
}
fclose(fp); -
Dave-11
tag
1. Ezt a sort először is ki kéne javítanod: fp=fopen("vmi.txt","r");
Azzal az "r" paraméterrel olvasásra nyitottad meg a fájlt, nem pedig írásra. Írd át "w" -re.2. Én a helyedben az fprintf() függvényt használnám, ugyanúgy működik mint a printf(), csak paraméterként meg kell adnod azt a fájlmutatót, ami a te esetedben fp. Például:
fprintf(fp, "%d",100);[ Szerkesztve ]
:D Semmi :D
-
bucsupeti
senior tag
A while feltétel így elég "bonyolultan" néz ki. Nem látszik belőle hogy gyakorlatilag te az "ennyi" szó beírásakor hagynád abba a ciklust (holott a feladatban a "stop" volt megadva )
Inkább csinálj egy függvényt rá, vagy használd a string.h-ban lévő strcmp() függvényt. Sokkal kellemesebb lesz a kódod.
pl:
do {
printf("Add meg a tulajdonos nevet!\n)"); scanf("%s",domain);
printf("Add meg az elofizeto havidijat!\n"); scanf("%d",&hd);
} while (strcmp(domain,"ennyi"));Gyakorlatilag bekéregeted az adatokat és nem csinálsz velük semmit. Kivéve azzal az adattal aminél a domain nevű stringbe azt írod hogy "ennyi"
Pl ha azt írod be hogy "alma" akkor nem történik semmi újból fut a ciklus.Ezután beírod hogy "ennyi" akkor a ciklus befejeződik. Ezek után szándékod szerint ezt kiíratod egy vmi.txt nevű fájlba.
Sok értelme ennek nincs, mert a többi adat nincs elmentve.
A fájlba írást a ciklusmagban kell elvégezned, vagy tömbbe (láncolt listába) kell az adatokat bekérni, majd a bekérő ciklus után az egészet kiírni egyben.A progi elején a vmi nevű struktúra az mi akar lenni? Nem használod sehol.
[ Szerkesztve ]
"Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
umek7
őstag
Köszöntem a javaslatokat/útmutatást.
-
bucsupeti
senior tag
úgy látom vége a vizsgaidőszaknak, meg a féléves beadandók határideje is letelt már...
"Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
maathe
senior tag
Notepad++-ban hogyan lehet legegyszerűbben megoldani a C fordítást?
-
PumpkinSeed
addikt
Megírod a programot benne, majd lemented .txt-be. Majd felmész a világhálóra és letöltesz egy C fordítót és a .txt-ben lévő állományt megnyitod vele és kész.
"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
-
Peter789
senior tag
Sziasztok ismét!
Szeretnék egy UDP szerver programot írni, ami adatokat tud küldeni a rácsatlakozó kliens programnak. A kliens lehet akár a GPSGate vagy a TCP-Com amelyek az UDP forrásból virtuális sorosportra közvetítik az adatfolyamot (tetszőleges platformon) de vannak olyan programok is amelyek közvetlenül tudnak csatlakozni UDP portra (NMEA0183 sorok), nem csak sorosra
Ezt a példaprogramot találtam a témában legközelebbinek, viszont ez sem tökéletes. Egymással természetesen tökéletesen beszélgetnek, viszont ennek feltétele hogy a kliens egyszer küldjön valami szemetet a szervernek. Hogyan lehetne anélkül küldeni, hogy bármi beérkezőre csomagra várna a szerver oldal?
----------------------------------------------------------------------------------------------------------------- AquAgorA ...Pál apostol nyomában: http://fleettracker.eu/index.php/component/aquagora
-
maathe
senior tag
Ú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!
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen monitort vegyek?
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- Politika
- Milyen SSD-t vegyek?
- Skoda, VW, Audi, Seat topik
- Milyen billentyűzetet vegyek?
- Ford topik
- Távol-keleti webshopok OFF topikja (játékok, kuponok, stb.)
- Autóápolás, karbantartás, fényezés
- További aktív témák...
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen