- Milyen TV-t vegyek?
- Ventilátorok - Ház, CPU (borda, radiátor), VGA
- Milyen széket vegyek?
- Milyen belső merevlemezt vegyek?
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Analóg fényképezés
- Forradalomi előrelépésként jellemzi az NVIDIA a DLSS 5-öt
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Apple MacBook
- Amlogic S905, S912 processzoros készülékek
Új hozzászólás Aktív témák
-
Steve-S
tag
válasz
cellpeti
#676
üzenetére
Hi! Itt az én verzióm, bár lehet nem a legtökéletesebb, nem vagyok valami nagy prof C-ből, de működik! Bár lehet már kicsit későn postolom.
Azért remélem segítettem valamit.#include <stdio.h>
int getline(char t[],int lim)
{
int i;
char c;
for(i=0; i<lim && (c=getchar())!=EOF && c!='\n'; i++)
t[i]=c;
return i;
}
main()
{
int s, i, osszeg, szamok;
char tomb[20];
printf("Adj meg egy 6 szamjegyu kodot: ");
while((s=getline(tomb,20))!=0)
{
osszeg=0;
szamok=0;
if(s>0 && s!=6)
{
printf("A kod nem 6 szambol all!\n");
printf("Adj meg egy 6 szamjegyu kodot: ");
continue;
}
if(s==6)
{
for(i=0; i<6; i++)
if(tomb[i]>='0' && tomb[i]<='9')
szamok++;
}
if(s==6 && szamok!=6)
{
printf("Nem jo a kod, csak szamokat tartalmazhat!\n");
printf("Adj meg egy 6 szamjegyu kodot: ");
continue;
}
if(szamok==6)
{
for(i=0; i<5; i++)
osszeg+=tomb[i]-'0';
}
if((osszeg%6)==(tomb[5]-'0'))
{
printf("Jo a kod!\n");
fflush(stdin);
printf("Adj meg egy 6 szamjegyu kodot: ");
}
else
{
printf("Nem jo a kod!\n");
fflush(stdin);
printf("Adj meg egy 6 szamjegyu kodot: ");
}
}
} -
Steve-S
tag
Hi all!
A kérdésem:
Van egy függyvény definíció: double tombatlag(double *tomb)
ez kiszámítaná a tömb eleminek az átlagát és visszaadja azt. Azt nem tudom hogy hogy kellene az elem összeadó ciklusnak megadni azt hogy meddig menjen, magyarán mennyi a tömb mérete, vagy hogy hol van a tömb vége, anélkül hogy ezt megadnánk a függvénynek paraméterként, vagy a ciklusváltozóban beírnám a feltételnél az elemszámot?
Itt van egy példa amelyben kiszámolja amennyiben tudom a tömb méretét, de nekem az a verzió kéne mikor nem tudom előre a méretet. Egyáltalán van erre valamilyen módszer C-ben? Sok mindent próbálgattam már, de eddig nem volt jó semmi.
double tombatlag(double *tomb)
{
double osszeg=0;
int j, db=0;
for(j=0;j<5;j++)
{
osszeg += *tomb++;
db++;
}
return osszeg/db;
} -
Steve-S
tag
Nah megvan, márcsak azt mondja meg valaki hogy miért fagy ki ez a program egyből miután elindítom? Fordításnál semmi hiba, függvény is elvileg jó! Akkor mi lehet a gond?

