Java/Python/C++ hjálp...
-
- Besserwisser
- Póstar: 3337
- Skráði sig: Mið 08. Okt 2008 22:07
- Staðsetning: /dev/null
- Staða: Ótengdur
Re: Java hjálp...
Ég er að gera rosa skemmtilegt, skrifa Linux skipunina 'wc' í C++
i7 920 @ 2.8 GHz | Gigabyte EX58-UD3R | CSX 3x2 GB DDR3 @ 1600 MHz | Gigabyte ATi Radeon HD 5850 | Sileo 500 | RealPower 600W | Corsair Force 3 120 GB | 27" FullHD | W7 x64
-
Höfundur - Kóngur
- Póstar: 4270
- Skráði sig: Mán 07. Júl 2008 23:32
- Staða: Ótengdur
Re: Java hjálp...
Was ist das?
-
- Gúrú
- Póstar: 542
- Skráði sig: Mán 24. Des 2007 11:23
- Staðsetning: localhost
- Staða: Ótengdur
Re: Java hjálp...
Skipun sem Paul Rubin og David MacKenzie skrifuðu, en hún getur talið línur, orð characters og bytes ásamt því að finna lengstu línuna.KermitTheFrog skrifaði:Was ist das?
Einfalt dæmi í php sem ég kastaði upp hérna...
Kóði: Velja allt
$fp = fopen('php://stdin','r');
$in = '';
while ( ! feof($fp)){ $in .= fgets($fp); }
fclose($fp);
$in = substr($in,0,strlen($in)-1);
switch($_SERVER['argv'][1])
{
case '-c': echo strlen($in); break;
case '-m': echo mb_strlen($in); break;
case '-l': echo count(explode("\n", $in)); break;
case '-w': echo count(explode(' ', $in)); break;
}
Birkir Rafn Guðjónsson
Web Application Developer
HTPC: GA-73PVM-S2H # Intel E8200 @ 3.2Ghz # 2GB 800mhz
Web Application Developer
HTPC: GA-73PVM-S2H # Intel E8200 @ 3.2Ghz # 2GB 800mhz
-
- Besserwisser
- Póstar: 3337
- Skráði sig: Mið 08. Okt 2008 22:07
- Staðsetning: /dev/null
- Staða: Ótengdur
Re: Java hjálp...
Flottur, en þetta er ögn meira mál í C++ sérstaklega þar sem við megum ekki nota nein builtin library nema iostream og fstream og eigum að lesa eitt byte/staf fyrir sig.starionturbo skrifaði:Skipun sem Paul Rubin og David MacKenzie skrifuðu, en hún getur talið línur, orð characters og bytes ásamt því að finna lengstu línuna.KermitTheFrog skrifaði:Was ist das?
Einfalt dæmi í php sem ég kastaði upp hérna...Kóði: Velja allt
$fp = fopen('php://stdin','r'); $in = ''; while ( ! feof($fp)){ $in .= fgets($fp); } fclose($fp); $in = substr($in,0,strlen($in)-1); switch($_SERVER['argv'][1]) { case '-c': echo strlen($in); break; case '-m': echo mb_strlen($in); break; case '-l': echo count(explode("\n", $in)); break; case '-w': echo count(explode(' ', $in)); break; }

