Hjálp í forritun!!!
Hjálp í forritun!!!
Sælir
Ég er á fyrsta ári í HÍ og er í miklu vandræðum í Tölvunarfræði. Þetta er bara inngangurinn að Java Porgramming. http://introcs.cs.princeton.edu/java/home/" onclick="window.open(this.href);return false; (Erum komin í kafla 2.1, næsta vika verður 2.2-2.3)
Ef einhver er til í að taka mig í einkennslu/aðstoð þá væri það snilld! Aðsjálfsögðu borga ég fyrir hana.
Þið megið hringja í mig (847-6218) eða senda mér mail á baddeh@hotmail.com
(Vissi ekkert hvar ég átti að posta þessu)
Takk fyrir, Barði Páll
Ég er á fyrsta ári í HÍ og er í miklu vandræðum í Tölvunarfræði. Þetta er bara inngangurinn að Java Porgramming. http://introcs.cs.princeton.edu/java/home/" onclick="window.open(this.href);return false; (Erum komin í kafla 2.1, næsta vika verður 2.2-2.3)
Ef einhver er til í að taka mig í einkennslu/aðstoð þá væri það snilld! Aðsjálfsögðu borga ég fyrir hana.
Þið megið hringja í mig (847-6218) eða senda mér mail á baddeh@hotmail.com
(Vissi ekkert hvar ég átti að posta þessu)
Takk fyrir, Barði Páll
Re: Hjálp í forritun!!!
Ég get líka sent verkefnin í tölvupósti ef einhver hefur meiri áhuga fyrir því
-
- Vaktari
- Póstar: 2599
- Skráði sig: Mán 15. Des 2003 21:11
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Komdu bara með dæmin hingað
Re: Hjálp í forritun!!!
1. Write a static method max3() that takes three int values as arguments and returns the value of the largest one. Add an overloaded function that does the same thing with three double values.
2. Write a static method lg() that takes an int value N as argument and returns the largest int not larger than the base-2 logarithm of N. Do not use Math.
3. Write a method any() that takes an array of boolean values as argument and returns true if any of the entries in the array is true, and false otherwise. Write a method all() that takes an array of boolean values as argument and returns true if all of the entries in the array are true, and false otherwise.
4.
Í þessu verkefni sönnum við fallið að vitlausHelmingunarLeit skili alltaf réttri útkomu
(þegar það skilar útkomu).
// Notkun: i = vitlausHelmingunarLeit(a,x)
// Fyrir: a er raðað í vaxandi röð
// Eftir: i er -1 ef x er ekki í fylkinu a
// annars er í þ.a. a == x
public static int vitlausHelmingunarLeit(int[] a, int x) {
int low = 0, high = a.length-1;
int mid = (low+high)/2;
while (low <= high) {
// Fastayrðing: 0<= low, high <= a.length-1
// x getur aðeins verið í a[low] : : : a[high]
mid = (low+high)/2;
if (a[mid] < x) {
low = mid;
}
else if (a[mid] > x) {
high = mid;
}
else{
return mid;
}
}
return -1;
}
Sannið að forritið er rétt í því tilviki að stakið x er í fylkinu a. Munið þau 3 atriði sem
þarf að sanna fyrir while lykkjur. Þar sem það er return setning inni í while lykkjunni þá
eru í raun tvö skilyrði sem þurfa að gilda. R1 sem er skilyrðið low <= high og R2 sem er
a[mid] != x. Þar sem við gerum ráð fyrir að x er í a þá þurfum við aðeins að einbeita
okkur að R2 skilyrðinu. Sameiginlega R skilyrðið er því R = R1 ^ R2.Athugið að forskilyrðið fyrir while lykkjuna er forskilyrði fallsin og eins með eftirskilyrðið.
Gefið dæmi um fylki a og tölu x þar sem að fallið skilar réttu gildi. Gefið annað dæmi þar
sem fallið lendir í endalausri lykkju, rekið ástand forritsins í hverju skrefi (þ.e. skrifið gildi á
öllum breytum).
(veit að það er
Er ekki að biðja um eingöngu lausnirnar enda læri ég lítið á því...
2. Write a static method lg() that takes an int value N as argument and returns the largest int not larger than the base-2 logarithm of N. Do not use Math.
3. Write a method any() that takes an array of boolean values as argument and returns true if any of the entries in the array is true, and false otherwise. Write a method all() that takes an array of boolean values as argument and returns true if all of the entries in the array are true, and false otherwise.
4.
Í þessu verkefni sönnum við fallið að vitlausHelmingunarLeit skili alltaf réttri útkomu
(þegar það skilar útkomu).
// Notkun: i = vitlausHelmingunarLeit(a,x)
// Fyrir: a er raðað í vaxandi röð
// Eftir: i er -1 ef x er ekki í fylkinu a
// annars er í þ.a. a == x
public static int vitlausHelmingunarLeit(int[] a, int x) {
int low = 0, high = a.length-1;
int mid = (low+high)/2;
while (low <= high) {
// Fastayrðing: 0<= low, high <= a.length-1
// x getur aðeins verið í a[low] : : : a[high]
mid = (low+high)/2;
if (a[mid] < x) {
low = mid;
}
else if (a[mid] > x) {
high = mid;
}
else{
return mid;
}
}
return -1;
}
Sannið að forritið er rétt í því tilviki að stakið x er í fylkinu a. Munið þau 3 atriði sem
þarf að sanna fyrir while lykkjur. Þar sem það er return setning inni í while lykkjunni þá
eru í raun tvö skilyrði sem þurfa að gilda. R1 sem er skilyrðið low <= high og R2 sem er
a[mid] != x. Þar sem við gerum ráð fyrir að x er í a þá þurfum við aðeins að einbeita
okkur að R2 skilyrðinu. Sameiginlega R skilyrðið er því R = R1 ^ R2.Athugið að forskilyrðið fyrir while lykkjuna er forskilyrði fallsin og eins með eftirskilyrðið.
Gefið dæmi um fylki a og tölu x þar sem að fallið skilar réttu gildi. Gefið annað dæmi þar
sem fallið lendir í endalausri lykkju, rekið ástand forritsins í hverju skrefi (þ.e. skrifið gildi á
öllum breytum).
(veit að það er
Er ekki að biðja um eingöngu lausnirnar enda læri ég lítið á því...
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Hjálp í forritun!!!
nr. 1.
Skilurðu spurninguna? Geturðu t.d. leyst
"Write a static method max3() that takes three int values as arguments and returns the value of the largest one."?
Leystu þetta, svo höldum við áfram.
Skilurðu spurninguna? Geturðu t.d. leyst
"Write a static method max3() that takes three int values as arguments and returns the value of the largest one."?
Leystu þetta, svo höldum við áfram.
Re: Hjálp í forritun!!!
public class Max{
pulbic static void main(String[]args){
}
public static int max3(int a, int b, int c){
int max = a;
if (b > max) max = b;
if (c > max) max = c;
return max;
}
public static double max3(double a, double b, double c){
double max = a;
if (b > max) max = b;
if (c > max) max = c;
return max;
}
}
Er ekki viss hvað ætti að koma í main og hvernig ég á að prenta þetta,,,
pulbic static void main(String[]args){
}
public static int max3(int a, int b, int c){
int max = a;
if (b > max) max = b;
if (c > max) max = c;
return max;
}
public static double max3(double a, double b, double c){
double max = a;
if (b > max) max = b;
if (c > max) max = c;
return max;
}
}
Er ekki viss hvað ætti að koma í main og hvernig ég á að prenta þetta,,,
Re: Hjálp í forritun!!!
Sýnist max3 föllin hjá þér vera alveg rétt ...
Í main þarftu nú bara að kalla í föllin með einhverjum 3 tölum sem parameter og skrifa út það sem þau skila.
Hint: System.out.println
Í main þarftu nú bara að kalla í föllin með einhverjum 3 tölum sem parameter og skrifa út það sem þau skila.
Hint: System.out.println
-
- Vaktari
- Póstar: 2192
- Skráði sig: Mið 21. Nóv 2007 02:25
- Staðsetning: /dev/random
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Barði...
Mættu bara niðrí nemendaaðstöðu og ég er viss um að það eru einhverjir sem vilja hjálpa þér með þetta, enda eintómir öðlingar í þessu námi!
Mættu bara niðrí nemendaaðstöðu og ég er viss um að það eru einhverjir sem vilja hjálpa þér með þetta, enda eintómir öðlingar í þessu námi!
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Hjálp í forritun!!!
nr. 2. Það eru til einhverjar aðferðir til að reikna log í base 2, aðrar en math. Það er örugglega búið að nefna það í bókinni þinni og þess vegna er dæmið um það.
svo er þægilegt að nota code tögin þegar maður setur kóða inn hérna
Kóði: Velja allt
public helloWorld
{
public static void main(String[] args)
{
System.out.println("Hello world!")
}
}
Re: Hjálp í forritun!!!
Kóði: Velja allt
public class Runner {
public static void main(String[] args) {
// Kall í dæmi 1
System.out.println(max3(2,5,7));
System.out.println(max3(2.0,5.0,7.0));
// Kall í dæmi 2
System.out.println(lg(1024));
// Kall í dæmi 3
boolean[] b={true, false, true};
System.out.println(any(b));
System.out.println(all(b));
}
// Dæmi 1
public static int max3(int x, int y, int z) {
return x>y?(x>z?x:(y>z?y:z)):(y>z?y:(x>z?x:z));
}
public static double max3(double x, double y, double z) {
return x>y?(x>z?x:(y>z?y:z)):(y>z?y:(x>z?x:z));
}
// Dæmi 2
public static int lg(int n) {
int lg=0;
while((n>>=1)!=0){lg++;}
return lg;
}
// Dæmi 3
public static boolean any(boolean[] a) {
boolean r=false;
for(boolean b:a) {r|=b;}
return r;
}
public static boolean all(boolean[] a) {
boolean r=true;
for(boolean b:a) {r&=b;}
return r;
}
}
Re: Hjálp í forritun!!!
return x>y?(x>z?x:(y>z?y:z)):(y>z?y:(x>z?x:z));
Ljótur , einstaklega ljótur, og ólæsilegur kóði sem mér sýnist þar að auki að sé ekki kendur í bókinni sem var vísað í.
Kafli. http://introcs.cs.princeton.edu/java/13flow/" onclick="window.open(this.href);return false; (ekki notað en minnst á þarna)
Ljótur , einstaklega ljótur, og ólæsilegur kóði sem mér sýnist þar að auki að sé ekki kendur í bókinni sem var vísað í.
Kafli. http://introcs.cs.princeton.edu/java/13flow/" onclick="window.open(this.href);return false; (ekki notað en minnst á þarna)
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Lausnir verða ekki betri ef þær eru í færri línum, ég sé ekki betur en að þetta séu 5 if setningar sem baddeh leysti með 2. Svo er ekki mikil hjálp í því að gefa upp heila lausn í fyrsta heimaverkefni, þá er ekki góð von á að næsta verkefni takist.stuxnet skrifaði: --snip code nema--Kóði: Velja allt
return x>y?(x>z?x:(y>z?y:z)):(y>z?y:(x>z?x:z));
Re: Hjálp í forritun!!!
Aðalmálið var ekki að gefa honum lausn, heldur að sýna honum hvernig kallað er í föll og hvernig prenta á skilagildið út. Hann er augljóslega ekki að fara að nota svona "obfuscated" kóða, þótt hann gefi rétt svör.Daz skrifaði:Lausnir verða ekki betri ef þær eru í færri línum, ég sé ekki betur en að þetta séu 5 if setningar sem baddeh leysti með 2. Svo er ekki mikil hjálp í því að gefa upp heila lausn í fyrsta heimaverkefni, þá er ekki góð von á að næsta verkefni takist.stuxnet skrifaði: --snip code nema--Kóði: Velja allt
return x>y?(x>z?x:(y>z?y:z)):(y>z?y:(x>z?x:z));
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Ef þú vildir sýna honum hvernig á að kalla á föll þá gastu bara gert
Og þetta var ekki "obfuscated" þetta var bara illa uppsett nested if. En ég er ekki beint að setja út á kóðann hjá þér, datt bara í hug að einhver gæti ruglast og haldið að einnar línu lausn gæti verið betri/hraðvirkari en þessi lausn sem baddeh bjó til, en það er fjöldi og tegund aðgerða sem skiptir mestu máli, ekki fjöldi lína.
Kóði: Velja allt
public class HelloWorld2
{
public static void main(String[] args)
{
System.out.println(hellostring());
}
public String hellostring()
{
return "Hello world!";
}
}
Re: Hjálp í forritun!!!
baddeh, þú átt einkaskilaboð með MSN netfangi mínu ef þig vantar aðstoð (í þau skipti sem ég hef tíma). Skal reyna að útskýra fyrir þér hluti á sem einfaldastan hátt, gefið að ég skilji það sjálfur.
Daz: Þetta er alveg hárrétt hjá þér, þetta er mjög slæmt dæmi um hvenær á að nota ternary operatorinn, uppsetningin á forritinu er það sem ég vildi koma til skila, og gefa honum smá template til að vinna með og skilja. Það á alltaf að hafa læsileikann í fyrirrúmi þegar verið er að forrita þar sem að compilerinn myndi líklegast sjá við manni og outputta sama kóða í lokinn fyrir mismunandi útfærslur af if(og margt annað) ef það er notað til að reikna út sama hlutinn.Daz skrifaði:Ef þú vildir sýna honum hvernig á að kalla á föll þá gastu bara gert
Og þetta var ekki "obfuscated" þetta var bara illa uppsett nested if. En ég er ekki beint að setja út á kóðann hjá þér, datt bara í hug að einhver gæti ruglast og haldið að einnar línu lausn gæti verið betri/hraðvirkari en þessi lausn sem baddeh bjó til, en það er fjöldi og tegund aðgerða sem skiptir mestu máli, ekki fjöldi lína.Kóði: Velja allt
---removed---
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Yay, ég hafði mögulega ekki fullkomlega rangt fyrir mér
Annars held ég að það sé fínt að hafa svona umræður fyrir opnum tjöldum, það auðveldar þeim sem eru að leita sér hjálpar að finna hana. Að því gefnu að einhver sé tilbúinn að spyrja spurninga sem öðrum gæti þótt "augljósar".
Annars held ég að það sé fínt að hafa svona umræður fyrir opnum tjöldum, það auðveldar þeim sem eru að leita sér hjálpar að finna hana. Að því gefnu að einhver sé tilbúinn að spyrja spurninga sem öðrum gæti þótt "augljósar".
-
- Besserwisser
- Póstar: 3337
- Skráði sig: Mið 08. Okt 2008 22:07
- Staðsetning: /dev/null
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Java + IntelliJ er æði.
Ef þú ert með IntelliJ mæli ég með því að nota sout<tab> og psvm<tab> ... sparar manni mikil skrif.
Ef þú ert með IntelliJ mæli ég með því að nota sout<tab> og psvm<tab> ... sparar manni mikil skrif.
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: Hjálp í forritun!!!
Takk fyrir hjálpin! Ég er búinn með 1-3 með ykkar hjálp
Ef einhver hefur einhver tips um nr. 4 þá eru þau vel þegin
Ef einhver hefur einhver tips um nr. 4 þá eru þau vel þegin
Re: Hjálp í forritun!!!
IntelliJ er sorp, hægvirkt og ljótt.
Notaðu Eclipse væni, og vendu þig á það.
Notaðu Eclipse væni, og vendu þig á þ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: Hjálp í forritun!!!
úff ef eitthvað er hægvirkt...appel skrifaði:IntelliJ er sorp, hægvirkt og ljótt.
Notaðu Eclipse væni, og vendu þig á það.
En það er hægt að customiza það upp og niður aftur, sem getur stundum verið galli, ég hef of oft gefist upp og sett Eclipse upp upp á nýtt og reynt að fara rólega í addons.
-
- Vaktin er ávanabindandi
- Póstar: 1695
- Skráði sig: Fim 12. Jún 2003 17:16
- Staðsetning: DK
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Daz og appel,
Hver er skoðun ykkar á NetBeans samanborið við t.d Eclipse ?
Hver er skoðun ykkar á NetBeans samanborið við t.d Eclipse ?
Electronic and Computer Engineer
-
- Besserwisser
- Póstar: 3697
- Skráði sig: Sun 20. Okt 2002 09:35
- Staðsetning: Somewhere something went horribly wrong
- Staða: Ótengdur
Re: Hjálp í forritun!!!
Hef ekki notað það, hef sett það upp og búið til hello world, en ekki meira. Hef raunar enga gríðarlega reynslu af IntelliJ heldur, en ég hef þó "unnið" á því í gegnum eitt trial period.