Hirdetés
-
Beúszott az új Black Shark GS3 Kínába
ma A Xiaomi márkája robosztus órának kinéző csomagolásban kínál olcsón aktivitáskövetőt.
-
Gyorsulást hoz az MSI Claw új szoftverfrissítése
ph Az MSI a későbbi frissítéseket is egyszerűbbé teszi az új BIOS által.
-
Végre Steamre tart a Sins of a Solar Empire II
gp A nyár folyamán véget ér az Epic Games Store exkluzivitása és a Valve rendszerében is megjelenik a teljes kiadás.
Új hozzászólás Aktív témák
-
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);
}
}[ Szerkesztve ]
Set The World On Fire!!!
-
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).Set The World On Fire!!!
-
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;
}Set The World On Fire!!!
-
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!
Set The World On Fire!!!
-
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);
}Set The World On Fire!!!
-
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;
}Set The World On Fire!!!
-
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: ");
}
}
}Set The World On Fire!!!
Ú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!
- Vivaldi (böngésző)
- Várható a HyperOS a Poco F3-ra is
- Skoda, VW, Audi, Seat topik
- SSD kibeszélő
- ASUS ROG Ally
- Android alkalmazások - szoftver kibeszélő topik
- A Colorful "fagyosan kompakt" alkatrészekkel megy elébe a nyárnak
- Milyen billentyűzetet vegyek?
- Hálózati / IP kamera
- Hardcore café
- További aktív témák...
- X1 Carbon 8th 14" FHD IPS érintő i5-10310U 16GB 512GB NVMe ujjlolv IR kam gar
- ELADÓ 8GB DDR4 M471A1G44CB0-CWE Samsung laptop memória
- Asus 22"-os FHD monitor kiárusítás!!! AkciÓ!
- JBL Xtreme 4 - Csomagolás bontott, garanciális, akár beszámítással
- Asus X512, Ryzen5 3500U, 12GB RAM, 500GB NVME, Radeon540X VGA, FullHD IPS, ujjlenyomat, megkímélt HU
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen