- Samsung Galaxy A54 - türelemjáték
- Android alkalmazások - szoftver kibeszélő topik
- Samsung Galaxy S21 Ultra - vákuumcsomagolás
- Hivatalos a OnePlus 13 startdátuma
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Redmi Note 12 Pro - nem tolták túl
- VoLTE/VoWiFi
- További kavarás a Pixel 10-ek körül
- Egyszerre legnagyobb és legkisebb is a Garmin Venu X1
- Samsung Galaxy A52s 5G - jó S-tehetség
Új hozzászólás Aktív témák
-
bandi0000
nagyúr
válasz
Domonkos #5912 üzenetére
tök 8 nagy nehezen meg lett a hiba maga az algoritmus jól működik, csak akkor bugzódik be, hogyha kevesebb vagy több elemű tömb-öt kéne használnom mint amit lefoglaltamszóval jön is a kérdés, az a gond hogy paraméterben kell megadni, hogy mekkora lesz a mátrix, meg van adva, hogy mennyi lehet maximum, de ha annyit foglalok le, akkor is baja van neki, viszont az üzenethez structúrát kell létrehozni, amit előre kell deklarálni, szóval az lenne a jó ha úgy tudnám létrehozni, a sturktúrát, hogy már tudom a mátrix méretét, de ez lehetséges valahogy?na ezért jó kérdezni, mert közbe rá jöttem, mivel helyet is kellett foglalni az elküldendő üzenetnek, így ott kellett volna max méretre helyet foglalni, és akkor nincs hiba
-
bandi0000
nagyúr
sziasztok
Kérnék egy kis segítséget, ha ide tartozik
igaz linux alatt írjuk a kódot, de C-be
processzekkel foglalkozunk, és az lenne a feladat, hogy üzenetet küldjön egyik a másik processznak (msgsnd,msgrcv)
A feladat talán nem is lényeges, inkább az, hogy egy N*M-es mátrixot kell küldözgetni
létrehozok N+M mátrixot
első N mátrix az sorokkal
utána a többi az oszlopokkal dolgozikés össze vissza kapják, adják az üzeneteket
for-ba hoztam létre a processzeket, és a for-ban lévő id-vel hivatkozok az egyes processzekre
maga a gyerekek kódja így néz ki, mert gondolom itt a hiba, a szülő jól adja át elvileg az első gyereknek a mátrixot
-
bandi0000
nagyúr
válasz
EQMontoya #5376 üzenetére
igazad volt, bár nem értem teljesen miért mert ha a for i-je tud lépkedni a szavak között, akkor az i+1-et mért nem érti?
Nem nagyon tudok dülőre jutni ezzel a feladattal, most lefut, de amint talál egy olyan szavat ami megfelel az if-nek, tehát j. szó rövidebb mint az utána közvetkező akkor kiakad és bezáródik, gondolom a másolgatással lenne baja?!?
-
bandi0000
nagyúr
válasz
zsambek #5375 üzenetére
Feladat:
6, Határozza meg, hogy a szotar.txt állományban melyik a leghosszabb szó! Ha több,
ugyanannyi karakterből álló leghosszabb szó volt, akkor az ugyanazokat a karaktereket
tartalmazó szavakat (amelyek egymás anagrammái) közvetlenül egymás alá írja ki!
A feltételnek megfelelő összes szó pontosan egyszer szerepeljen a kiírásban!7. Rendezze a szotar.txt állományban lévő szavakat a karakterek száma szerint növekvő
sorrendbe! Az egyforma hosszúságú és ugyanazokat a karaktereket tartalmazó szavak
(amelyek egymás anagrammái) szóközzel elválasztva ugyanabba a sorba kerüljenek!
Az egyforma hosszúságú, de nem ugyanazokat a karaktereket tartalmazó szavak külön
sorba kerüljenek! A különböző hosszúságú szavakat egy üres sorral különítse el egymástól!
Az így rendezett szavakat írja ki a rendezve.txt állományba!Azért akarom berendezni növekvőbe hogy mind2 feladatot egyszerűen tudjam megcsinálni, mert ugye van 2 tömbböm már, egyikbe eredeti szavak sorakoznak a másikba ugyanazzal az indexxel a szavak, csak a szavak már abc-ben vannak tehát egyik tömb 10. eleme: alma, a másik tömb 10. eleme: aalm
6.feladatnál ha növekvőbe raktam akkor annyi a dolgom hogy megnézem melyik a leghosszabb, és azokat kiírom, dupla for, i rámutat az első szó-ra kikeresi j-ből az ugyan olyanokat és aztán kiírom, és amiket megtalált azt ki nullázom és legközelebb nem lesz meg
7. feladatnál meg egyszerre nézem mind2 tömböt, ha megegyezik az abc rend szerinti szó a másikkal akkor fájlba írom azt, amelyik ugyanazzal az indexxel van csak nincs abc-ben
(#5376) EQMontoya: szavak[300][30], 300 szó max 30 karakter hosszú, j megy 300-ig tehát a szavakon ugrál, azért ugye a +1 a következő szó ra akarok rámutatni
-
-
bandi0000
nagyúr
válasz
bandi0000 #5371 üzenetére
Meg annyit ha tudnál esetleg még segíteni, hogy úgy néz ki az IF-nél hasal el, megpróbáltam úgy hogy felvettem 2 integer változót és abba belerakni egy számot, amit az strlen ad visza, hogy tudjam hány betűből áll de úgy néz ki mintha bele akarná ezáltal tölteni a szót vagy valamit az int változóba ha érted
-
bandi0000
nagyúr
Az a baj hogy annyira nem foglalkoztunk függvényekkel csak átfutottunk rajta, igazábóllehet növekvőbe kéne rakni a tömb elemeit karakter szerint és visszafelé indulnék akkor meglenne a leghosszabb szó
Hogy nézne ki a növekvőbe rakás függvénybe? Az a része érdekelne hogy milyen változóba kell megkapnia az értéket, mert pl 1-1 változót tudnékkezelni de itt a tömb elemeire kell hivatkozni illetve annak értékét kapja majd
-
bandi0000
nagyúr
válasz
Jester01 #5360 üzenetére
2010.10-es érettségi
Röviden tömören, az egész anagrammákról szól
van egy tömbböm benne vannak a szavak, meg kell keresni a legtöbb karakterből állót, és amikor meg van akkor ki kell írni, persze úgy hogy az anagrammáit is vele írjam (tehát ugyan abból a 10 betűből álló szavakat ami benne van a listába)
csak ugye gondolom van több 10 karakterű szó aminek több ugyan ennyi betűből álló anagrammája van
-
bandi0000
nagyúr
válasz
zsambek #5357 üzenetére
6. feladatra van valami jó tipped?
Nem tudom hogy kezdjek neki, vagyis oké megkeresem a legnagyobb karakterszámút, az 10, nekem csak az jutott eszembe, hogy az összes 10 elemű szót kidobom egy új tömbbe, és ott kezdem elölről az össze hasonlítgatást, mint az elején, amit megtalált kinullázom és legközelebb nem találja meg, csak ez megint vagy +50 sor
-
bandi0000
nagyúr
válasz
zsambek #5351 üzenetére
megmondom őszintén közbe megcsináltam mialatt válaszoltál
nem hiszem hogy egyre gondoltunk de működik, az az igazság hogy így ránézve egyáltalán nem bonyolult de amíg kiszenvedtem az sok volt, nevetséges de sehol se növeltem a j-t és ez akasztotta meg mindig
for(i=0;i<strlen(szo);i++)
{
j=0;
while(j<26)
{
if(szo[i]==ang[j]) j=26;
else
{
if(szo[i]!=ang[j] && ang[j]=='0') { ang[k]=szo[i]; k++; j=26; }
else j++;
}
}
}igazából még egy kis szövegértelmezési gondom van
2010.10-es érettségit csinálom, anagrammákat kell keresni, első feladat volt a bekért szó különálló karaktereit megszámolni és kiírni, a második a forrásfájlba lévő szavak abc sorrendbe írás, és a 3. meg az hogy kérjek be 2 szót és döntsem el anagramm e, és valahogy nem jön össze a kép, hogy a 2 szó egymásnak anagrammái e, vagy az abc sorrendbe rendezett szavak közül van e anagrammája,
Kérjen be a felhasználótól két szót, és döntse el, hogy a két szó anagramma-e! Ha azok
voltak, írja ki a képernyőre az „Anagramma” szót, ha nem, akkor pedig a „Nem
anagramma” szöveget! -
bandi0000
nagyúr
válasz
zsambek #5349 üzenetére
/*
printf("4.Feladat\n");
printf("Kerek egy szoveget:"); gets(szo); // i=4 1<0
for(i=strlen(szo)-1;i>0;i--)
{
for(j=0;j<i;j++)
{
if(szo[j+1]<szo[j])
{
tmb=szo[j+1];
szo[j+1]=szo[j];
szo[j]=tmb;
}
}
}
for(i=0;i<strlen(szo);i++)
printf("%c",szo[i]);*/hibátlanul rendez, igazából a kiíratást csesztem el, %s-el akartam kiíratni a karaktereket nem %c-vel
de van még egy technikai kérdésem, van egy olyan feladat is hogy bekért szóból állapítsam meg hány különböző karakter van, elvileg angol ABC betűire kéne csak gondolnom, arra gondoltam, hogy felveszek egy 26 elemű tömböt for ezt mindig vizsgálja, hogy a szó mondjuk első betűje benne van e, ha nincs akkor beleírja és így tovább, csak ha ezt a tömböt felveszem, tmb[26], és nem rakok bele semmit akkor mi van? akkor is helyesen tudná vizsgálni? vagy fel kéne tölteni valami karakterrel ami biztos nincs benne?
-
bandi0000
nagyúr
válasz
EQMontoya #5343 üzenetére
Köszi teljesen egyértelmű és azt is csináltam, számokkal tudok buborékrendrzni de betűvel nem próbáltam soha, a bemásolt kód elvilrg az is, tehát ha ugye egyik betű nagyobb mint másik akkor cserélgesse, csak nem akar működni, ha benne hagyom a for ba a -1et akkor kidob exe hibával ha nincs benne akkor sztem átlép a foron, vagy kitörli a szöveget
Másik tömböt nem csináltam csak egy tmb karakteres változot vettem fel amibe ideiglenesen tárolom az egyes betűket
-
bandi0000
nagyúr
hali
Remélem nem zavartok el, lenne egy kis gondom, érettségi előtt állok ,és a karakteres kezelés nem a szívem csücske, lenne egy olyan problémám hogy, röviden bekérek egy szavat a szo[20] tömbbe, és a szó betűit kell abc sorrendbe rendezni, ezt így csináltam:
tehát char szo[20], tmb(ez lenne egy csere változó amibe eltárolok 1 betűt ideiglenesen)for(i=strlen(szo)-1;i>0;i--)
{
for(j=0;j<i;j++)
{
if(szo[j+1]<szo[j])
{
tmb=szo[j+1];
szo[j+1]=szo[j];
szo[j]=tmb;
}
}
}
for(i=0;i<strlen(szo);i++ printf("%s\n",szo[i]);igazából semmit nem csinál, a szót bekéri valszeg meghalhat már a for-ál is, bár eddig kiírta a szöveget változatlanul de most már azt se csinálja
-
bandi0000
nagyúr
hali
Olyan problémám lenne hogy az a feladat hogy van egy random számokkal teli tömb és egyesével meg kell vizsgálni hogy a tömb-ben lévő szám melyik négyzetszámhoz van legközelebb nah én eljutottam ideáig de az a baj hogy mindig ugyanazokat írja ki a szám mellé
#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
int main()
{
FILE *f;
f=fopen("D:\\2000.txt","r");
int i,tmb[2000],a=1,b=2,c;
for(i=0;i<2000;i++)
{
fscanf(f,"%d",&tmb[i]);
}
while(!(a<tmb[i] && b<tmb[i]));
{
a=a*2;
b=b*2;
}
// c=(tmb[i]-a)<(tmb[i]-a);
for(i=0;i<2000;i++)
printf("\n%d %d %d",tmb[i],a,b);
system("pause");
} -
bandi0000
nagyúr
hali
int main()
{
char tmb[10];
int i,x=0;
for(i=10;i>=1;i--)
{
scanf("%d",&tmb[i]);
if (tmb[i]==1)
{
x=x*2+tmb[i];
}
if (tmb[i]==0)
{
x=x*2+tmb[i];
}
}
printf("%d\n",x);
system("pause");
}itt tartok a feladattal lényegében számrendszer átalakítás 2-ből 10 be csak annyi lenne a gond hogy úgy kellene feltölteni a tömböt hogy beírom a 10 számjegyes számokat (1,0) és nem egyesenként ütöm be hanem az egészet leírom és betölti 1-sével a tömbbe
-
bandi0000
nagyúr
Elég barbár módszer
De ezen az elven megírható e egyszerűbben
(2-es számrendszerből 10-be konvertálás)
int tmb[10],i,x=1,a;
for(i=0;i<10;i++)
{
scanf("%d",&tmb[i]);
}
if(tmb[0]==1)
{
x=x+512;
}
if(tmb[1]==1)
{
x=x+256;
}
if(tmb[2]==1)
{
x=x+128;
}
if(tmb[3]==1)
{
x=x+64;
}
if(tmb[4]==1)
{
x=x+32;
}
if(tmb[5]==1)
{
x=x+16;
}
if(tmb[6]==1)
{
x=x+8;
}
if(tmb[7]==1)
{
x=x+4;
}
if(tmb[8]==1)
{
x=x+2;
}
if(tmb[9]==1)
{
x=x+1;
}
printf("10-es szamrendszerben:%d\n",x);
system("pause");
} -
bandi0000
nagyúr
válasz
Jester01 #3553 üzenetére
na jól van ez nekem magas szerintem úgy megcsinálom ahogy kitaláltam így leg elhiszi a tanár hogy egyedül csináltam
csak annyit kérek hogy hogy tudom leírni azt hogy én adjam meg a tömb elemeit?
for(i=0;i<5;i++)
{
scanf("%d",&x);
tmb[i]=x;
}
printf("%d\n",tmb[i]);
így próbáltam de nem jó -
bandi0000
nagyúr
hy
ismét házi feladat... -.-
Szóval az a feladat h C nyelven meg kell írni hogy bekérek egy max 10 elemű 2-es számrendszerbeli számot amit átalakít 10-es számrendszerbelire
Én úgy gondoltam hogy 10 elemű tömb abba betöltöm a számokat egyesével tehát az 1/0-kat
és visszafelé adok nekik értéket tehát a tömb első eleme 512 őt ér a 2. az 256 ot és igy tovább 10 ig aztán ahol 1 es van annak az értékét adja össze kb 10 if
Szóval jol gondolom vagy nem van egyszerűbb megoldás vagy nem? -
-
bandi0000
nagyúr
while(a==0)
{
z=x%2;
if(z==1)
{
for(i=0;i<14;i++)
{
tmb[i]=1;
}
}
if(z==0)
{
for(i=0;i<14;i++)
{
tmb[i]=0;
}
}
if(x==0)
{
a=1;
}
}
én meg hirtelen ezt találtam ki ez hülyeség mi?
vagyis én ug ygondoltam hogy a while addig ismételje amig nem lesz az x=0, és akkor a while-ban átírja az a-t 1 re és elvileg meg szakad a ciklus nem? -
bandi0000
nagyúr
Érteni értem de azt hogy tudom leírni hogy maradék lett e vagy sem?
-
bandi0000
nagyúr
válasz
kingabo #3477 üzenetére
köszönöm bár már nem kell de ha akarsz segíteni van egy másik feladat aminek az a lényege hogy most bekérek egy legfeljebb 4 jegyű számot és azt átírja 2-es számrendszerbelibe
tehát pl beírok egy 10-est akkor ő kidobja hogy 1010
Van egy megoldási lehetőség a tegnapihoz hasonlóan hogy kiirom hogy ha 9000-8000-7000 stb mit kell kiirnia és ugyan úgy kivonom belőle, de biztos van egyszerűbb megoldás is mert ennek az a hibája hogy ki kéne számolnom hogy a 6000 pl hogy néz ki 2 es számrendszerben és igy tovább
a tanár azt mondta hogy bontsuk fel asszem hexadecimálisnak hívják amikor a kettes számrendszert felosztjuk 4-sével tehát: pl 011001010101 ez igy nézne ki : 0110|0101|0101|
és akkor az x számot felbontom számjegyekre és megvizsgálom hogy ha az 1-ő számjegy 9 akkor irja ki a kettes számrendszerbeli átváltását a 9-nek tehát akkor elsőnek kiirná hogy 1001 és akkor vizsgálja a 2.3.4. elemét a számnak de szerintem ez nem jó így -
bandi0000
nagyúr
tehát akkor mit kellene irni?
am meg még azt láttam hogy ha beírom h 566 akkor átmegy 500 ra jó a DC megy tovább 50 nél nagyobb a 66 igen és akkor beirja hogy LC holott a 60 LXamúgy van még 1 fajta ezt oszttársam csinálta ez igy jó vagy hülyeség?
int main(){
int k=0,j,h,a,sz1=0,sz2=0,sz3=0,sza1=0,sza2=0,sza3=0,I=1,II=2,III=3,IV=4,V=5,IX=9,X=10,XL=40,L=50,XC=90,C=100,CD=400,D=500,CM=900,M=1000;
printf("Adj meg egy szamot 1 es 1000 kozott:");
scanf("%d",&a);
sz1=a/100;
sz2=(a-sz1*100)/10;
sz3=((a-sz1*100)-sz2*10)/1;
printf("A Megadott szam a:%d\n",a);
printf("sz1:%d\n",sz1);
printf("zs2:%d\n",sz2);
printf("sz3:%d\n",sz3);
for (k=0;k<sz1;k++) printf("C");
for (j=0;j<sz2;j++) printf("X");
for (h=0;h<sz3;h++) printf("I");
system("pause");
//getchar();
} -
bandi0000
nagyúr
válasz
sztanozs #3459 üzenetére
while(x>1000)
{
printf("M");
x=x-1000;
}
if(x>900)
{
printf("CM");
x=x-900;
}
if (x >= 500)
{
printf("DC");
x = x - 500;
}
if (x>=400)
{
printf("CD");
x=x-400;
}
while (x>=100)
{
printf("C");
x=x-100;
}
if (x>=90)
{
printf("XC");
x=x-90;
}
if (x>=50)
{
printf("LC");
x=x-50;
}
if (x>=40)
{
printf("XL");
x=x-40;
}
while (x>=10)
{
printf("X");
x=x-10;
}
if (x=9)
{
printf("IX");
x=x-9;
}
if (x>=5)
{
printf("VL");
x=x-5;
}
if (x=4)
{
printf("IV");
x=x-4;
}
if (x>0)
{
printf("I");
x = x - 1;
igy se jó ha segít akkor fel tudom rakni az egész programot DEV C be csinálom -
bandi0000
nagyúr
if(x>1000)
{
printf("M");
x=x-1000;
}
if(x>900)
{
printf("CM");
x=x-900;
}
if (x >= 500)
{
printf("DC");
x = x - 500;
}
if (x>400)
{
printf("CD");
x=x-400;
}
if (x>100)
{
printf("C");
x=x-100;
}
if (x>90)
{
printf("XC");
x=x-90;
}
if (x>50)
{
printf("LC");
x=x-50;
}
if (x>40)
{
printf("XL");
x=x-40;
}
if (x>10)
{
printf("X");
x=x-10;
}
if (x=9)
{
printf("IX");
x=x-9;
}
if (x>5)
{
printf("VL");
x=x-5;
}
if (x=4)
{
printf("IV");
x=x-4;
}
if (x>0)
{
printf("I");
}hát így nem jó...vagy mindegyik if hez oda kéne irni az =-őt is?
-
bandi0000
nagyúr
válasz
sztanozs #3453 üzenetére
if (x>400)
{
printf("CD");
x=x-400;
}
continue;így gondoltad vagy ne zárjam le az if-et csak a végén az összeset?
mert ebben az esetben ezt irja: continue statement not within a loop
vagy netán kell ennek egy függvény?Am bocs hogy ilyen értetlen vagyok de nem tanítják meg rendesen de elvárják hogy megcsináljuk amit pl elöbb leírtál hogy úgy irjam le nem láttam még olyat csak úgy tudom ahogy én csináltam sajnos...
-
bandi0000
nagyúr
válasz
sztanozs #3450 üzenetére
if(x>1000)
{
printf("M");
x=x-1000;
if (x > 500)
printf("DC");
x = x - 500;
if (x>400)
{
printf("CD");
x=x-400;
if (x>100)
{
printf("C");
x=x-100;
if (x>90)
{
printf("XC");
x=x-90;
if (x>50)
{
printf("LC");
x=x-50;
if (x>40)
{
printf("XL");
x=x-40;
if (x>10)
{
printf("X");
x=x-10;
if (x=9)
{
printf("IX");
x=x-9;
if (x>5)
{
printf("VL");
x=x-5;
if (x=4)
{
printf("IV");
x=x-4;
if (x>0)
{
printf("I");
x=x-0;
igy irtam igy gondoltad? -
bandi0000
nagyúr
-
bandi0000
nagyúr
hali
kérdés az hogy olyan feladatom van hogy bekérek egy 1 vagy 2 vagy 3 jegyű számot és azt átírja római számokká
odaáig jutottam hogy bekérem a számot és szétválsztja számjegyekre de nem tudom hogy csináljam tovább azt hogy átírja am a szám 1000 ig lehet
#include<conio.h>
#include<stdio.h>
#include<stdlib.h>main()
{
int i,szam,szamj1,szamj2,szamj3;scanf("%d",&szam);
printf("A szam: %d",szam);szamj3=szam/100;
szamj2=(szam-szamj3*100)/10;
szamj1=((szam-szamj3*100)-szamj2*10);}
printf("szazas: %d tizes: %d eggyes: %d\n",szamj3,szamj2,szamj1);system("pause");
}
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Hálózati / IP kamera
- Samsung Galaxy A54 - türelemjáték
- Android alkalmazások - szoftver kibeszélő topik
- World of Tanks - MMO
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- ASRock lapok általában
- Milyen egeret válasszak?
- sziku69: Fűzzük össze a szavakat :)
- Borderlands 2
- Riasztó topik
- További aktív témák...
- Üzletből, garanciával, Macbook Pro Retina 14" 2021, M1 32GB RAM/1TB SSD Space gray
- HP EliteBook x360 830 G8 Core i5 1145G7 2.6GHz/16GB RAM/512GB
- UF Lenovo Yoga 9i x360 Érintős Hajtogatós Laptop Tab 14" -60% i7-1360P 16/1TB Iris Xe 2,8K OLED 90Hz
- Lenovo Yoga 9i x360 Érintős Hajtogatós Laptop Tab 14" -60% i7-1260P 16/512 Iris Xe 2,8K OLED 90Hz
- Új DELL Inspiron 16 Fémházas Multimédiás Laptop 16" -40% Ryzen 7 8840U 8mag 16/1TB FHD+ IPS
- Csere-Beszámítás! Asztali számítógép játékra! I5 14400F / RX 6900 XT 16GB / 32GB DDR5 / 1TB SSD
- Samsung Galaxy A32 4G 128GB, Kártyafüggetlen, 1 Év Garanciával
- AKCIÓ! Google Pixel 9 Pro 5G 128GB 16GB mobiltelefon garanciával hibátlan működéssel
- Eladó szép állapotban levő Huawei P30 Pro kék 6/128GB 12 hónap jótállással!
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RTX 5060 Ti 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged