- Microsoft Excel topic
- A pápa egyre jobban tart a romlott AI veszélyeitől
- Milyen program, ami...?
- Windows 10
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
- Otthoni hálózat és internet megosztás
- Milyen routert?
- Az USA nem akarja visszafogni Kína növekedését
- Xiaomi AX3600 WiFi 6 AIoT Router
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz WonderCSabo #2422 üzenetére
ja, bár igazából nem tiszta, mi olyan nehéz rajta, amikor még közöm nem volt a programozáshoz, akkor is próbálgattam ezeket a gombokat, mire valók, 5 perc szerkesztési idő azért elég sok mindenre, meg még van külön próbálkozásokra szánt topic is.
Sk8erPeter
-
j0k3r!
senior tag
válasz WonderCSabo #2568 üzenetére
ezt nem is neztem, pedig ebben a felevben eleg sokszor hasznaltam irasban, mivel kellett az RSA-hoz : )
de ha mar itt tartunk: google a baratunk[ Szerkesztve ]
some men just wanna watch the world burn...
-
j0k3r!
senior tag
válasz WonderCSabo #2577 üzenetére
valo igaz
(#2575) _ATi_1: en igy oldottam meg:
if(pid == 0)
{
while(j < m)
{
if(msgrcv(id, &u, sizeof(u.msg), (i + 1), 0777) == sizeof(u.msg))
{
u.mtype = (i + 2);
u.msg[0] = (u.msg[0] / u.msg[1]);
printf("%d\n", u.msg[0]);
msgsnd(id, &u, sizeof(u.msg), 0777);
++j;
}
}
}persze a j-t meg forkolas elott hoztam letre 0 kezdeti ertekkel.
[ Szerkesztve ]
some men just wanna watch the world burn...
-
Tecsa
aktív tag
válasz WonderCSabo #2581 üzenetére
Erre gondoltam csak nem sikerült össze hozni, de akkor még nekifutok.
Én csak elmondom a véleményem, nem értek hozzá, bár úgy látom az itt nem követelmény!
-
Tecsa
aktív tag
válasz WonderCSabo #2585 üzenetére
Közben megoldottam. Köszönöm a türelmetek.
Én csak elmondom a véleményem, nem értek hozzá, bár úgy látom az itt nem követelmény!
-
Jester01
veterán
válasz WonderCSabo #2628 üzenetére
Az is jó. Sőt, a while(str[i]) is elég, de azért a nullát szeretem kiírni.
[ Szerkesztve ]
Jester
-
Gyuri16
senior tag
válasz WonderCSabo #2631 üzenetére
mivel '\0'==0 ezert ez mindegy, bar nem tudom, hogy melyik megoldas a "legszebb".
lasd: [link]Nem vagyok egoista, csak uborkagyalu!
-
Karma
félisten
válasz WonderCSabo #2631 üzenetére
Egyébként a fordító (és a rendszer) szempontjából a karakterek is csak számok.
“All nothings are not equal.”
-
eriktoth
tag
válasz WonderCSabo #2810 üzenetére
Köszönöm ! De lenne olyan probléme, hogy 1 függvénybe, több műveletet végez el, és például van az első ami végzi a beolvasást, utána meg a második ami maga a számításokat és a kiirast, ezt hogyan tudnám ugy meghívni main-ba, hogy fusson, és ne csak ha az egész példát main-ba teszem, sajnálom, de kezdő vagyok és nekem ez elég magas :S
-
TheRolf
csendes tag
válasz WonderCSabo #2824 üzenetére
A build messages-be eddig is írta hogy "x errors, x warnings", szóval az oké.
Más: hogy lehet bekérni két egyjegyű számot így: "x y" és azt eltárolni két int formájában (n = x, m = y)? Már mindent kipróbáltam, a legjobb eredmény, hogy az első számot eltárolja, de a második helyére y-on kívül több számjegy kerül.
#include <stdio.h>
int main(){
int i,n,m;
char kar[4];
char en,em;
fgets(kar,4,stdin);
en = kar[0];
em = kar[2];
printf("%c %c\n",en,em);
n = atoi(&en);
m = atoi(&em);
printf("%d\n",n);
printf("%d",m);
return 0;
}az első printf is értelmes dolgokat ad ki, de utána az atoi-nál elromlik valami, és plussz számok jönnek be...
[ Szerkesztve ]
-
chabeee
tag
válasz WonderCSabo #2840 üzenetére
próbáltam már, ezt írja:
../main.c:115:15: error: lvalue required as left operand of assignment
../main.c:115:42: warning: value computed is not used [-Wunused-value]
make: *** [main.o] Error 1
for(i=n1 && j=0; i<counter && j<n2; i++ && j++) { -
chabeee
tag
válasz WonderCSabo #2843 üzenetére
jaj, köszönöm!
-
Jester01
veterán
válasz WonderCSabo #2866 üzenetére
Méginkább nyilván egyikre sincs szükség mert az előző tagból simán adódik a következő. Azt hiszem kingabo is erre célzott.
[ Szerkesztve ]
Jester
-
addikt
válasz WonderCSabo #2876 üzenetére
Ja igen, a string.h es a math.h headerek nem hasznalhatoak, elvileg csak az stdio.h es az stdlib.h, bocs, ezt elfelejtettem leirni.
Korcsii: Itt int-e konvertalja majd a char-t s azert lehet hasznalni a "<=" muveletet, igaz?
Nekem meg eleg fura, hogy szinte minden visszavezetheto es kezelheto int-kent.[ Szerkesztve ]
-
chabeee
tag
válasz WonderCSabo #2914 üzenetére
igen ennel a feladatsornal jo
-
addikt
válasz WonderCSabo #2932 üzenetére
Persze, includeoltam, gugliban rakeresve kismillio helyen irjak ezt a problemat, a megoldas mindenhol az, hogy forditsuk a "-lm" kapcsoloval, amivel valoban mukodik, de igy nem adhatom be a bironak mert nem azzal fogja forditani.
Kosz a linket, ha mar tudom, hogy melyik fogalmat takarja a jeloles akkor utananezek a fogalomnak(pl. kozbe rajottem, hogy a "char *valami" egy pointer, megneztem mik a pointerek s igy mar vilagos(abb)), de addig nehez.
[ Szerkesztve ]
-
addikt
válasz WonderCSabo #2938 üzenetére
Valoban, jelzett is a gcc, de akkor nem ertettem hirtelen mi a baja, most mar felfogtam, koszi.
[ Szerkesztve ]
-
Sk8erPeter
nagyúr
válasz WonderCSabo #2943 üzenetére
Ja, sorry, akkor félreértettem azt a mondatrészt, hogy "jelzett is a gcc"... nyilván nem a függvény hibás mivoltára mondtam, hogy fordítási hiba, amikor az rossz eredményt ad vissza, hanem az esetleges warningokra, errorra, amit kaphatott akkor, amikor inicializálatlan változója volt..
(#2944) szkorhetz : hát látom ez nem jött össze....
Pedig annyira nem nehéz... kijelölöd a programkódot, majd azután rákattintasz a Programkód gombra, ez a nagy mágia...Sk8erPeter
-
LumberJack
csendes tag
válasz WonderCSabo #2967 üzenetére
Nálam nem ezek vannak, csak elég hülye neveket szoktam adni a változóknak (mérgemben meg vállalhatatlanokat), gondoltam átírom tisztességesre, mielőtt feldobom ide, csak figyelmetlen voltam
-
moha21
addikt
válasz WonderCSabo #2971 üzenetére
Köszi! Argomentum az u.a. mint a sima print fv.?
Nem az az igazi férfi aki minden nőt meghódít, hanem aki ismeri a nagyfeszültségű földkábelek szigetelésének technikáját.
-
moha21
addikt
válasz WonderCSabo #2973 üzenetére
Köszi, működik! közben rájöttem a Borland C-ben majd az össze függvényre van példa is.
DE az fprint-re már nem is emlékeztem, anno suliban kellett csinálni alacsony magasszintű, de alig maradt meg belőle valami.Nem az az igazi férfi aki minden nőt meghódít, hanem aki ismeri a nagyfeszültségű földkábelek szigetelésének technikáját.
-
vanek
tag
válasz WonderCSabo #2988 üzenetére
igen tudom.. és nagyon szépen köszönöm! de amint írtam, nekem nem a programommal van a gond..hanem az eshetőségekkel..
[ Szerkesztve ]
-
vanek
tag
válasz WonderCSabo #2990 üzenetére
ha arra a javításra gondolsz, amit a c++ topikban írtál..akkor nem működik jól, mivel már az első próbálkozásnál találtam egy hibát..
a forrás sztring az ALMa volt a cél sztring az ALMA
és azt írta, hogy igen benne van és kiírta az ALMa-t..
-
vanek
tag
válasz WonderCSabo #2992 üzenetére
persze, hogy érdekel, így tanul az ember!
-
vanek
tag
válasz WonderCSabo #2992 üzenetére
feltöltöttem a progit kijavítva..ugyan úgy 5 hibás eredmény volt..és ugyan ott voltak a hibás eredmények..:\
-
vanek
tag
válasz WonderCSabo #2996 üzenetére
bemenet nincs..
a kész progit feltöltöm egy oldalra, ahol egy tesztelő program 10 tesztet futtat le..
az eredményeknél, csak annyit látok, hogy pl.: 5 teszt, futási idő 004 sec, hibás eredmény..
de sajnos semmi ötletem sincs, hogy mi lehet az..
[ Szerkesztve ]
-
vanek
tag
válasz WonderCSabo #2998 üzenetére
itt a példa
igen bemenet van csak én nem tudom..
azért gondolom, hogy valami szélsőséges megoldás..
egyébként nem futtattam a programot minden eshetőségre ami eszembe jutott..mindenre jó volt..:\
-
Jester01
veterán
válasz WonderCSabo #3003 üzenetére
Nekem nem. Hol vágja le a sorvég jelet amit az fgets beolvas?
(gdb)
40 fgets(s,256,f);
(gdb)
41 fgets(d,256,f);
(gdb)
43 kimenet=vizsgal(s,d);
(gdb) x/s s
0x7fffffffe5d0: "abrakadabra\n"
(gdb) x/s d
0x7fffffffe4d0: "rak\n"A vizsgal függvénynek meg kutya kötelessége az egész stringet nézni a lezáró 0-ig, vagyis a \n-t is. Így pedig csak a sor végén fog egyezni.
255-nél hosszabbra nem is kell működnie, de ez már 255-re sem működik, amire még kellene. A tesztelő meg lehet, hogy gonosz módon ki is próbálja azt.
Jester
-
Jester01
veterán
válasz WonderCSabo #3006 üzenetére
Tévedés:
A bemenet két sorból áll. Mindkét sorban egy-egy szóközt nem tartalmazó, legalább egy de maximum 255 karakter hosszú sztring található, melyeket rögtön sorvégejel követ.
Mind a két sor végén kellene \n legyen. És akkor már nem működik.
Jester
-
vanek
tag
válasz WonderCSabo #3008 üzenetére
közben letelt a határidő..
de van más problémám is..
szóval a feladatom a lineáris diofantoszi egyenlet..
próbálkoztam a megírásával..de nem sokáig jutottam..a legnagyobb közös többszörös még ment..de utána már problémám volt...be kell vallani, hogy nem könnyű program..
szerencsémre, vagy nem..de véletlen rátaláltam a kész programra..igaz, nem volt nehéz, mivel csak be kellett írnom..nah de a lényeg, hogy ,tanulva a hibámból megnéztem a példában szereplő példákat és mindegyik a helyes eredményt adja vissza..
#include <stdio.h>
#include <stdlib.h>
#define HAMIS 0
#define IGAZ 1
int lnko(int x, int y) {
int maradek;
int temp;
if (y > x) {
temp = y;
y = x;
x = temp;
}
maradek = y;
while (y != 0) {
if ((x % y) == 0) {
break;
}
maradek = x % y;
x = y;
y = maradek;
}
return maradek;
}
void euklidesziAlg(int av, int bv, int* x0, int* y0) {
int i;
int szorzo[100];
int darab = 0;
int maradek;
int temp;
int avSeged;
int bvSeged;
int x0Seged;
int y0Seged;
int voltCsere = HAMIS;
avSeged = av;
bvSeged = bv;
if (bv > av) {
temp = bvSeged;
bvSeged = avSeged;
avSeged = temp;
voltCsere = IGAZ;
}
if (bvSeged != 1) {
do {
szorzo[darab] = avSeged / bvSeged;
maradek = avSeged % bvSeged;
avSeged = bvSeged;
bvSeged = maradek;
darab++;
} while (maradek != 1);
maradek = 0;
x0Seged = 1;
for (i = darab-1; i >= 0; i--) {
y0Seged = maradek + x0Seged * szorzo[i];
if (i > 0) {
maradek = x0Seged;
x0Seged = y0Seged;
}
}
} else {
x0Seged = 1;
y0Seged = 1 - avSeged;
}
if (voltCsere) {
temp = y0Seged;
y0Seged = x0Seged;
x0Seged = temp;
}
if (-av*x0Seged + bv*y0Seged == 1) {
x0Seged *= -1;
} else if (av*x0Seged - bv*y0Seged == 1) {
y0Seged *= -1;
} else if (-av*x0Seged - bv*y0Seged == 1) {
x0Seged *= -1;
y0Seged *= -1;
}
*x0 = x0Seged;
*y0 = -y0Seged;
}
int main() {
FILE *f, *fk;
int a;
int b;
int c;
int d;
int av;
int bv;
int cv;
int x0;
int y0;
int x;
int y;
int teszt;
f=fopen("be.txt", "r");
fk=fopen("ki.txt", "w");
if(f==NULL)
{
exit (-1);
}
teszt=fscanf(f, "%d %d %d", &a, &b, &c);
if(teszt!=3)
{
fprintf(fk, "0\n");
}
else
{
d = lnko(a, b);
av = a / d;
bv = b / d;
cv = c / d;
if (c % d == 0) {
euklidesziAlg(av, bv, &x0, &y0);
x = x0 * cv;
y = y0 * cv;
while (x < 0 || y < 0) {
x += bv;
y += av;
}
while (x-bv >= 0 && y-av >= 0) {
x -= bv;
y -= av;
}
fprintf(fk,"%d %d\n\n", x, y);
}
else {
fprintf(fk, "0\n");
}
fclose(f);
fclose(fk);
return 0;
getchar();
}
}de ha feltöltöm a bíróra..nincs helyes eredmény..
lehet, hogy a nagy zűrzavarban félrenéztem valamit..
tudom, hogy így csak nekem lesz nehezebb a vizsga..de hátha tanulok belőle..
köszi előre is!
-
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...
-
Jester01
veterán
válasz WonderCSabo #3038 üzenetére
Főleg, hogy ennek olyan szaga van, hogy valakivel megíratta a tanár meg lebuktatta...
Jester
-
artiny
őstag
válasz WonderCSabo #3041 üzenetére
koszi szepen
getchar,gets,scanf ezeken kozzul melyik a jo megoldas ilyes fajta feladatoknal?
-
Jester01
veterán
válasz WonderCSabo #3043 üzenetére
Azok közül csak a gets vár entert, a többinél csak azért látszik úgy, mert az alatta lévő réteg eleve soronként pufferel. Ennek kikapcsolása vagy megkerülése sajnos platformfüggő.
Jester
-
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 -
NSiS
csendes tag
válasz WonderCSabo #3163 üzenetére
De tanultam, csak egy pillanatra megzavart az hogy "balról szorzom", azóta persze rájöttem hogy ez csak annyit tesz, hogyha mondjuk van egy A meg egy B mátrixom azokat úgy írom fel hogy B*A.
Na de a lényeg, h nem a mátrixok miatt nem tudom megoldani, hanem C beli hiányosságok vannak, ebben a félévben tanultam először programozást, ezelőtt szakközépben sem és nemis infó karos vagyok, úgyhogy várhatóan ezután sem lesz (a mintatanterv szerint legalábbis). MPLAB-ot használunk, PIC programozás lenne elvileg.
A feladat pedig: "Készítsen függvényt, amely adott változótípuson végez műveletet, valamint a megfelelő változótípussal tér vissza." Az adatok típusa valós az én esetemben.
Az A mátrixot szoroznám balról a B-vel. Printf-et nem szoktunk írni, van egy watch ablak a programban az jelzi az értékeket ha léptetem soronként.Az eddig elkészült programom, ami természetesen nem fut le ():
#include <p24fj128ga010.h>
float main(){
float fMatrixA[2][3] = {{1.5,2.5,3.5},{1.2,2.2,3.2}};
float fMatrixB[3][2] = {{4.5,4.2},{5.5,5.2,},{6.5,6.2}};
float fMatrixBA[3][3];
float i, j, k, r1=2, r2=3, c1=3, c2=2;
if (c1 == r2){
for (i=0; i<r1; i++){
for (j=0; j<c2; j++){
fMatrixBA[j]=0;
for (k=0; k<r1;k++)
{
fMatrixBA(i)[j] += fMatrixA(i)[k]*fMatrixB[k][j];
}
}
}
}
return 0;
}És itt megállt a tudomány részemről... pl. azt írja hogy hogy "return type of 'main' is not 'int'" és ezen kívül van még hiba rendesen. De azt se értem, hogy a return-nak integer-nek kellene lennie minden esetben? Mert a feladatkiírás alapján valós értékűként kellene visszatérnie.
[ Szerkesztve ]
-
NSiS
csendes tag
válasz WonderCSabo #3165 üzenetére
Köszönöm, így már működik, ezek szerint a mátrixos rész sem volt számomra egyértelmű.
-
Emoci
csendes tag
válasz WonderCSabo #3176 üzenetére
Ertem mar koszonom nagyon szepen
-
Emoci
csendes tag
válasz WonderCSabo #3178 üzenetére
Igen ez igy van csak en mindezt tanultam mar de par eve nem hasznaltam egyaltalan ez ahogy eszreveszem eleg sokat felejtettem
-
Karma
félisten
válasz WonderCSabo #3187 üzenetére
Konkrétan POSIX környezet kéne hozzá, így ha a Windows fontos, akkor vagy Cygwin alá kéne vinni a "fejlesztést", vagy ilyesmivel is lehet kísérletezni.
Én csak az előbbit tapasztaltam ki eddig munka közben.
“All nothings are not equal.”
-
ArchElf
addikt
válasz WonderCSabo #3231 üzenetére
Melyik részét, a deklarálást?
Így?
int i = 0;
for (; i < strlen(p); i++)AE
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
MODERÁTOR
válasz WonderCSabo #3262 üzenetére
Heló!
A rand() % 100 - 0 és 99 "intervallum" tényleg elírtam bocsi! A második esetében pedig csak a végtelenül leegyszerűsíteni akartam a dolgot! Kicsit félreérthetőre sikeredett.
mobal,
[ Szerkesztve ]
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
it_service
csendes tag
válasz WonderCSabo #3271 üzenetére
ok köszi ki is próbálom az este
-
it_service
csendes tag
válasz WonderCSabo #3271 üzenetére
köszi szépen, működik a program.
-
it_service
csendes tag
válasz WonderCSabo #3280 üzenetére
#include <stdlib.h>
#include <string.h>
#include <stdio.h>int main()
{FILE* file = fopen("beolvas.txt", "r");
char num[200];
int szamlalo = 0;while(fscanf(file, "%s", &num) != EOF)
{
szamlalo ++;
if (szamlalo == 99)
printf("%s" num[szamlalo]);
}
fclose(file);system("PAUSE");
}ennyit sikerült ki logikáznom belőle, szerintem így ésszerű hiszen belerakja a 200 sort a tömbbe és ha az indexére hivatkozok ki kellene írnia mi van az adott indexen.
-
WonderCSabo
félisten
válasz WonderCSabo #3282 üzenetére
Áh, most vettem észre, hogy véletlenül elcsesztem az egyenlőtlenséget:...
tömb mérete > string hossza
-
ArchElf
addikt
válasz WonderCSabo #3287 üzenetére
Úgy érti, hogy az előre definiált string hossznál is nagyobbat beolvas, ha akkora van a bemeneten (így túlcsordulhat a változó).
AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
-
WonderCSabo
félisten
válasz WonderCSabo #3287 üzenetére
Ja megvan, a format stringben lehet megadni, pl.:
fscanf(file, "%10s", str)
-
MODERÁTOR
válasz WonderCSabo #3333 üzenetére
ez azt hiszem akkor PHP -ban helyt állna! (abban gondolkoztam, sorry!)
"Ott szimatol a sarkadban vasfogait csattogtatva, minden egyes hétköznapod: kirúzsozott medvecsapda."
-
sztanozs
veterán
válasz WonderCSabo #3509 üzenetére
dupla
(nem is akarok mentségeket keresni)JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
Ú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!