Új hozzászólás Aktív témák
-
PazsitZ
addikt
válasz [HUN]Zolee #146 üzenetére
(*U_mutato).nev
Az U_mutato-t a precedencia (elsőbbségi) szabály miatt kell zárójelbe tenni, mert ha nem tennénk a fordító azt hihetné, hogy ez egy U_mutato.nev változóra mutató pointer.
Mivel a C régi változatainak idejében elég gyakran volt szükség struktúra-mutatók használatára és kényelmetlen, zavaró volt minden egyes alkalommal zárójelezni, ezért kitaláltak egy új operátort, ez a -> (nyíl; egy mínusz jelből és egy ’nagyobb’ relációs jelből tevődik össze). Ennek használatával már nem kell zárójeleznünk:
U_mutato->nev
- http://pazsitz.hu -
-
PazsitZ
addikt
válasz ceginner #173 üzenetére
Hát, nekem is ki volt ez osztva mint lehetséges kötprog. Meg is csináltam, de nem tökéletes. Bizonyos inputoknál, valahol hibázik.
Most sajna nincs energiám belekezdeni még a saját kódom fejtegetésébe sem, de ha gondolod elküldhetem az én progimat, ha az segít valamit.- http://pazsitz.hu -
-
PazsitZ
addikt
válasz cellpeti #525 üzenetére
Haladsz a legnagyobb címlettől a legkisebbig. Ezeket berakhatod egy tömbbe. [20000,10000,5000...]
Ha az összeg nagyobb, mint a címlet: kivonod a címletet a pénzösszegből, letároloda címletet majd újravizsgálod.
Ha kisebb: kisebb címletre lépsz.
Ha a pénzösszeg nulla kiírod a letárolt címleteket.Szvsz ha aktualizálni akarod beolvasásnál szabd ki, hogy 5-re vagy nullára végződjön a pénzösszeg.
- http://pazsitz.hu -
-
PazsitZ
addikt
válasz cellpeti #527 üzenetére
Azért írtam oda, hogy "letárolod a címletet"
Bár osztással tényleg gyorsabb.
Megtaláltam egy régi pascalos forráskódom.
Ez bankautomata és csak pár értékes, de hátha segít:write('K‚rt ”sszeg:');readln(be);
x:=be mod 1000;
if x<=0 then begin
y:=(be div 1000);
if y mod 10>=0 then begin
ossz10:=y div 10;
be:=y mod 10;
end;
if y mod 5>=0 then begin
ossz5:=be div 5;
y:=be mod 5;
end;
if y mod 1>=0 then begin
ossz1:=y div 1;
be:=y mod 5;
end;
writeln('kiadand˘ cˇmletek:');
writeln('10000ft-os cˇmlet:',ossz10:8:0);
writeln('5000ft-os cˇmlet:',ossz5:8:0);
writeln('1000ft-os cˇmlet:',ossz1:8:0);
end
else begin
writeln('Minimum 1000,5000,10000ft-os cˇmletek vehet‹ ki');
end;[ Szerkesztve ]
- http://pazsitz.hu -
-
PazsitZ
addikt
Nekem fordul, fut.
Innen kimásolva egyedül a dupla fölülvonás vagy milyen karaktert hibázott.#include<stdio.h>
main()
{
int szam, jegy;
printf("Kérek egy egész számot:");
scanf("%d",&szam);
printf("\nA fordítottja: ");
do
{
jegy = szam % 10;
printf("%d",jegy);
szam /= 10;
} while ( szam != 0);
}mod: ma mindenki megelőz
[ Szerkesztve ]
- http://pazsitz.hu -
-
PazsitZ
addikt
válasz Fire/SOUL/CD #578 üzenetére
Azt hittem csak a böngésző barmolta el..., hogy nem volt kód-ban.
Bár tényleg fura dőlt idézőjel volt...- http://pazsitz.hu -
-
PazsitZ
addikt
Valamit biztos nagyon rosszul csinálok, de rég nem programoztam c-ben.
Szóval a lényeg az lenne, hogy átadjak egy stringet egy függvényből a main-be.
De ehelyett csak 1 karaktert hajlandó átadni .#include <stdio.h>
char back[5];
char input()
{
char in[5]="Hello";
printf("%s \n",in);
return *in;
}
int main(int argc, char *argv[])
{
*back = input() ;
printf("%s \n",back);
return 0;
}- http://pazsitz.hu -
-
PazsitZ
addikt
Köszönöm a válasz elnézést, hogy csak most reagálok, de nem megy
pár warning után:
main.c: In function `input':
main.c:9: warning: function returns address of local variable
main.c: In function `main':
main.c:14: warning: assignment makes integer from pointer without a castEgy Segmentation Fault (core dumped) üzenetet kapok csak
- http://pazsitz.hu -
-
PazsitZ
addikt
Hmm, azóta változtattam rajta. Tudom nagyon béna vagyok.
Amúgy most látom, hogy van külön linux c topik is. Én most épp solaris allatt fordítok.
Jelen pillanatban ezt kapom vissza:
Hello
ا��o
ebből:#include <stdio.h>
char *back;
char *input()
{
char in[6]="Hello";
printf("%s \n",in);
return in;
}
int main()
{
back = input();
printf("%s \n",back);
return 0;
}[ Szerkesztve ]
- http://pazsitz.hu -
-
PazsitZ
addikt
fordítók az első hsz-ben a Fordítóprogramok, fejlesztőkörnyezetek: után
Weboldalakhoz, főként ha pusztán HTML általi, statikus tartalmú oldalakat akarsz akkor egyáltalán nem szükséges programozási nyelv ismerete.
Ha pl. PHP alapú dinamikus oldalakat szeretnél gyártani, ahhoz már kell programozói tudás.- http://pazsitz.hu -
-
PazsitZ
addikt
válasz cellpeti #1121 üzenetére
Én így csinálnám:
#include<stdio.h>
int main() {
int c;
c = getchar();
while(c!=EOF)
{
if (c=='\t') printf("\\\\");
if (c=='\b') printf("\\\\");
if (c=='/') printf("\\\\");
else putchar(c);
c=getchar();
}
return 0;
}De nem biztos, hogy a legjobb megoldás, régen c-ztem.
[ Szerkesztve ]
- http://pazsitz.hu -
-
PazsitZ
addikt
Lehet amatőr kérdés, de a long int-et hogyan kell jelölni? Ugyan is ezt a warning-ot kapom:
feladat.c:53: warning: format ‘%u’ expects type ‘unsigned int *’, but argument 3 has type ‘long int *’, s bár lefordul, de szabványosan, mi lenne a long int jelölése?
google-ban nem tudom, erre pl hogyan kellene keresnem
printf("%u %u %u",a,b,c);- http://pazsitz.hu -
Ú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!
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Samsung Galaxy Watch4 és Watch4 Classic - próbawearzió
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
- Rövid előzetesen a S.T.A.L.K.E.R. 2: Heart of Chornobyl
- Dell notebook topic
- Hobby elektronika
- Kínai, és egyéb olcsó órák topikja
- Autós topik
- gban: Ingyen kellene, de tegnapra
- Milyen CPU léghűtést vegyek?
- További aktív témák...