i7 920 @ 2.8 GHz | Gigabyte EX58-UD3R | CSX 3x2 GB DDR3 @ 1600 MHz | Gigabyte ATi Radeon HD 5850 | Sileo 500 | RealPower 600W | Corsair Force 3 120 GB | 27" FullHD | W7 x64
-
- Gúrú
- Póstar: 542
- Skráði sig: Mán 24. Des 2007 11:23
- Staðsetning: localhost
- Staða: Ótengdur
Re: Java hjálp...
http://www.gnu.org/software/cflow/manua ... mmand.html" onclick="window.open(this.href);return false;intenz skrifaði:Flottur, en þetta er ögn meira mál í C++ sérstaklega þar sem við megum ekki nota nein builtin library nema iostream og fstream og eigum að lesa eitt byte/staf fyrir sig.starionturbo skrifaði:Skipun sem Paul Rubin og David MacKenzie skrifuðu, en hún getur talið línur, orð characters og bytes ásamt því að finna lengstu línuna.KermitTheFrog skrifaði:Was ist das?
Einfalt dæmi í php sem ég kastaði upp hérna...Kóði: Velja allt
$fp = fopen('php://stdin','r'); $in = ''; while ( ! feof($fp)){ $in .= fgets($fp); } fclose($fp); $in = substr($in,0,strlen($in)-1); switch($_SERVER['argv'][1]) { case '-c': echo strlen($in); break; case '-m': echo mb_strlen($in); break; case '-l': echo count(explode("\n", $in)); break; case '-w': echo count(explode(' ', $in)); break; }
Þessi ætti að redda smá grunn, bara C.
Birkir Rafn Guðjónsson
Web Application Developer
HTPC: GA-73PVM-S2H # Intel E8200 @ 3.2Ghz # 2GB 800mhz
Web Application Developer
HTPC: GA-73PVM-S2H # Intel E8200 @ 3.2Ghz # 2GB 800mhz
-
Höfundur - Kóngur
- Póstar: 4270
- Skráði sig: Mán 07. Júl 2008 23:32
- Staða: Ótengdur
Re: Java hjálp...
Quick question: Get ég extractað fleiri en eina breytu úr falli?
-
- Besserwisser
- Póstar: 3337
- Skráði sig: Mið 08. Okt 2008 22:07
- Staðsetning: /dev/null
- Staða: Ótengdur
Re: Java hjálp...
Það er svolítið í forritunarmálum sem heitir "call by reference" void func( int& var1, int& var2 ) en veit ekki hvort þetta sé mögulegt í Java.KermitTheFrog skrifaði:Quick question: Get ég extractað fleiri en eina breytu úr falli?
i7 920 @ 2.8 GHz | Gigabyte EX58-UD3R | CSX 3x2 GB DDR3 @ 1600 MHz | Gigabyte ATi Radeon HD 5850 | Sileo 500 | RealPower 600W | Corsair Force 3 120 GB | 27" FullHD | W7 x64
-
Höfundur - Kóngur
- Póstar: 4270
- Skráði sig: Mán 07. Júl 2008 23:32
- Staða: Ótengdur
Re: Java hjálp...
Eftir stutt gúgl sýnist mér það ekki mögulegt. En annað: http://www.erights.org/elang/collect/String-ref.html" onclick="window.open(this.href);return false;
Þarna á síðunni undir Indexing Expression eru leiðbeiningar um það hvernig skal ná í ákveðna stafi eða ákveðinn hluta strengjabreytu. Ég get á engan hátt fengið þetta til að virka í java. Man að ég náði einhverntímann að nota get() til að ná í einn staf en mér tókst ekki að taka part af strengnum ("foobar" run(2,4)).
Kann einhver á þetta?
Þarna á síðunni undir Indexing Expression eru leiðbeiningar um það hvernig skal ná í ákveðna stafi eða ákveðinn hluta strengjabreytu. Ég get á engan hátt fengið þetta til að virka í java. Man að ég náði einhverntímann að nota get() til að ná í einn staf en mér tókst ekki að taka part af strengnum ("foobar" run(2,4)).
Kann einhver á þetta?
Re: Java hjálp...
KermitTheFrog skrifaði:Quick question: Get ég extractað fleiri en eina breytu úr falli?
Kóði: Velja allt
void someMethod() {
MyObject obj = new MyObject();
doSomethingWithMyObject(obj);
System.out.println(obj.getA());
System.out.println(obj.getB());
System.out.println(obj.getC());
}
void doSomethingWithMyObject(MyObject obj) {
obj.setA(45);
obj.setB(13);
obj.setC(6);
}
*-*
Re: Java hjálp...
http://download.oracle.com/javase/6/doc ... tml#charAt(int" onclick="window.open(this.href);return false;)KermitTheFrog skrifaði:Eftir stutt gúgl sýnist mér það ekki mögulegt. En annað: http://www.erights.org/elang/collect/String-ref.html" onclick="window.open(this.href);return false;
Þarna á síðunni undir Indexing Expression eru leiðbeiningar um það hvernig skal ná í ákveðna stafi eða ákveðinn hluta strengjabreytu. Ég get á engan hátt fengið þetta til að virka í java. Man að ég náði einhverntímann að nota get() til að ná í einn staf en mér tókst ekki að taka part af strengnum ("foobar" run(2,4)).
Kann einhver á þetta?
http://download.oracle.com/javase/6/doc ... #substring(int,%20int" onclick="window.open(this.href);return false;)
*-*
-
- Besserwisser
- Póstar: 3337
- Skráði sig: Mið 08. Okt 2008 22:07
- Staðsetning: /dev/null
- Staða: Ótengdur
Re: Java hjálp...
Ég held alveg örugglega að hann sé að tala um að returna mörgum breytum/gildum?appel skrifaði:KermitTheFrog skrifaði:Quick question: Get ég extractað fleiri en eina breytu úr falli?Milljón aðrar leiðir, og þessi hér að ofan er ekki sú besta.Kóði: Velja allt
void someMethod() { MyObject obj = new MyObject(); doSomethingWithMyObject(obj); System.out.println(obj.getA()); System.out.println(obj.getB()); System.out.println(obj.getC()); } void doSomethingWithMyObject(MyObject obj) { obj.setA(45); obj.setB(13); obj.setC(6); }
i7 920 @ 2.8 GHz | Gigabyte EX58-UD3R | CSX 3x2 GB DDR3 @ 1600 MHz | Gigabyte ATi Radeon HD 5850 | Sileo 500 | RealPower 600W | Corsair Force 3 120 GB | 27" FullHD | W7 x64
Re: Java hjálp...
Þú encapsuleitar return gildin í einum object.intenz skrifaði:Ég held alveg örugglega að hann sé að tala um að returna mörgum breytum/gildum?appel skrifaði:KermitTheFrog skrifaði:Quick question: Get ég extractað fleiri en eina breytu úr falli?Milljón aðrar leiðir, og þessi hér að ofan er ekki sú besta.Kóði: Velja allt
void someMethod() { MyObject obj = new MyObject(); doSomethingWithMyObject(obj); System.out.println(obj.getA()); System.out.println(obj.getB()); System.out.println(obj.getC()); } void doSomethingWithMyObject(MyObject obj) { obj.setA(45); obj.setB(13); obj.setC(6); }
Þetta væri verra:
Kóði: Velja allt
name, address, phone = getPersonDetails(someKennitala)
Kóði: Velja allt
person = getPersonDetails(someKennitala)
Kóði: Velja allt
person.getName()
person.getAddress()
person.getPhone()
Annars er ekki hægt að returna mörgum gildum, bara einu gildi eða engu.
*-*
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Java hjálp...
Eða skila Array. Það sem Appel stakk upp á er augljóslega "rétta" leiðin, en mig langaði bara að tjá mig líka.
Re: Java hjálp...
Þetta er náttúrulega ekki idiomatic java kóði (enda ekki hægt, rite?). Í Python er það mjög fínn siður að skila tuple og unpakka í tvær eða fleiri breytur.appel skrifaði: Þetta væri verra:
frekar enKóði: Velja allt
name, address, phone = getPersonDetails(someKennitala)
Kóði: Velja allt
person = getPersonDetails(someKennitala)
@OP: ekki berjast við málið, ef þú ert að reyna að gera eitthvað sem virðist ekki vera hægt að gera í því máli sem þú notar á örugglega að gera þetta öðruvísi í því máli. Svo er það auðvitað spurning hvenær þarf að skila tveimur gildum úr falli, hvað í ósköpunum ertu að gera sem kallar á tvö return gildi?
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Java hjálp...
Fullkomlega eðilegt að skilja object (baun) sem svari, sem inniheldur mörg mismunandi gildi.
-
Höfundur - Kóngur
- Póstar: 4270
- Skráði sig: Mán 07. Júl 2008 23:32
- Staða: Ótengdur
Re: Java hjálp...
Er með fall sem tekur þrjár random textabreytur úr þremur mismunandi fylkjum og ég vil láta fallið skila þessum þrem. Ég get sosum gert það í main fallinu fyrst þetta er eitthvað gífurlegt mál.dori skrifaði:Þetta er náttúrulega ekki idiomatic java kóði (enda ekki hægt, rite?). Í Python er það mjög fínn siður að skila tuple og unpakka í tvær eða fleiri breytur.appel skrifaði: Þetta væri verra:
frekar enKóði: Velja allt
name, address, phone = getPersonDetails(someKennitala)
Kóði: Velja allt
person = getPersonDetails(someKennitala)
@OP: ekki berjast við málið, ef þú ert að reyna að gera eitthvað sem virðist ekki vera hægt að gera í því máli sem þú notar á örugglega að gera þetta öðruvísi í því máli. Svo er það auðvitað spurning hvenær þarf að skila tveimur gildum úr falli, hvað í ósköpunum ertu að gera sem kallar á tvö return gildi?
Er ekki hægt að setja þær bara í array og skila því?
Re: Java hjálp...
Ég myndi segja að það væri mun eðlilegra fyrir nákvæmlega þetta dæmi að búa frekar til fall sem skilar random textabreytu úr textafylki. Og keyra það fall einu sinni fyrir hvert fylki.
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Java hjálp...
Fallið tekur inn 3 array og á að skila einu gildi úr hverju?
Þú skilar þá bara array til baka, með þeim gildum sem þú vilt skila.
Þú skilar þá bara array til baka, með þeim gildum sem þú vilt skila.
-
Höfundur - Kóngur
- Póstar: 4270
- Skráði sig: Mán 07. Júl 2008 23:32
- Staða: Ótengdur
Re: Java hjálp...
En fylkin eru mismunandi. a fylki inniheldur aðrar breytur en b og c og öfugt.dori skrifaði:Ég myndi segja að það væri mun eðlilegra fyrir nákvæmlega þetta dæmi að búa frekar til fall sem skilar random textabreytu úr textafylki. Og keyra það fall einu sinni fyrir hvert fylki.
edit: ahh ég skil þig núna, prufa það.
Og Daz: ég var búinn að reyna það en hef greinilega gert það eitthvað vitlaust svo ég hélt það væri bara ekki í boði.
Re: Java hjálp...
Þú getur líka haft það í huga að þú ert með fylki sem er með n stök sem hafa index á bilinu 0..n-1. Búðu bara til random tölu á því bili og þá ertu með random stak. Skiptir engu með hvað er í fylkinu.KermitTheFrog skrifaði:En fylkin eru mismunandi. a fylki inniheldur aðrar breytur en b og c og öfugt.
-
Höfundur - Kóngur
- Póstar: 4270
- Skráði sig: Mán 07. Júl 2008 23:32
- Staða: Ótengdur
Re: Java hjálp...
Hvernig returna ég fylkinu? return d; virkar ekki, return d[]; virkar ekki, hvernig geri ég?
eða... Dr. Java setur ekkert út á return d; en þegar ég ætla að koma því inn í main fallið þá vill hann ekki compile-a
eða... Dr. Java setur ekkert út á return d; en þegar ég ætla að koma því inn í main fallið þá vill hann ekki compile-a
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Java hjálp...
KermitTheFrog skrifaði:Hvernig returna ég fylkinu? return d; virkar ekki, return d[]; virkar ekki, hvernig geri ég?
eða... Dr. Java setur ekkert út á return d; en þegar ég ætla að koma því inn í main fallið þá vill hann ekki compile-a
Kóði: Velja allt
public String[] fall(String[] var1,String[] var2,String[] var3){
String[] retval = new String[3];
retval[0] = var1[0];
retval[1] = var2[0];
retval[2] = var3[0];
return retval;
}
-
Höfundur - Kóngur
- Póstar: 4270
- Skráði sig: Mán 07. Júl 2008 23:32
- Staða: Ótengdur
Re: Java hjálp...
Já, var kominn með það en þegar ég ætla að gera t.d. String eða String[] breyta = fall(breytur) í main fallinu þá gengur það ekki upp.
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Java hjálp...
Hvaða villa kemur?KermitTheFrog skrifaði:Já, var kominn með það en þegar ég ætla að gera t.d. String eða String[] breyta = fall(breytur) í main fallinu þá gengur það ekki upp.
Re: Java hjálp...
Hvernig væri að henda í mann kóða svo við sjáum hvað þú ert að reyna?KermitTheFrog skrifaði:Já, var kominn með það en þegar ég ætla að gera t.d. String eða String[] breyta = fall(breytur) í main fallinu þá gengur það ekki upp.