Új hozzászólás Aktív témák
-
artiny
őstag
Megszeretném tanulni a C programozást. Olvasom ezt:
http://kr-c.freeweb.hu/
(KERNIGHAN - RITCHIE A C programozási nyelv)Fejezet végén van olyan,hogy probald meg te is pl.:
Hello world kiírást. Ezeket a feladatokat amik vannak gyakorlás képpen a könyvben - ezeket szeretném kipróbálni.Melyik programban kell beírni? (mint pl.pascal nyelvnel a pascal programba) -
artiny
őstag
C prog. -hogyan tovább (visszafele számoljon a ciklus)?
Feladat egy olyan karacsonyfa kirajzolasa,aminek emeletei 2 vel novekszik(sora)
http://img442.imageshack.us/img442/7364/unlediq.png#include <stdio.h>
#include <stdlib.h>
int main()
{
int i,j,x,a;
scanf("%d", &x);
for (a=1;a<=3;++a){
for( i = 1; i <= x; i += 2 )
{
for( j = i; j < x; j+=2 )
{
printf(" ");
}
for( j = x-i; j < x; j++ )
{
printf("*");
}
for( j = i; j < x; j+=2 )
{
printf(" ");
}
printf("\n");
}
}
return 0;
}ez a progi tudja aztot,hogy megadom,hogy pl. 10 ...akkor addig irja a piramist míg 10 csillag kinem jon és ezt háromszor egymas ala megcsinálja.
Ezt ugy atírni,hogy pl. 10 et megadok és visszafele
a legutolso "emelet"-ől kezdve rajzolja ki. Majd az alatta lévő már csak 8 legyen, és így tovább.gondoltam olyanra,mint a pascalban van,hogy for downto ...szoval visszafele számoljon...de mikor felcsereltem a for ban a kiindulast es a végértéket a csillagok ossze-vissza futkostak a kepernyon..majd egy masik probalkozasnal csak siman a gorgeto lefutott a kepernyo aljara es semmit nem csinalt.
-
artiny
őstag
C programot átírni, valaki megtudná csinálni?
Van egy alap program:
ez egy szotar akar lenni..
Randomban adja a magyar szavakat es angolra kell forditani. Ha nem jo akkor kiirja a helyes megoldast. MIkor kilepunk a programbol akkor irja ki azokat a szavakat amire rosszul válaszotltunk.Itt a magyar vezioja /Szaab nevű programozó érdeme/:
http://pastebin.com/ViFeNimBItt pedig a szlovak,amiben több minden meg van valositva/be van fejezve/
http://pastebin.com/jbP8N18FEzt a programot kell átiri:
Olyan feladat van,hogy az előző szótárt kell át írni,hogy ezt a fájlt CSV /ezt kell használni/ olvassa be:
http://www.mediafire.com/?057r7i17uklqi7tEl kell tárolni a helyes/nem helyes válaszok számát egy csv fájlba/azt hiszem hogy a slovnik.csv fájlba/ és dolgozni/számolni vele ha újra belép a felhasználó. A program engedélyezi/lehetővé teszi ,hogy újabb szavakat tudjon a felhasználó elmenteni a szótár fájlban és azokat abcd szerint lesznek majd sorba téve.
A baj hogy mar az elejen elakadtam...
Ha beolvasom a csv fájlt:
FILE *doo = fopen("slovnik.csv", "r");
ekkor:
hlboko;deep;0;0igy teszi ki nem pedig csak a hlboko szavat.Hogyan kell megcsinalni hogy csak a hlbko -t irja ki?
-
artiny
őstag
CSV fájl szétdarabolása strtok () függvény segítségével?
Ilyan adat szerepel a csv fájlban.akcia;action;0;0
autobus;bus;0;0
budova;building;0;0
celkom;quite;0;0
centrum;centre;0;0ezt csv fajlban hogyan kell szetdarabolni?
Beolvasas a csv fájlnak és szetdarabolas majd kiiratas..hogyan kéne?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>int main() {
FILE *doo = fopen("slovnik.csv", "r");
fclose(doo);
return 0;
}Strtok()
Example:
char str[] = "now # is the time for all # good men to come to the # aid of their country";
char delims[] = "#";
char *result = NULL;
result = strtok( str, delims );
while( result != NULL ) {
printf( "result is "%s"\n", result );
result = strtok( NULL, delims );
}OUTPUT:
result is "now "
result is " is the time for all "
result is " good men to come to the "
result is " aid of their country" -
artiny
őstag
tudtok segiteni..egy olyan felaladgyujtemeny kene ami kezdoknek programok vannak es megoldasokkal egyutt? C ben
-
artiny
őstag
válasz WonderCSabo #3030 üzenetére
igen sajnos nem sikerult...
ezert most neki allok minden fele ebooknak ami van C bol es elolvasom oket ..majd gyakorlasnak szeretnek egy feladatgyujtemenyt hogy ha nem megy a porgram akkor legalabb lassam,hogy kellet volna...
-
artiny
őstag
Olyan progit akarok,ami egy kisebb szamot...harmadik gyokre emel amit beolvassunk a billentyuzetrol...de mikor megadok egy szamot...mindig ketszer keri be a szamot mire kiirja:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
int a;
scanf("%d\n",&a);
a= a*a*a;
printf("%d\n",a);
return 0;
} -
artiny
őstag
/C/ hogyan irjuk meg olyan feladatokat amik ugy szolnak, pl. irjon programot ami addig olvas be karaktereket amig nem adjuk meg az X -et?
Ez igy helyes,kezdo szintu megoldas,
Irjon progit ami addig olvasbe karaktereket amig nem adjuk meg az X -et,majd a vegen irja ki hanyszor szerepelt az A betu a beolvasottak kozott.
A kerdesem hogy nem all meg rogton a beolvasas pedig megadtam az X -t ,csak akkor ha az entert lenyomom akkor ertekeli ki hogy megadtam e vagy nem.#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define konstans 'A'
int main(void)
{
char b;
int szamlalo=0;
printf("Adjon meg betuket, az 'X' jelzi a veget \n\n");
while(b != 'X'){
scanf("%c",&b);
if (b ==konstans){
szamlalo++;
}
}
printf("\n A betuk szama: %d\n",szamlalo);
return 0;
}Probaltam volna gets(b); a scanf("%c",&b); helyett,de ez a hiba jon ki:
Compiling...
yt.cpp
D:\VB6\yt\yt.cpp(17) : error C2664: 'gets' : cannot convert parameter 1 from 'char' to 'char *'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
Error executing cl.exe.
yt.obj - 1 error(s), 0 warning(s)VB 6.0 hasznalok
[ Szerkesztve ]
-
artiny
őstag
válasz WonderCSabo #3041 üzenetére
koszi szepen
getchar,gets,scanf ezeken kozzul melyik a jo megoldas ilyes fajta feladatoknal?
-
artiny
őstag
válasz WonderCSabo #3045 üzenetére
köszi a válaszokat
esetleg erre:
pl. irj egy fol progit ami bekér egy számot,ha páros,akkor irja ki a felét a számnak ,ha nem akkor irja ki a haromszorosát es adjon hozzá egyet. Csak akkor áll le a progi ha valamelyik érték 1 -s lessz. pl. 3 számra ezt fogja kiirni 3, 10, 5, 16,
8, 4, 2, 1. Gondolod hogy valaha is megáll a program futása.#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
int a,d,egy = 1;
scanf("%d",&a);
do{
d=a%2;
if (d == 0)
{
printf("\n%d ",d=a/2);
}
else{
printf("\n%d ",d=a*3+1);
}
}while(d != '1');
return 0;
}
Erre jutottam,de valmi gond van vele -
artiny
őstag
válasz Korcsii #3050 üzenetére
(s)sanf itt a fscanf re gondoltal? mert a sanf t nem ismerem es nem adott semmit a google.
Valmi ilyesmit probaltam. Harom szamot beolvasni egy txt bol es azt osszeadni es kiiratni.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
int i;
int d;
FILE * f;
f = fopen("szam.txt","r");
while (( i= getc(f)) != EOF ){
fscanf(f,"%d",&i);
}
fclose(f);
printf("%d",d);
return 0;
} -
artiny
őstag
Hogyan lehet egy számot ami több számjegyből áll feldarabolni?
Ilyet megirni :
3-mal osztható az a szám, melynek számjegyeinek összege 3-mal osztható. (Úgy is meg lehet fogalmazni, hogy 3-mal osztható az a szám, amelynek a 3-mal nem osztható számjegyeinek (vagyis a 0, 3, 6, 9 számjegyeket nem számolva) összege osztható hárommal (például a 3694692306 szám osztható 3-mal, mert hárommal nem osztható számjegyeinek összege 4+2=6 osztható 3-mal))
-
artiny
őstag
válasz kingabo #3057 üzenetére
Helo
"Ezt kell addig csinálnod, amíg végül 0-t nem kapsz." -ezt nem nagyon ertem,
hogyan tudok beljebb halladni,hogy nem csak az utolso szamot tudjam "levagni",ellenorizni?
pl.: 151
a = num%10; // erdemeny: 1
b = num%100; // erdemeny: 51
itt a baj hogy az 5 utan az 1 is ott van...hogy lehet h csak az 5 .st irja ki?
[ Szerkesztve ]
-
artiny
őstag
válasz kingabo #3061 üzenetére
Köszönöm a segítségeteket,sikerült így most már megírni /talán jól is /
#include <stdlib.h> // for itoa() call
#include <stdio.h> // for printf() call
int main() {
int num,i,mard,erd = 0,num2;
printf("Adjon meg egy szamot \n");
scanf("%d",&num);
num2=num;
for(i = 1; ; i++){
mard = num%10;
// printf("mardadek %d\n", mard);
if(!(mard == 0 || mard == 3 || mard == 6 || mard == 9)){
erd = erd + mard;
}
num = num/10;
// printf("%d\n", num);
if(num==0){
break;
}
}
printf("Szamjegyek osszege /0,3,6,9 kivul/ %d\n", erd);
if(erd%3 == 0){
printf("%d oszthato 3 .al",num2);
}
else{
printf("%d nem oszthato 3 .al \n\n",num2);
}
return 0;
} -
artiny
őstag
kingaboezt a feladatot csak gyakorlas keppen talaltam ki magamnak,hogy lehetne megirni.
TXT knél mikor melyiket használjuk/ printf, fprintf, scanf, fscanf putchar, getchar, fputc, fgetc fpots, fgets /?
printf, - ha ki akarok íratni valamit txtbol pl. egy getc bol
fprintf, - ha egy beolvasott karaktert kiíratok,elmentek egy txt be
scanf, - érteket adok egy változónak
fscanf,
putchar, - egy darab karaktert megjelenít a képernyőn,
getchar, - egy darab karaktert beolvas egy txtbol,
putc,
getc,
fputc,
fgetc,
fputs,
Amihez nem irtam azzal nem vagyok tisztába teljesen vagy mar teljesen összekavart.
www.cplusplus.com/
cpprefence oldalakon mar átnéztem többször is de....nem értem teljesen stb ...
feladatokhoz kell ez az összegzés nekem hogy tudjam mikor melyiket kell használni altban.[ Szerkesztve ]
-
artiny
őstag
C - Mi történik ha egy tömbre mutató pointner értékét eggyel növelem, majd kiíratom?
Mi történik ha egy tömbre mutató pointner értékét eggyel növelem,majd kiíratom .Ezután egy új értéket adok a tömbnek.Szerintem:
Ha eggyel növelem a mutatót eggyel tovább ugrik a memóriában ahol el van mentve a pointner.Ha új értéket adok utána - nos nem tudom ,uj értéket adtam a pointernek,de nem változott meg az értéke teljesen - maradt a régi értékéből és az újból is ? de viszont a memoria cime nem változott a pointernak
#include <stdio.h>
#include <conio.h>int main()
{
char str1[ ] = "abc";
char *p;
p = str1;
printf("1. ertek{pointnera}: %p\n",p);
printf("1. ertek{pointnera}: %s\n\n",p);
p++;
printf("2. ertek{pointnera}: %p\n\n",p);*p='df';
printf("uj erteke : %s\n",p);
printf("uj erteke: %p\n\n",p);return 0;
} -
artiny
őstag
Valaki írt már chat programot C ben,azt tudna segíteni valmiben nekem?
[ Szerkesztve ]
-
artiny
őstag
válasz Jester01 #3167 üzenetére
Ez alapján kéne:
http://ap.urpi.fei.stuba.sk/ap/blok3.phpEddig jutottam:
http://pastebin.com/QJmqYNXVazt csinálja:
van az alap port beallitas es azt megvaltoztatom a megadottra,majd beallitja a timeoutot es beker egy karaktert. Viszont a fogadast nem tudom megcsinalni es a karakter bekeres is egy vegtelen ciklus (valami alapjan lekene meg allitanom)[ Szerkesztve ]
-
artiny
őstag
eddig jutottam a programban:
[link]char Data[100];
scanf("%s",&Data);
int bite=strlen(Data);
while(1){
WriteFile(
hCom, // Handle portu, ktory ste otvorili CreateFile
&Data, // Smernik (pointer) na data, ktore chcem vysielat
bite, // Pocet bytov, ktore chcem vyslat
&Pocet, // Smernik (pointer) na pocet vyslanych dat
NULL); // Musi byt NULL
if( Pocet != bite ) // Ak pocet prenesenych dat nesuhlasi
printf("\n Chyba: Zapis na port sa nepodaril.\n");
// a zasa nasleduje CloseHandle(hCom); a potom exit...
else
printf("\n OK.");
printf("ja: %s", Data);
//--------------------Readfile-----------------------------------------
DWORD Pocet1=0; // Poc(et prijatých dát
//unsigned char Data; // Sem ulož prijatý znak
PurgeComm(hCom,PURGE_TXCLEAR | PURGE_RXCLEAR);
ReadFile(
hCom, // Handle portu, z ktorého c(ítame
&Data, // Pointer na buffer, kam ukladáme prijaté dáta
1, // Poc(et bytov, na ktoré c(akáme
// &d, // Pointer na skutoc(ný poc(et prijatých dát
&Pocet1, // Pointer na skutoc(ný poc(et prijatých dát
NULL); // Musí byt( NULL
// Funkcia ReadFile tu teraz c(aká, až kým niec(o
// nepríde, ale mőže aj skonc(it( bez zachyteného znaku,
// ak medzitým vypršia timeouty.
if( Pocet1 != 1 ) // Ak poc(et prenesených dát nesúhlasí
printf("\n Chyba: Citanie z portu nedalo nic.\n");
else
printf("\n OK, z portu sme uspesne prijali [%c].\n",Data);ezt a két részt,hogyan lehetne összefűzni CreateThread -l?
-
artiny
őstag
válasz ArchElf #3191 üzenetére
Igen szlovák kommentek...
itt van esetleg aki kiprobalja,egy virtual port
http://www.fabulatech.com/virtual-serial-port-kit-download.html
A baj a progival,hogy nem tudom miért nem fogadja amit küldök. -
artiny
őstag
Szerver kliens programkodja van valkinek?
C ben irt szerver kliens program amiben tobb kliens egy szerverrel komunikál.(egyszeru komunikacio . szoveg vagy számolás -
-
artiny
őstag
válasz Jester01 #3806 üzenetére
A cliens kuld valamit a servernek , a server tovabb kuldi egy masik kliensenk ami a kerest vegre hajtja majd vissza kuldi a szerver a kapott eredmenyt. (összeadást , pl. 1 + 1)
Ezen az oldalon van egy server-kliens
http://www.prasannatech.net/2008/07/socket-programming-tutorial.html
C tipusu
tcpserver.c
tcpcliens.c
Ezeket lefutattam,mukodnek (szoveget tudok kuldeni ide oda. Ubuntu alatt teszteltem)[ Szerkesztve ]
-
artiny
őstag
válasz kingabo #3808 üzenetére
Ez már olvastam de az elején még teccet,hogy nem definiciókként írja le a dolgokat. Csak a kozepe fele már elvesztem a szovegben. Masodszor is nekifutottam akkor már szinte mindent értettem. De a végén nem tudtam ossze hozni a programot. (chat programnál én is olvastam már egyszer ezeleott )
-
artiny
őstag
Hol kellene megváltoztatni (hogyan) a szenzor érzékenységét - accelerometert 2g-re?
Egy IMU-9150 ,ezt a könyvtárat használom a szenzorhoz.A register map, a datasheet a szenzorhoz.
Találtam egy ilyen részt a kódban - ebbena fáljban:
..
..
/* Full scale ranges. */
enum accel_fsr_e {
INV_FSR_2G = 0,
INV_FSR_4G,
INV_FSR_8G,
INV_FSR_16G,
NUM_ACCEL_FSR
};
...
...a másik rész
const struct test_s test = {
.gyro_sens = 32768/250,
.accel_sens = 32768/16,
.reg_rate_div = 0, /* 1kHz. */
.reg_lpf = 1, /* 188Hz. */
.reg_gyro_fsr = 0, /* 250dps. */
.reg_accel_fsr = 0x18, /* 16g. */
.wait_ms = 50,
.packet_thresh = 5, /* 5% */
.min_dps = 10.f,
.max_dps = 105.f,
.max_gyro_var = 0.14f,
.min_g = 0.3f,
.max_g = 0.95f,
.max_accel_var = 0.14f
};Itt ennél a résznél elég lenne .accel_sens = 32768/16, pl. a 32768/2 -vel osztanom és akkor már 2+/-g lenne beallitva az accelerometer érzékenységére ?
Ú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!
- Szevam: Érzelmi magabiztosság/biztonság - miért megyünk sokan külföldre valójában?
- Alkalmazásbemutató: Keep
- Gaming notebook topik
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- Debrecen és környéke adok-veszek-beszélgetek
- Futott egy Geekbench kört egy új HTC készülék
- Apple notebookok
- Anime filmek és sorozatok
- gban: Ingyen kellene, de tegnapra
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- További aktív témák...