- Yettel topik
- Android alkalmazások - szoftver kibeszélő topik
- Milyen okostelefont vegyek?
- Redmi Note 13 Pro+ - a fejlődés íve
- Apple iPhone 13 - hízott, de jól áll neki!
- Új nyomógombos Nokiák érkeztek
- Samsung Galaxy Watch6 Classic - tekerd!
- Érkezőben a Poco M6 4G
- Telekom mobilszolgáltatások
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
Hirdetés
-
Lenovo Essential Wireless Combo
lo Lehet-e egy billentyűzet karcsú, elegáns és különleges? A Lenovo bebizonyította, hogy igen, de bosszantó is :)
-
Miniképernyős, VIA-s Epomaker billentyűzet jött a kábelmentes szegmensbe
ph A megfizethető, szivacsokkal jól megpakolt modell ötfajta kapcsolóval és kétféle színösszeállítással/kupakprofillal szerezhető be.
-
Premier előzetesen a Demon Slayer -Kimetsu no Yaiba- Sweep the Board!
gp Elérhető lett Switch-re a játék, amely leginkább a Mario Party-hoz hasonlítható.
-
Mobilarena
Új hozzászólás Aktív témák
-
Forest_roby
őstag
válasz Forest_roby #855 üzenetére
up
-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
Forest_roby
őstag
válasz Forest_roby #855 üzenetére
up
-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
ALI_G
veterán
válasz Forest_roby #1366 üzenetére
Szerintem megkéne adnod a parancsokat a win-nek is hogy lássa. asszem ott a környezeti változok között a PATH-hoz kell hozzáadni a mappát, amibel a gcc van.
-
emitter
őstag
válasz Forest_roby #1366 üzenetére
vagy próbáld meg devc++t jó C-re is, grafikus fejlesztőkörnyezet, nekem bejött (semmit nem kellett állítani rajta)
-
Miracle
senior tag
válasz Forest_roby #1366 üzenetére
telepiteskor felajanl a cygwin par1000 csomagot, es azt hiszem, hogy a gcc nem default. egyebkent a devc++ is ugyan azt a GCCt hasznalja (azaz a windowsos portjat, ami mingw neven fut) mint ami egyebkent bennevan a cygwinben is.
értelmező késziszótár :: rekurzió --> lásd : rekurzió
-
Forest_roby
őstag
válasz Forest_roby #1544 üzenetére
megvan a hiba
%d helyett %f -et kellett volna irnom-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
Forest_roby
őstag
válasz Forest_roby #1781 üzenetére
up
-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
Fisha
őstag
válasz Forest_roby #1781 üzenetére
nem ertek hozza, csak googlirol szedtem.
using System;
class InputIntro
{
public static void Main()
{
string input = '''';
int intTest = 0;
float floatTest = 0;
Console.WriteLine(''Type in an integer:'');
input = Console.ReadLine();
intTest = int.Parse(input);
Console.WriteLine(''Type in a decimal:'');
input = Console.ReadLine();
floatTest = float.Parse(input);
Console.WriteLine(''int: {0} float: {1}'', intTest, floatTest);
}
} -
shev7
veterán
válasz Forest_roby #1784 üzenetére
scanf(''%s'',c); //beolvasod char* valtozoba
i=atoi(c); //konvertalod int-be. Kell hozza stdlib.h
MOD es igen, van olyan nyelv, hogy C#
[Szerkesztve]''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
shev7
veterán
válasz Forest_roby #1786 üzenetére
ez csak akkor mukodik ha egyjegyu szamot akarsz beolvasni, viszont akkor a c helyett &c-t kell irni. Ha tobb jegyut akarsz, akkor a c valtozot tombnek kell definialni (ahany jegyut akarsz) es akkor nem kell a c-t &c-re cserelni. Ha dinamikusan akarod valtoztatni, akkor hasznalj char* -ot es foglalj neki megfelelo teruletet.
MOD: no offense, de ez meg ugyanugy mukodik linux es windows alatt is.
[Szerkesztve]''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
shev7
veterán
válasz Forest_roby #1788 üzenetére
pedig ez mukodik.
%[0123456789] ennek a helyere nyugodtan irhatsz %s-t. Az atoi fv megcsinalja a szukseges atalakitasokat.''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
shev7
veterán
válasz Forest_roby #1790 üzenetére
miert? nem %d kell?
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
cucka
addikt
válasz Forest_roby #1792 üzenetére
ezt egyszerűbben is meg lehet írni némi gondolkozás után. az elgondolás, hogy nem írjuk le ugyanazt 13-szor, ha elég egyszer megtenni. (lehet becsúszott itt-ott szintaktikai hiba a kódba, nem próbáltam ki).
void main(){
//beolvasás billentyűzetről a 'be' változóba
int i;
int szamok[]={1000,900,500,400,100,90,50,40,10,9,5,4,1};
string jelek[]={''M'',''CM'',''D'',''CD'',''C'',''XC'',''L'',''XL'',''X'',''IX'',''V'',''IV'',''I''};
for (i=0;i<13;i++){
while (be>szamok){
printf(''%s'',jelek);
be=be-szamok;
}
}
}
[Szerkesztve] -
cucka
addikt
válasz Forest_roby #1794 üzenetére
még elegánsabb (szerintem), ha a for (i=0;i<13;i++) sorban i<13 helyett i<(sizeof(szamok)/sizeof(int)) szerepel.
-
cucka
addikt
válasz Forest_roby #1796 üzenetére
próbáld így
char* jelek[]={ ... }
és ne foglalj le 250 elemű tömböket. mivel megadod a tömb változóit, ezért a fordító majd kitalálja, mennyi helyet kell neki foglalni. ezt jelenti az a [] . -
cucka
addikt
válasz Forest_roby #1798 üzenetére
hm tényleg >=. éjjel fél 3-kor írtam azt a kódot, mondtam, hogy lehet becsúszik 1-2 hiba
-
cucka
addikt
válasz Forest_roby #1800 üzenetére
elvileg igen, eltérő karakter kódolások miatt lehetnek problémák. oprendszer/fejlesztőkörnyezet/fordító függő a dolog. sokat nem foglalkoztam a témával, parancssoros programnál úgyis mindegy, gui-s alkalmazásnál meg szoktak működni az ékezetes betűk.
-
Xpod
addikt
válasz Forest_roby #1810 üzenetére
Úgy tudom, gyököt lasabban tud vonni, mint összehasonlítani.
Most kezdődjék a tánc! - mondta a papagáj és berepült a ventilátorba.
-
Forest_roby
őstag
válasz Forest_roby #1812 üzenetére
ok, észrevettem egy nagy hibát!
a belső ciklusban számolja ki az x gyökét, feleslegesen sokszor, mikor elég lenne egyszer is.
ez lényegesen lassít a dolgon.
ui.: hülye vagyok-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
Xpod
addikt
válasz Forest_roby #1813 üzenetére
Ja még egy rövidítési lehetőség, csak a prímszám feléig ossz, 10ezres szám esetén elég 5-6ezerrel osztani, fölötte nincs értelme.
Most kezdődjék a tánc! - mondta a papagáj és berepült a ventilátorba.
-
Coyot
őstag
válasz Forest_roby #1810 üzenetére
Esetleg próbáld meg az Eratosztenész szitáját, az elég gyors módszer, ha érdekel bepötyögöm neked.
Má' nem
-
Forest_roby
őstag
válasz Forest_roby #1820 üzenetére
''.... egy szám legnagyobb 'prím' osztója nem lehet nagyobb mint....''
javítás:
''.... egy szám legelső 'prím' osztója nem lehet nagyobb mint....''-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
shev7
veterán
válasz Forest_roby #1821 üzenetére
if( (a%b) > 0 ){
if( b >= sqrt(x) & b < (sqrt(x)+1) ) printf(''%d\n'', a);
}else break;
en ezt itt nem teljesen ertem. Megnezed, hogy a maradek nagyobb-e mint nulla. Ha nem akkor break, ez vilagos. De ha nem nulla, akkor hogy gyoknel nagyobb-e. Ez is ok. De itt nem kene kilepni a kiiratas utan? Es akkor a for-ciklusban mindegy, hogy meddig szamolsz b-vel...''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
shev7
veterán
válasz Forest_roby #1823 üzenetére
pontosan erre gondoltam
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
cucka
addikt
válasz Forest_roby #1823 üzenetére
ide tényleg gyorsabb lenne az erasztotenész szitája nevű módszer. a probléma az, hogy keresed az x-nél kisebb prímeket. felírod 2-től x-ig a számokat. ezután megkeresed az első olyan számot, ami nincs áthúzva, és még nem foglalkoztál vele. (ez első körben a kettes lesz). áthúzod minden második számot a 2-es után (vagyis a 4-est, 6-ost, stb.). ha vége, kezded az elejéről. a következő szám a 3-as, áthúzod minden harmadik számot(6,9,stb). a következő szám az 5-ös (a 4-es már át van húzva, így azzal nem foglalkozunk), és így tovább.
viszonylag egyszerű leprogramozni, szóval hajrá. a végén össze lehet hasonlítani a futási időket, kíváncsi vagyok. -
cucka
addikt
válasz Forest_roby #1826 üzenetére
linux alatt time paranccsal szoktam, windows alatt elvileg tudom, gyakorlatilag nem.
általában egy algoritmusnál nem a futási időt nézik, hanem a műveletigényt, ez független a megvalósítástól, azt ''méri'', hogy n számosságú bemeneti adathalmazra hány iterációt végez az algoritmus. -
Xpod
addikt
válasz Forest_roby #1820 üzenetére
Igaz, erről el is felejtkeztem.
Most kezdődjék a tánc! - mondta a papagáj és berepült a ventilátorba.
-
cucka
addikt
válasz Forest_roby #1826 üzenetére
találtam win alá is valami hasonlót, mint a linuxos time. úgy hívják, hogy timeit.exe és a Windows Server 2003 Resource Kit Tools nevű csoda része. sok sikert hozzá, nekem nem sikerült használnom, bár nem is próbálkoztam vele túl sokat. [link]
[Szerkesztve] -
Coyot
őstag
válasz Forest_roby #1820 üzenetére
Naszóval, az Eratoszthenész szita. lényege h egy K korlátig előállítja az összes prímszámot, mégpedig ugy h kilövi az összes prímszám többszöröseit, előről haladva K-ig.
Nem garantálom, h műxik majd, már nem kell tudnom C-be progzani, javaslom értsd meg inkább és progizd le, a működése nagyon egyszerű.
for(i=2;i<=k;i++)
{
a=1;
}
p=2;
/*szita*/
while(p<=k)
{
if(a[p])
{
i=2*p;
while(i<=k)
{
a=0;
i=i+p;
}
p=p+1;
}
/*kiirás*/
for(i=2;i<=k;i++){
if(a) printf(''%d'',i);
}
mod.: kicsit rondábban rakta be mint ahogy vártam, remélem azért érthető.
[Szerkesztve]Má' nem
-
shev7
veterán
válasz Forest_roby #1839 üzenetére
Meg ahogy azt moricka elkepzeli
Utananeztem, jol emlekeztem. Valasztasz ket nagy prim szamot. A ket prim szorzata lesz a nyilvanos kulcs egyik fele. Ha ezt felbontani primtenyezokre olyan egyszeru lenne, akkor torheto lenne az RSA. Csakhogy: ''No polynomial-time method for factoring large integers on a classical computer has yet been found'' Ha a programodat nekiereszted egy altalam valasztott ket ~100 jegyu prim szorzatanak, es megmondod a primtenyezosfelbontasat, akkor mar jo uton haladsz
Egy erdekes adat a wikipediarol: ''As of 2005, the largest number factored by general-purpose methods was 663 bits long, using state-of-the-art distributed methods. RSA keys are typically 1024–2048 bits long.''
[Szerkesztve]''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
shev7
veterán
válasz Forest_roby #1841 üzenetére
Nem nekem van igazam, hanem azoknak, akik az RSA-t kitalaltak
''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
cucka
addikt
válasz Forest_roby #1839 üzenetére
shev7 - #1835-ben valóban igazad van
Forest_roby - igen, pont a te általad leírt módszer az, ami túl sok időt vesz igénybe. utánanéztem, arra, hogy megállapítsd, egy n számjegyű szám prím-e, van log(n)^12 körüli műveletigényű algoritmus, ez mondjuk majdnem polinomiálisnak tekinthető. a gond az, hogy prímtényezőkre való bontásnál az összes lehetséges osztót végig kell nézni, ami n számjegy esetén 10^n nagyságrend, tehát exponenciális az algoritmusod.
ja, és az általad leírt 62484751362947029755811 sokkal több, mint 23 bit. nem keverni a bitet a számjeggyel. tessék utánanézni a kettes számrendszernek
[Szerkesztve] -
cucka
addikt
válasz Forest_roby #1846 üzenetére
nem véletlenül mondtam, hogy nézz utána a kettes számrendszernek, számábrázolásnak, satöbbi
10es számrendszerben 23 számjegyen ábrázolod.
2es számrendszerben x ''számjegyen'', amit más néven bitnek hívunk. tehát a bit az egy bináris szám számjegye.
[Szerkesztve] -
shev7
veterán
válasz Forest_roby #1844 üzenetére
ez nem 23 bites szam
A legnagyobb szam a windows szamologepe kezel az 64 bites. Erteke: 18446744073709551615''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''
-
Asmarat
csendes tag
válasz Forest_roby #1830 üzenetére
Köszönöm a segítséget! Természetesen cuckának is..
Megpróbálok megbirkózni vele, nagyon érdekel a téma,
remélem egy pár hónap múlva érdemben is hozzá tudok szólni a
a totyikhoz...
[Szerkesztve] -
Forest_roby
őstag
válasz Forest_roby #1856 üzenetére
okay
hülye vagyok! : (
fordítás: gcc -lm prog.c-=Legyél Laza!=- __ ''Have you tried turning it off and on again?'' __ ''Is it definitely plugged in?'' /o\ :D:D
-
cucka
addikt
válasz Forest_roby #1858 üzenetére
long-ba ekkora érték fér bele. ugye (nálad) 4 byte-on ábrázolja, az ~4 milliárdig jó, de mivel előjeles, ezért az előjel-bitnek is kell hely, ezért ~2milliárd a vége. unsigned long-al tehát ~4 milliárdig tudsz értéket tárolni.
ha még nagyobb számot szeretnél, akkor kénytelen leszel kézzel megírni (string-ben tárolod a számokat, megírod rá a műveleteket vagy operátorokat (c++), satöbbi). -
cucka
addikt
válasz Forest_roby #1860 üzenetére
egy: nincs olyan, hogy long long int.
kettő: semmilyen különleges tudás nem szükséges hozzá. van 2 számod string-ben, számjegyenként kell velük műveleteket végezni (összeadás, szorzás, amire szükség van). ezeket neked kell kézzel megírni. az egész úgy működik, mint ahogyan elemi iskolában megtanítottak papíron összeadni/szorozni.
c++ - ban elegánsabb dolog nagyszámok osztályt írni, és átírni a használt operátorokat (+,*,<<, satöbbi).
egyébként meg milyen feladat az, amelyiknek nem elég a long?
[Szerkesztve] -
Jester01
veterán
válasz Forest_roby #1858 üzenetére
Veszel egy 64 bites procit
MOD: hopp, tévedésben vagyok. A (nem létezõ ) long long int mûködik 32 bites gépen is. Neked csak annyi baj volt, hogy a kiírásban nem %lld formátumot használtál.
[Szerkesztve]Jester
-
orbano
félisten
-
Jester01
veterán
válasz Forest_roby #1903 üzenetére
Először is: a configure nem fut le, hibát dob:
checking for PACKAGE... configure: error: Package requirements (gtk+-2.0 >= 2.0. 0) were not met.
Tehát nem csinálja meg a makefile-t, mert hiányzik neki a gtk.
Másodszor: Az egy dolog, hogy a makefile nem készül el, de úgy látom maga a make program sincs telepítve.
Megoldás mindkét problémára: Tedd fel a megfelelő csomago(ka)t.
[Szerkesztve]Jester
-
Jester01
veterán
válasz Forest_roby #1906 üzenetére
gtk2 ..... -ból rengeteg dolog van telepítve a gépre.
... csak valószínűleg pont az nem, ami kell
Nézd meg a config.log-ba mit írt, mit keres és miért nem találta.
Amúgy a weboldalad most éppen nem elérhető.Jester
-
Jester01
veterán
-
cucka
addikt
válasz Forest_roby #1910 üzenetére
fordításhoz általában a fejlesztői csomagok is szükségesek, ezek végén szerepel, hogy -dev. ha hiányzik neki csomag, de az mégis fel van telepítve, akkor legtöbb esetben a dev. csomag hiányzik, ez az első amit le szoktam csekkolni. az ubuntuban jó grafikus csomagkezelő (synaptic vagy adept), ott 1 perc alatt megoldhatóak az ilyen gondok.
-
Balux
tag
válasz Forest_roby #1928 üzenetére
tehát plö
ofstream data(''kdv.txt''); //ebbe mennek az adatok!
for(j=0;j<N;j++) //ez az időben-i léptetés
for( i=0;i<n;i++) //ez a térbeli léptetés (1D-ban)
{
//ide jön egy csomo minden ami a kezdőfeltételek és a
//az időben ezelötti állapotból u minden elemének uj értéket ad!
data<<u<<endl;
ezt akkor hogy kéne módosítani hogy miután u-t kiiratom egymás alá
az időben következő (j++ ciklus) u adathalmazt az előző mellé írja ki??
ugye a végén egy n*N es 'mátrixot' kapnék!!
legalábbis szeretnék
köszi elöre is! -
bdav
őstag
válasz Forest_roby #1935 üzenetére
hát ciklusmagban még eszembe se jutott, ha erre gondolsz: for(...) { int i...} sztem ez így nem lesz jó. Ciklus deklarációban lehet a C++-ban: for(int i=...;...){} de fordítófüggő hogy a változó élettartama mennyi lesz, szóvalezzel óvatosan (ugyis beugat ha nem jó )
10 féle ember van a világon. Aki ismeri a kettes számrendszert és aki nem. ''A név nincs hosszabb páncélszekrény''
-
bdav
őstag
válasz Forest_roby #1937 üzenetére
hogyne lenne.
int** tomb=malloc(sizeof(int*), maxsorok);
for(i=0; i<maxsorok; i++)
{
tomb[ i ]=malloc(sizeof(int), maxoszlopok);
}
[Szerkesztve]10 féle ember van a világon. Aki ismeri a kettes számrendszert és aki nem. ''A név nincs hosszabb páncélszekrény''
-
bdav
őstag
válasz Forest_roby #1939 üzenetére
az fentebb van. amit most írtam le az a 2D tömb lefoglalása volt C-ben. (c++ban a new használatos). utána már tomb[][] - vel lehet rá hivatkozni; tomb[a][ b] helyettesíthető pointerekkel, ha jól emléxem akkor így: ((tomb+a)*+b)* (bár ezt sztem senki sem használja, nem is biztos hogy így korrekt teljesen, de a [] kikerülhető az fix)
10 féle ember van a világon. Aki ismeri a kettes számrendszert és aki nem. ''A név nincs hosszabb páncélszekrény''
-
cucka
addikt
válasz Forest_roby #1945 üzenetére
például [link]
-
paramparya
őstag
válasz Forest_roby #1948 üzenetére
Ott van a hibaüzenetben, nincs meg a conio.h library...
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!