#include <stdio.h>
#include <string.h>void rendez(char **matrix)
{
int i, j;
char ideiglenes[20];for(i = 0; i < 10; i++)
for(j = 0; j < 10; j++)
{
if (strcmp(matrix[i], matrix[j]) < 0)
{
strcpy(ideiglenes, matrix[i]);
strcpy(matrix[i], matrix[j]);
strcpy(matrix[j], ideiglenes);
}
}
printf("\nRendezve: \n\n");
for(i = 0; i < 10; i++)
printf("%s\n",matrix[i]);}
int main(void)
{char *automarkak[10];
automarkak[0]="Mercedes";
automarkak[1]="Ferrari";
automarkak[2]="Audi";
automarkak[3]="Lada";
automarkak[4]="Chevrolet";
automarkak[5]="Ford";
automarkak[6]="Skoda";
automarkak[7]="Suzuki";
automarkak[8]="Opel";
automarkak[9]="Chrysler";rendez(automarkak);
} -
Steve-S
tag
Hi mindenkinek! Újabb kérdésem lenne. Egy olyan függvényt kell írnom ami egy előreinicializált mátrixot(ékezet nélküli szavakkal töltöm fel), névsor szerint rendez. Az algoritmus meg a lényeg megvan, de úgy kell csinálni hogy a fgv paramétere char ** típusú legyen. Na most ezt kellene nekem elmagyarázni hogy ez a dupla csillagos modszer hogy működik, pl. hogy hogy töltöm fel így a mátrixot ha ilyen típussal kell, mert ez sem sikerült még. Lehet kicsit láma kérés de nem igazán vágom. Ha valaki elmagyarázná jó lenne.
Köszi! -
Steve-S
tag
Ha ezt megmondja nekem valaki hogy miért nem működik normálisan ez a programom, akkor megközönném! Fordításnál semmi hiba nincs. Átnéztem már 100x az egészet de nem tudom mi a hiba. A feladat hogy bekérek egy egész számot, és átváltja a megadott számrendszerbe (2-9). A feladatot ily módon kell megoldani ahogy megcsináltam, tehát ne írjátok át ha lehet, csak nem tudom hogy miért nem működik megfelelően. Eredménynek csak hülye összevissza karaketerket ad ki.
#include <stdio.h>
#include <math.h>
#include <stdlib.h>char *valto(unsigned int szam, unsigned int szr)
{
char *eredmeny;
int n=floor(log(szam)/log(szr)+1);
int i=0;
eredmeny=(char *)malloc((n+1)*sizeof(char));while(szam>0)
{
eredmeny[n-i-1]=szam%szr;
szam/=szr;
i++;
}eredmeny[n]=0;
return eredmeny;
}int main(void)
{
unsigned int a,b;
char *kesz=NULL;printf("Adj meg egy egesz szamot: ");
scanf("%d",&a);
printf("Adj meg egy szamrendszert (2-9): ");
scanf("%d",&b);if(b<2 || b>9)
{
printf("\nNem jo szamrendszert adtal meg!\n");
exit(-1);
}kesz=valto(a,b);
if(kesz) puts(kesz);
if(kesz) free(kesz);return 0;
} -
Steve-S
tag
char *valto(unsigned int a, unsigned int b)
{
char *result;
int n=floor(log(a)/log(2)+1);
int i=0;
result=(char *)malloc((n+1)*sizeof(char));
do
{
a%b=result[n-i-1];
a/=b;
i++;
}
while(a!=0)
return result;
}Erről mit gondolsz? Nemfordítja le mert valami kínja van.
int n=floor(log(a)/log(2)+1);
Ez a sor elvileg azt csinálja hogy kiszámítja a tömb méretét (múlt órai feladatból van). -
Steve-S
tag
Hi mindenkinek!
Egy kis segítség kéne! ANSI C-ben kellene egy olyan programot csinálnom, hogy egy előjel nélküli egész számot beolvastatok, és ki kell iratni a számot az adott számrendszerben. Ez 2-es számrendszertől 9-esig lehet. Van olyan függvény amivel ezt meg lehetne oldani?
Elkezdtem, eddig itt járok, már csak a függvény kéne bele, de azt nem tudom hogy kéne, eléggé láma vagyok még a C-hez. Pls segítsetek ezt estig meg kéne oldanom, kötelező feladat, de valahogy nem boldogulok vele!

#include <stdio.h>
#include <stdlib.h>int main(void)
{
unsigned int a,b;
printf("Adj meg egy egész számot: ");
scanf("%d",&a);
printf("Adj meg egy számrendszert (2-9): ");
scanf("%d",&b);if(b<2 || b>9)
{
printf("Nem jó számrendszert adtál meg!");
exit(-1);
}
}
Ú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!
- 153 - Lenovo LOQ (15IRX9) - Intel Core i5-13450HX, RTX 4060 (ELKELT)
- 226 - Lenovo LOQ (15IRX10) - Intel Core i7-13650HX, RTX 5060
- Kihagyhatatlan ajánlat! Lenovo ThinkPad P14s Gen 5 Ultra 7 165H (vPro) 32gb DDR5 ram RTX500 ADA 3K
- Telefon felvásárlás!! iPhone 12 Mini/iPhone 12/iPhone 12 Pro/iPhone 12 Pro Max
- Lenovo ThinkPad L16 Gen 1 - 16" WUXGA IPS - Ultra 5 135U - 16GB - 512GB - Win11 - 2 év gari
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Azért remélem segítettem valamit.
De ez mi szar mán nem? 




